X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fsearch%2Fcust_pkg.cgi;h=3eb0332d247e4d503280b8a6eeb72168c18d29ff;hb=ea749c5e875371d98bdcf173e19a2d57fa46481e;hp=32b5a69e8898557bd74e4c6c701fd30250653bf8;hpb=23f2db6452f097640447b9b35dd106f408dbc20b;p=freeside.git
diff --git a/httemplate/search/cust_pkg.cgi b/httemplate/search/cust_pkg.cgi
index 32b5a69e8..3eb0332d2 100755
--- a/httemplate/search/cust_pkg.cgi
+++ b/httemplate/search/cust_pkg.cgi
@@ -4,6 +4,7 @@
'name' => 'packages',
'query' => $sql_query,
'count_query' => $count_query,
+ 'html_init_data' => $search_string,
'header' => [ emt('#'),
emt('Quan.'),
emt('Package'),
@@ -44,7 +45,7 @@
},
sub { my $c = shift;
sprintf( $money_char.'%.2f',
- $c->part_pkg->base_recur($c)
+ $c->base_recur
);
},
sub { FS::part_pkg::freq_pretty(shift); },
@@ -150,33 +151,44 @@ my $conf = new FS::Conf;
my $money_char = $conf->config('money_char') || '$';
my %search_hash = ();
+my $search_string;
#some false laziness w/misc/bulk_change_pkg.cgi
$search_hash{'query'} = $cgi->keywords;
#scalars
-for (qw( agentnum cust_main_salesnum salesnum custnum magic status custom
- cust_fields pkgbatch
+for (qw( agentnum cust_status cust_main_salesnum salesnum custnum magic status
+ reasonnum custom cust_fields pkgbatch zip
+ 477part 477rownum date
))
{
$search_hash{$_} = $cgi->param($_) if length($cgi->param($_));
+ $search_string .= '&'.$_.'='.$cgi->param($_) if length($cgi->param($_));
}
#arrays
-for my $param (qw( pkgpart classnum )) {
+for my $param (qw( pkgpart classnum refnum towernum )) {
$search_hash{$param} = [ $cgi->param($param) ]
if grep { $_ eq $param } $cgi->param;
+ $search_string .= '&'.$param.'='.$cgi->param($param) if grep { $_ eq $param } $cgi->param;
}
#scalars that need to be passed if empty
for my $param (qw( censustract censustract2 )) {
$search_hash{$param} = $cgi->param($param) || ''
if grep { $_ eq $param } $cgi->param;
+ $search_string .= '&'.$param.'='.$cgi->param($param) if grep { $_ eq $param } $cgi->param;
}
+#location flags (checkboxes)
+my @loc = grep /^\w+$/, $cgi->param('loc');
+$search_hash{"location_$_"} = 1 foreach @loc;
+$search_string .= '&location_'.$_.'=1' foreach @loc;
+
my $report_option = $cgi->param('report_option');
$search_hash{report_option} = $report_option if $report_option;
+$search_string .= '&report_option='.$report_option if $report_option;
for my $param (grep /^report_option_any/, $cgi->param) {
$search_hash{$param} = $cgi->param($param);
@@ -198,12 +210,16 @@ my %disable = (
foreach my $field (qw( setup last_bill bill adjourn susp expire contract_end change_date cancel active )) {
+ $search_hash{$field.'_null'} = scalar( $cgi->param($field.'_null') );
+ $search_string .= '&'.$field.'_null='.scalar( $cgi->param($field.'_null') );
+
my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi, $field);
next if $beginning == 0 && $ending == 4294967295
or $disable{$cgi->param('status')}->{$field};
$search_hash{$field} = [ $beginning, $ending ];
+ $search_string .= '&'.$field.'_begin='.$beginning.'&'.$field.'_end='.$ending;
}
@@ -254,6 +270,22 @@ my $html_init = sub {
'height' => 210,
). '
';
+ $text .= include( '/elements/popup_link.html',
+ 'label' => emt('Suspend these packages'),
+ 'action' => "${p}misc/bulk_suspend_pkg.cgi?$query",
+ 'actionlabel' => emt('Suspend Packages'),
+ 'width' => 569,
+ 'height' => 210,
+ ). '
' if $search_hash{status} eq 'active';
+
+ $text .= include( '/elements/popup_link.html',
+ 'label' => emt('Unsuspend these packages'),
+ 'action' => "${p}misc/bulk_unsuspend_pkg.cgi?$query",
+ 'actionlabel' => emt('Unsuspend Packages'),
+ 'width' => 569,
+ 'height' => 210,
+ ). '
' if $search_hash{status} eq 'suspended';
+
if ( $curuser->access_right('Edit customer package dates') ) {
$text .= include( '/elements/popup_link.html',
'label' => emt('Increment next bill date'),
@@ -305,11 +337,14 @@ my $process_svc_labels = sub {
foreach ( map { [ $_->label ] } @{ $part_svc->cust_pkg_svc } ) {
push @out, [
{ 'data' => $_->[0]. ':',
- 'align'=> 'right', },
+ 'align'=> 'right',
+ },
+
{ 'data' => $_->[1],
'align'=> 'left',
- 'link' => $p. 'view/' .
- $_->[2]. '.cgi?'. $_->[3], },
+ 'link' => $p. 'view/cust_svc.cgi?' . $_->[3],
+ },
+
];
}
}