diff options
author | Ivan Kohler <ivan@freeside.biz> | 2016-11-16 21:02:41 -0800 |
---|---|---|
committer | Christopher Burger <burgerc@freeside.biz> | 2018-10-31 14:08:32 -0400 |
commit | 5f37f71c5ab6d255e42c0443c8ce8e1dbd8e4c3e (patch) | |
tree | 66a53d1b7c003eba059d8c63f6784895324afa44 /httemplate/elements | |
parent | b8a2ca1082333950aed46d6d388cf3eb57eb62a5 (diff) |
add date to quick payment entry, RT#73382
Diffstat (limited to 'httemplate/elements')
-rw-r--r-- | httemplate/elements/customer-table.html | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/httemplate/elements/customer-table.html b/httemplate/elements/customer-table.html index 650284860..9f76384d2 100644 --- a/httemplate/elements/customer-table.html +++ b/httemplate/elements/customer-table.html @@ -25,7 +25,7 @@ Example: 'custnum_update_callback' => 'name_of_js_callback' #passed a rownum #listrefs - 'types' => ['immutable', ''], # immutable or ''/text + 'type' => ['immutable', ''], # immutable, checkbox, date or ''/text 'align' => [ 'c', 'l', 'r', '' ], 'size' => [], # sizes ignored for immutable 'color' => [], @@ -66,7 +66,10 @@ This mason element is currently only used by misc/batch-cust_pay.html, and probably should be cleaned up more before being used by anything else. </%doc> - +<LINK REL="stylesheet" TYPE="text/css" HREF="<%$fsurl%>elements/calendar-win2k-2.css" TITLE="win2k-2"> +<SCRIPT TYPE="text/javascript" SRC="<%$fsurl%>elements/calendar_stripped.js"></SCRIPT> +<SCRIPT TYPE="text/javascript" SRC="<%$fsurl%>elements/calendar-en.js"></SCRIPT> +<SCRIPT TYPE="text/javascript" SRC="<%$fsurl%>elements/calendar-setup.js"></SCRIPT> <SCRIPT TYPE="text/javascript"> var num_open_invoices = new Array; @@ -658,6 +661,12 @@ and probably should be cleaned up more before being used by anything else. % } elsif ( $types->[$col] eq 'checkbox' ) { my_input.setAttribute('type', 'checkbox'); my_input.checked = (values && values.<% $field %>) ? true : false; +% } elsif ( $types->[$col] eq 'date' ) { + my_input_button = document.createElement('IMG'); + my_input_button.setAttribute('src', '<% $fsurl %>images/calendar.png'); + my_input_button.setAttribute('title', <% mt('Select date') |js_string %>); + my_input_button.setAttribute('name', '<% $name %>'+thisrownum+'button'); + my_input_button.setAttribute('id', '<% $name %>'+thisrownum+'button'); % } my_input.value = (values && values.<% $field %>) || ''; % if ( $opt{onchange}->[$col] ) { @@ -668,9 +677,21 @@ and probably should be cleaned up more before being used by anything else. my_input.onkeyup = calc_total<%$col%>; % } my_cell.appendChild(my_input); +% if ( $types->[$col] eq 'date' ) { + my_cell.appendChild(my_input_button); +% } row.appendChild(my_cell); +% if ( $types->[$col] eq 'date' ) { + Calendar.setup({ + inputField: '<% $name %>'+thisrownum, + ifFormat: "<% $date_format %>", + button: '<% $name %>'+thisrownum+'button', + align: "BR" + }); +% } + % $col++; % } @@ -811,6 +832,7 @@ addRow(); my(%opt) = @_; my $conf = new FS::Conf; +my $date_format = $conf->config('date_format') || '%m/%d/%Y'; my $types = $opt{'type'} ? [ @{$opt{'type'}} ] : []; my $sizes = $opt{'size'} ? [ @{$opt{'size'}} ] : []; |