diff options
-rw-r--r-- | httemplate/search/cust_bill_event.cgi | 185 | ||||
-rwxr-xr-x | httemplate/search/cust_bill_event.html | 17 |
2 files changed, 102 insertions, 100 deletions
diff --git a/httemplate/search/cust_bill_event.cgi b/httemplate/search/cust_bill_event.cgi index d1dd65d65..7c31c257d 100644 --- a/httemplate/search/cust_bill_event.cgi +++ b/httemplate/search/cust_bill_event.cgi @@ -1,94 +1,97 @@ -% -% -%my $title = $cgi->param('failed') ? 'Failed invoice events' : 'Invoice events'; -% -%my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi); -% -%##tie my %hash, 'Tie::DxHash', -%#my %hash = ( -%# _date => { op=> '>=', value=>$beginning }, -%## i wish... -%## _date => { op=> '<=', value=>$ending }, -%#); -%#$hash{'statustext'} = { op=> '!=', value=>'' } -%# if $cgi->param('failed'); -% -%my $where = " WHERE cust_bill_event._date >= $beginning". -% " AND cust_bill_event._date <= $ending"; -% -%if ( $cgi->param('failed') ) { -% $where .= " AND statustext != '' ". -% " AND statustext IS NOT NULL ". -% " AND statustext != 'N/A' " -%} -% -%if ( $cgi->param('part_bill_event.payby') =~ /^(\w+)$/ ) { -% $where .= " AND part_bill_event.payby = '$1' "; -%} -% -%my $sql_query = { -% 'table' => 'cust_bill_event', -% #'hashref' => \%hash, -% 'hashref' => {}, -% 'select' => join(', ', -% 'cust_bill_event.*', -% 'part_bill_event.event', -% 'cust_bill.custnum', -% 'cust_bill._date AS cust_bill_date', -% 'cust_main.custnum AS cust_main_custnum', -% FS::UI::Web::cust_sql_fields(), -% ), -% 'extra_sql' => "$where ORDER BY _date ASC", -% 'addl_from' => 'LEFT JOIN part_bill_event USING ( eventpart ) '. -% 'LEFT JOIN cust_bill USING ( invnum ) '. -% 'LEFT JOIN cust_main USING ( custnum ) ', -%}; -% -%my $count_sql = "SELECT COUNT(*) FROM cust_bill_event ". -% "LEFT JOIN part_bill_event USING ( eventpart ) ". -% $where; -% -%my $conf = new FS::Conf; -% -%my $failed = $cgi->param('failed'); -% -%my $html_init = join("\n", map { -% ( my $action = $_ ) =~ s/_$//; -% include('/elements/progress-init.html', -% $_.'form', -% [ 'action', 'beginning', 'ending', 'failed' ], -% "../misc/${_}invoice_events.cgi", -% { 'message' => "Invoices re-${action}ed" }, #would be nice to show the number of them, but... -% $_, #key -% ), -% qq!<FORM NAME="${_}form">!, -% qq!<INPUT TYPE="hidden" NAME="action" VALUE="$_">!, #not used though -% qq!<INPUT TYPE="hidden" NAME="beginning" VALUE="$beginning">!, -% qq!<INPUT TYPE="hidden" NAME="ending" VALUE="$ending">!, -% qq!<INPUT TYPE="hidden" NAME="failed" VALUE="$failed">!, -% qq!</FORM>! -%} qw( print_ email_ fax_ ) ); -% -%my $menubar = [ -% 'Main menu' => $p, -% 'Re-print these events' => -% "javascript:print_process()", -% 'Re-email these events' => -% "javascript:email_process()", -% ]; -% -%push @$menubar, 'Re-fax these events' => -% "javascript:fax_process()" -% if $conf->exists('hylafax'); -% -%my $link_cust = sub { -% my $cust_bill_event = shift; -% $cust_bill_event->cust_main_custnum -% ? [ "${p}view/cust_main.cgi?", 'custnum' ] -% : ''; -%}; -% -% +<%init> + +my $title = $cgi->param('failed') + ? 'Failed invoice events' + : 'Invoice events'; + +my @search = (); + +if ( $cgi->param('agentnum') && $cgi->param('agentnum') =~ /^(\d+)$/ ) { + push @search, "agentnum = $1"; + #my $agent = qsearchs('agent', { 'agentnum' => $1 } ); + #die "unknown agentnum $1" unless $agent; +} + +my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi); +push @search, "cust_bill_event._date >= $beginning", + "cust_bill_event._date <= $ending"; + +if ( $cgi->param('failed') ) { + push @search, "statustext != ''", + "statustext IS NOT NULL", + "statustext != 'N/A'"; +} + +if ( $cgi->param('part_bill_event.payby') =~ /^(\w+)$/ ) { + push @search, "part_bill_event.payby = '$1'"; +} + +#here is the agent virtualization +push @search, $FS::CurrentUser::CurrentUser->agentnums_sql; + +my $where = 'WHERE '. join(' AND ', @search ); + +my $join = 'LEFT JOIN part_bill_event USING ( eventpart ) '. + 'LEFT JOIN cust_bill USING ( invnum ) '. + 'LEFT JOIN cust_main USING ( custnum ) '; + +my $sql_query = { + 'table' => 'cust_bill_event', + 'select' => join(', ', + 'cust_bill_event.*', + 'part_bill_event.event', + 'cust_bill.custnum', + 'cust_bill._date AS cust_bill_date', + 'cust_main.custnum AS cust_main_custnum', + FS::UI::Web::cust_sql_fields(), + ), + 'hashref' => {}, + 'extra_sql' => "$where ORDER BY _date ASC", + 'addl_from' => $join, +}; + +my $count_sql = "SELECT COUNT(*) FROM cust_bill_event $join $where"; + +my $conf = new FS::Conf; + +my $failed = $cgi->param('failed'); + +my $html_init = join("\n", map { + ( my $action = $_ ) =~ s/_$//; + include('/elements/progress-init.html', + $_.'form', + [ 'action', 'beginning', 'ending', 'failed' ], + "../misc/${_}invoice_events.cgi", + { 'message' => "Invoices re-${action}ed" }, #would be nice to show the number of them, but... + $_, #key + ), + qq!<FORM NAME="${_}form">!, + qq!<INPUT TYPE="hidden" NAME="action" VALUE="$_">!, #not used though + qq!<INPUT TYPE="hidden" NAME="beginning" VALUE="$beginning">!, + qq!<INPUT TYPE="hidden" NAME="ending" VALUE="$ending">!, + qq!<INPUT TYPE="hidden" NAME="failed" VALUE="$failed">!, + qq!</FORM>! +} qw( print_ email_ fax_ ) ); + +my $menubar = [ + 'Re-print these events' => + "javascript:print_process()", + 'Re-email these events' => + "javascript:email_process()", + ]; + +push @$menubar, 'Re-fax these events' => + "javascript:fax_process()" + if $conf->exists('hylafax'); + +my $link_cust = sub { + my $cust_bill_event = shift; + $cust_bill_event->cust_main_custnum + ? [ "${p}view/cust_main.cgi?", 'custnum' ] + : ''; +}; + +</%init> <% include( 'elements/search.html', 'title' => $title, 'html_init' => $html_init, diff --git a/httemplate/search/cust_bill_event.html b/httemplate/search/cust_bill_event.html index 7cdf25112..2aa2ccc6c 100755 --- a/httemplate/search/cust_bill_event.html +++ b/httemplate/search/cust_bill_event.html @@ -1,16 +1,15 @@ <% include( '/elements/header.html', ( $cgi->param('failed') ? 'Failed invoice events' : 'Invoice events' ), - include('/elements/menubar.html', - 'Main menu' => $p, # popurl(2), - ), - - ) + ) %> <FORM ACTION="cust_bill_event.cgi" METHOD="GET"> <INPUT TYPE="hidden" NAME="failed" VALUE="<% $cgi->param('failed') %>"> <TABLE> + + <% include( '/elements/tr-select-agent.html' ) %> + <!--<TR> <TD ALIGN="right">Customer type</TD> <TD><SELECT MULTIPLE NAME="perhaps_payby"> @@ -30,8 +29,8 @@ <TD> <SELECT NAME="eventpart"> <OPTION SELECTED VALUE=""><% $cgi->param('failed') ? '(all failed events)' : '(all events)' %> -% foreach my $part_bill_event ( qsearch( 'part_bill_event', {} ) ) { -% } +% #foreach my $part_bill_event ( qsearch( 'part_bill_event', {} ) ) { +% #} </SELECT> </TD> @@ -55,5 +54,5 @@ </TABLE> <BR><INPUT TYPE="submit" VALUE="Get Report"> </FORM> - </BODY> -</HTML> + +<% include('/elements/footer.html') %> |