summaryrefslogtreecommitdiff
path: root/httemplate/search
diff options
context:
space:
mode:
authorivan <ivan>2011-07-27 23:26:57 +0000
committerivan <ivan>2011-07-27 23:26:57 +0000
commitc52f1b6999b57cc3cb52fe8e4304d0bbfbbbb2f2 (patch)
tree73513a27cf93dd036b692662d0723fe79288a7cc /httemplate/search
parentfd81134f9f262894f7133ac3084d64c52a686093 (diff)
add per-customer "Invoice reports" link, RT#13802
Diffstat (limited to 'httemplate/search')
-rwxr-xr-xhttemplate/search/cust_bill.html4
-rw-r--r--httemplate/search/report_cust_bill.html30
2 files changed, 33 insertions, 1 deletions
diff --git a/httemplate/search/cust_bill.html b/httemplate/search/cust_bill.html
index 4f73aaf84..627703691 100755
--- a/httemplate/search/cust_bill.html
+++ b/httemplate/search/cust_bill.html
@@ -93,6 +93,10 @@ if ( $cgi->param('invnum') =~ /^\s*(FS-)?(\d+)\s*$/ ) {
$search{'agentnum'} = $1;
}
+ if ( $cgi->param('custnum') =~ /^(\d+)$/ ) {
+ $search{'custnum'} = $1;
+ }
+
# begin/end/beginning/ending
my($beginning, $ending) = FS::UI::Web::parse_beginning_ending($cgi, '');
$search{'_date'} = [ $beginning, $ending ]
diff --git a/httemplate/search/report_cust_bill.html b/httemplate/search/report_cust_bill.html
index 4be5f73a7..0f0d91b14 100644
--- a/httemplate/search/report_cust_bill.html
+++ b/httemplate/search/report_cust_bill.html
@@ -1,15 +1,18 @@
-<& /elements/header.html, mt('Invoice Report') &>
+<& /elements/header.html, mt($title, @title_arg) &>
<FORM ACTION="cust_bill.html" METHOD="GET">
<INPUT TYPE="hidden" NAME="magic" VALUE="_date">
+<INPUT TYPE="hidden" NAME="custnum" VALUE="<% $custnum %>">
<TABLE BGCOLOR="#cccccc" CELLSPACING=0
+% unless ( $custnum ) {
<& /elements/tr-select-agent.html,
'curr_value' => scalar( $cgi->param('agentnum') ),
'label' => emt('Invoices for agent: '),
'disable_empty' => 0,
&>
+% }
<& /elements/tr-input-beginning_ending.html &>
@@ -22,21 +25,29 @@
label => emt('Owed'),
field => 'owed',
&>
+
+% if ( $cust_main ) {
+ <INPUT TYPE="hidden" NAME="payby" VALUE="<% $cust_main->payby %>">
+% } else {
<& /elements/tr-select-payby.html,
label => emt('Payment method:'),
payby_type => 'cust',
multiple => 1,
all_selected => 1,
&>
+% }
<TR>
<TD ALIGN="right"><INPUT TYPE="checkbox" NAME="open" VALUE="1" CHECKED></TD>
<TD><% mt('Show only open invoices') |h %></TD>
</TR>
+
+% unless ( $custnum ) {
<TR>
<TD ALIGN="right"><INPUT TYPE="checkbox" NAME="newest_percust" VALUE="1"></TD>
<TD><% mt('Show only the single most recent invoice per-customer') |h %></TD>
</TR>
+% }
</TABLE>
@@ -51,4 +62,21 @@
die "access denied"
unless $FS::CurrentUser::CurrentUser->access_right('List invoices');
+my $title = 'Invoice Report';
+#false laziness w/report_cust_pkg.html
+my @title_arg = ();
+
+my $custnum = '';
+my $cust_main = '';
+if ( $cgi->param('custnum') =~ /^(\d+)$/ ) {
+ $custnum = $1;
+ $cust_main = qsearchs({
+ 'table' => 'cust_main',
+ 'hashref' => { 'custnum' => $custnum },
+ 'extra_sql' => ' AND '. $FS::CurrentUser::CurrentUser->agentnums_sql,
+ }) or die "unknown custnum $custnum";
+ $title .= ': [_1]';
+ push @title_arg, $cust_main->name;
+}
+
</%init>