1 <& /elements/header-popup.html, mt("Customer unsuspended") &>
2 <SCRIPT TYPE="text/javascript">
3 Cookies.set('freeside_status', <% mt("Customer unsuspended") |js_string %>,{
12 #false laziness w/cust_main-cancel.cgi
15 unless $FS::CurrentUser::CurrentUser->access_right('Unsuspend customer');
19 if ( $cgi->param('custnum') =~ /^(\d+)$/ ) {
21 $resume = $cgi->param('resume');
23 my($query) = $cgi->keywords;
24 $query =~ /^(\d+)$/ || die "Illegal custnum";
28 my $cust_main = qsearchs( {
29 'table' => 'cust_main',
30 'hashref' => { 'custnum' => $custnum },
31 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
35 if($cgi->param('now_or_later')) {
36 $resume = parse_datetime($resume);
38 #warn "setting resume dates on custnum#$custnum\n";
39 my @pkgs = $cust_main->suspended_pkgs;
40 if (!$cgi->param('release_hold')) {
41 # then avoid packages that are on hold
42 @pkgs = grep { $_->get('setup') } @pkgs;
44 @errors = grep {$_} map { $_->unsuspend(
49 @errors = ("error parsing adjourn date: ".$cgi->param('adjourn'));
52 else { # unsuspending now
53 warn "unsuspending $cust_main";
54 @errors = $cust_main->unsuspend;
56 if ( $cgi->param('release_hold') ) {
57 push @errors, $cust_main->release_hold;
60 my $error = join(' / ', @errors) if scalar(@errors);
63 $cgi->param('error', $error);
64 print $cgi->redirect(popurl(1). "unsuspend_cust.html?". $cgi->query_string );