summaryrefslogtreecommitdiff
path: root/httemplate/misc
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2013-07-02 13:37:11 -0700
committerMark Wells <mark@freeside.biz>2013-07-02 13:37:11 -0700
commit44824b823129157a89147bb34fc563d5373d7a0a (patch)
treee3e76fd27c49af669ece781d1335f7af7ea898a9 /httemplate/misc
parentd412ac8b029ecf0dc3cb6d62d5a7afa91cfba740 (diff)
more detail when selecting invoices in quick payment entry, #15861
Diffstat (limited to 'httemplate/misc')
-rw-r--r--httemplate/misc/batch-cust_pay.html24
-rw-r--r--httemplate/misc/xmlhttp-cust_bill-search.html32
2 files changed, 43 insertions, 13 deletions
diff --git a/httemplate/misc/batch-cust_pay.html b/httemplate/misc/batch-cust_pay.html
index 04a402bef..cc1a26a0e 100644
--- a/httemplate/misc/batch-cust_pay.html
+++ b/httemplate/misc/batch-cust_pay.html
@@ -5,6 +5,15 @@
<& /elements/error.html &>
+<STYLE TYPE="text/css">
+.select_invnum {
+ text-align: right;
+ width: 220px;
+}
+.select_invnum * {
+ font-family: monospace;
+}
+</STYLE>
<SCRIPT TYPE="text/javascript">
function warnUnload() {
if(document.getElementById("OneTrueTable").rows.length > 3 &&
@@ -185,21 +194,23 @@ function choose_app_invnum() {
function focus_app_invnum() {
% # invoice numbers just display as invoice numbers
var rownum = this.getAttribute('rownum');
- var add_opt = function(obj, value) {
+ var add_opt = function(obj, value, label) {
var o = document.createElement('OPTION');
- o.text = value;
+ o.text = label;
o.value = value;
obj.add(o);
}
this.options.length = 0;
var this_invoice = this.curr_invoice;
if ( this_invoice ) {
- add_opt(this, this_invoice.invnum);
+ add_opt(this, this_invoice.invnum, this_invoice.label);
} else {
- add_opt(this, '');
+ add_opt(this, '', '');
}
for ( var x in invoices_for_row[rownum] ) {
- add_opt(this, invoices_for_row[rownum][x].invnum);
+ add_opt(this,
+ invoices_for_row[rownum][x].invnum,
+ invoices_for_row[rownum][x].label);
}
}
@@ -236,8 +247,7 @@ function create_application_row(rownum, appnum) {
select_invnum.setAttribute('appnum', appnum);
select_invnum.setAttribute('id', 'invnum'+rownum+'.'+appnum);
select_invnum.setAttribute('name', 'invnum'+rownum+'.'+appnum);
- select_invnum.style.textAlign = 'right';
- select_invnum.style.width = '50px';
+ select_invnum.className = 'select_invnum';
select_invnum.onchange = choose_app_invnum;
select_invnum.onfocus = focus_app_invnum;
diff --git a/httemplate/misc/xmlhttp-cust_bill-search.html b/httemplate/misc/xmlhttp-cust_bill-search.html
index c60a0b05c..6082dc771 100644
--- a/httemplate/misc/xmlhttp-cust_bill-search.html
+++ b/httemplate/misc/xmlhttp-cust_bill-search.html
@@ -4,17 +4,37 @@
my $curuser = $FS::CurrentUser::CurrentUser;
die 'access denied' unless $curuser->access_right('View invoices');
my @return;
+my $date_format = FS::Conf->new->config('date_format') || '%m/%d/%Y';
if ( $cgi->param('sub') eq 'custnum_search_open' ) {
my $custnum = $cgi->param('arg');
if ( $custnum =~ /^(\d+)$/ ) {
#warn "searching invoices for $custnum\n";
my $cust_main = FS::cust_main->by_key($custnum);
- @return = map {
- +{ $_->hash,
- 'owed' => $_->owed }
- } $cust_main->open_cust_bill
- if $curuser->agentnums_href->{ $cust_main->agentnum };
- }
+ if ( $curuser->agentnums_href->{ $cust_main->agentnum } ) {
+ my @open_bills = $cust_main->open_cust_bill;
+ my $invnum_len;
+ my $owed_len;
+ my $date_len;
+ foreach my $cust_bill (@open_bills) {
+ my $invnum = $cust_bill->invnum;
+ my $owed = $cust_bill->owed;
+ my $date = time2str($date_format, $cust_bill->_date);
+ $invnum_len = length($invnum) if length($invnum) > $invnum_len;
+ $owed_len = length($owed) if length($owed) > $owed_len;
+ $date_len = length($date) if length($date) > $date_len;
+
+ push @return, { $cust_bill->hash,
+ 'owed' => $owed,
+ 'date' => $date };
+ }
+ my $format = '%' . $invnum_len . 'd - %' . $date_len . 's - '.
+ (FS::Conf->new->config('money_char') || '$') .
+ '%' . $owed_len . '.2f';
+ foreach (@return) {
+ $_->{label} = sprintf($format, $_->{invnum}, $_->{date}, $_->{owed});
+ }
+ } #if agentnum
+ } #if $custnum
}
</%init>