X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Fsearch%2Freport_cust_pkg.html;h=d9b6cd7a1ad49c46cd9276f89e240ac64b1b8618;hb=783eefa4a70dd88dd13ffd73c4e23361288628f0;hp=dd62f3ead958c14030041170abd575cce169e792;hpb=eb4ff7f73c5d4bdf74a3472448b5a195598ff4cd;p=freeside.git diff --git a/httemplate/search/report_cust_pkg.html b/httemplate/search/report_cust_pkg.html index dd62f3ead..d9b6cd7a1 100755 --- a/httemplate/search/report_cust_pkg.html +++ b/httemplate/search/report_cust_pkg.html @@ -1,17 +1,24 @@ -<% include('/elements/header.html', 'Package Report' ) %> +<% include('/elements/header.html', $title ) %>
+ - + + +% unless ( $custnum ) { <% include( '/elements/tr-select-agent.html', - 'curr_value' => scalar( $cgi->param('agentnum') ), + 'curr_value' => scalar( $cgi->param('agentnum') ), + 'disable_empty' => 0, ) %> +% } <% include( '/elements/tr-select-cust_pkg-status.html', 'onchange' => 'status_changed(this);', @@ -26,7 +33,7 @@ if ( what.options[what.selectedIndex].value == '<% $status %>' ) { -% foreach my $field (qw( setup last_bill bill adjourn susp expire cancel )) { +% foreach my $field (@date_fields) { % if ( $disable{$status}->{$field} ) { what.form.<% $field %>_beginning_text.disabled = true; @@ -68,7 +75,21 @@ ) %> -% foreach my $field (qw( setup last_bill bill adjourn susp expire cancel )) { +% if ( scalar( qsearch( 'part_pkg_report_option', { 'disabled' => '' } ) ) ) { + + <% include( '/elements/tr-select-table.html', + 'label' => 'Report classes', + 'table' => 'part_pkg_report_option', + 'name_col' => 'name', + 'hashref' => { 'disabled' => '' }, + 'element_name' => 'report_option', + 'multiple' => 'multiple', + ) + %> + +% } + +% foreach my $field (@date_fields) { @@ -85,14 +106,42 @@ % } + + + <% include( '/elements/tr-checkbox.html', + 'label' => 'Custom packages', + 'field' => 'custom', + 'value' => 1, + 'onchange' => 'custom_changed(this);', + ) + %> + <% include( '/elements/tr-selectmultiple-part_pkg.html' ) %> - + - + <% include( '/elements/tr-select-cust-fields.html' ) %> @@ -109,25 +158,42 @@ die "access denied" unless $FS::CurrentUser::CurrentUser->access_right('List packages'); +my $title = 'Package Report'; + +my $custnum = ''; +if ( $cgi->param('custnum') =~ /^(\d+)$/ ) { + $custnum = $1; + my $cust_main = qsearchs({ + 'table' => 'cust_main', + 'hashref' => { 'custnum' => $custnum }, + 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql, + }) or die "unknown custnum $custnum"; + $title .= ': '. $cust_main->name; +} + <%once> -my %label = ( - 'setup' => 'Setup', - 'last_bill' => 'Last bill', - 'bill' => 'Next bill', - 'adjourn' => 'Adjourns', - 'susp' => 'Suspended', - 'expire' => 'Expires', - 'cancel' => 'Cancelled', -); +tie my %label, 'Tie::IxHash', + 'setup' => 'Setup', + 'last_bill' => 'Last bill', + 'bill' => 'Next bill', + 'adjourn' => 'Adjourns', + 'susp' => 'Suspended', + 'dundate' => 'Suspension delayed until', + 'expire' => 'Expires', + 'contract_end' => 'Contract ends', + 'cancel' => 'Cancelled', +; +my @date_fields = keys %label; #false laziness w/cust_pkg.cgi my %disable = ( 'all' => {}, - 'one-time charge' => { 'last_bill'=>1, 'bill'=>1, 'adjourn'=>1, 'susp'=>1, 'expire'=>1, 'cancel'=>1, }, + 'not yet billed' => { 'setup'=>1, 'last_bill'=>1, 'bill'=>1, 'adjourn'=>1, 'susp'=>1, 'expire'=>1, 'cancel'=>1, }, + 'one-time charge' => { 'last_bill'=>1, 'bill'=>1, 'adjourn'=>1, 'susp'=>1, 'expire'=>1, 'cancel'=>1, 'contract_end'=>1, 'dundate'=>1, }, 'active' => { 'susp'=>1, 'cancel'=>1 }, - 'suspended' => { 'cancel' => 1 }, + 'suspended' => { 'cancel'=>1, 'dundate'=>1, }, 'cancelled' => {}, '' => {}, ); @@ -138,6 +204,7 @@ my %checkbox = ( 'last_bill' => 0, 'bill' => 0, 'susp' => 1, + 'dundate' => 1, 'expire' => 1, 'cancel' => 1, );
Search options + Search options +
<% $label{$field} %>
  
Display optionsDisplay options