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') %> | 
