% if ($error) { % $cgi->param('error', Dumper($error)); % $cgi->redirect(popurl(3). 'edit/cust_location.cgi?'. $cgi->query_string ); % } else { <& /elements/header-popup.html, emt("Location changed") &> % } <%init> my $curuser = $FS::CurrentUser::CurrentUser; die "access denied" unless $curuser->access_right('Change customer package'); my $locationnum = $cgi->param('locationnum'); my $cust_location = qsearchs({ 'select' => 'cust_location.*', 'table' => 'cust_location', 'addl_from' => 'LEFT JOIN cust_main USING ( custnum )', 'hashref' => { 'locationnum' => $locationnum }, 'extra_sql' => ' AND '. $curuser->agentnums_sql, }); die "unknown locationnum $locationnum" unless $cust_location; my $new = FS::cust_location->new({ custnum => $cust_location->custnum, prospectnum => $cust_location->prospectnum, map { $_ => scalar($cgi->param($_)) } FS::cust_main->location_fields }); my $error = $new->find_or_insert; $error ||= $cust_location->move_to($new);