X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fsearch%2Fcust_pkg.cgi;h=adbec7a74a36922e6b3362efd9e7a3010bc0136e;hb=37591b61f8ad6fc5c5acb2fd8f520d2dbe4f1539;hp=f6a3620d32b9f8acec092dca04fdac0faec52c45;hpb=f3717767d19f9da888e190f87a04dfa245d658b4;p=freeside.git diff --git a/httemplate/search/cust_pkg.cgi b/httemplate/search/cust_pkg.cgi index f6a3620d3..adbec7a74 100755 --- a/httemplate/search/cust_pkg.cgi +++ b/httemplate/search/cust_pkg.cgi @@ -143,7 +143,6 @@ ), '', ], - 'extra_choices_callback'=> $extra_choices, ) %> <%init> @@ -158,18 +157,22 @@ my $money_char = $conf->config('money_char') || '$'; # my %part_pkg = map { $_->pkgpart => $_ } qsearch('part_pkg', {}); - my %search_hash = (); +my %search_hash = (); + +#some false laziness w/misc/bulk_change_pkg.cgi - $search_hash{'query'} = $cgi->keywords; +$search_hash{'query'} = $cgi->keywords; - for ( qw(agentnum magic status classnum pkgpart custom ) ) { - $search_hash{$_} = $cgi->param($_) if $cgi->param($_); - } +for (qw( agentnum custnum magic status classnum custom cust_fields )) { + $search_hash{$_} = $cgi->param($_) if $cgi->param($_); +} - for my $param ( qw(censustract) ) { - $search_hash{$param} = $cgi->param($param) || '' - if ( grep { /$param/ } $cgi->param ); - } +$search_hash{'pkgpart'} = [ $cgi->param('pkgpart') ]; + +for my $param ( qw(censustract) ) { + $search_hash{$param} = $cgi->param($param) || '' + if ( grep { /$param/ } $cgi->param ); +} my @report_option = $cgi->param('report_option') if $cgi->param('report_option'); @@ -189,7 +192,7 @@ my %disable = ( '' => {}, ); -foreach my $field (qw( setup last_bill bill adjourn susp expire cancel )) { +foreach my $field (qw( setup last_bill bill adjourn susp expire cancel active )) { my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi, $field); @@ -200,7 +203,7 @@ foreach my $field (qw( setup last_bill bill adjourn susp expire cancel )) { } -my $sql_query = FS::cust_pkg->search_sql(\%search_hash); +my $sql_query = FS::cust_pkg->search(\%search_hash); my $count_query = delete($sql_query->{'count_query'}); my $show = $curuser->default_customer_view =~ /^(jumbo|packages)$/ @@ -249,22 +252,32 @@ sub time_or_blank { }; } -my $html_init = include('/elements/init_overlib.html'); - -my $extra_choices = sub { +my $html_init = sub { my $query = shift; + my $text = ''; + my $curuser = $FS::CurrentUser::CurrentUser; - return '' unless - $FS::CurrentUser::CurrentUser->access_right('Bulk change customer packages'); - - '

'. - include( '/elements/popup_link.html', - 'label' => 'Change these packages', - 'action' => "${p}misc/bulk_change_pkg.cgi?$query", - 'actionlabel' => 'Change Packages', - 'width' => 763, - 'height' => 336, - ); + if ( $curuser->access_right('Bulk change customer packages') ) { + $text .= include('/elements/init_overlib.html'). + include( '/elements/popup_link.html', + 'label' => 'Change these packages', + 'action' => "${p}misc/bulk_change_pkg.cgi?$query", + 'actionlabel' => 'Change Packages', + 'width' => 569, + 'height' => 210, + ). '
'; + + if ( $curuser->access_right('Edit customer package dates') ) { + $text .= include( '/elements/popup_link.html', + 'label' => 'Increment next bill date', + 'action' => "${p}misc/bulk_pkg_increment_bill.cgi?$query", + 'actionlabel' => 'Increment Bill Date', + 'width' => 569, + 'height' => 210, + ). '
'; + } + } + return $text; };