X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fcustomer-table.html;h=83abad0103773028aeecb5945c5b4646585d6d3c;hb=f279524a0b3266ae4fb342ab8ee26d8918c86c75;hp=a517ece2a98fca27c342a8d6ba4d2b7f3e75fe52;hpb=820fe0ac288d4f2bb975b7f58ee02baefd96ed24;p=freeside.git diff --git a/httemplate/elements/customer-table.html b/httemplate/elements/customer-table.html index a517ece2a..83abad010 100644 --- a/httemplate/elements/customer-table.html +++ b/httemplate/elements/customer-table.html @@ -41,6 +41,8 @@ Example: @@ -356,7 +406,7 @@ Example: % my $row = 0; % for ( $row = 0; exists($param->{"custnum$row"}); $row++ ) { - + " + rownum = "<% $row %>" + > + " rownum = "<% $row %>" > @@ -458,19 +514,24 @@ Example: % my $color = $opt{color}->[$col]; % my $font = $color ? qq() : ''; % my $onchange = ''; -% if ( $opt{footer}->[$col] eq '_TOTAL' ) { +% if ( $opt{onchange}->[$col] ) { +% $onchange = 'onchange="'.$opt{onchange}->[$col].'"'; +% } +% elsif ( $opt{footer}->[$col] eq '_TOTAL' ) { % $total[$col] += $value; % $onchange = $opt{prefix}. "calc_total$col();"; % $onchange = qq(onchange="$onchange" onkeyup="$onchange"); % } -% if (! $types->[$col] || $types->[$col] eq 'text') { - [$col] || 'text'; +% if ($type eq 'text' or $type eq 'checkbox') { + > % } elsif ($types->[$col] eq 'immutable') { @@ -485,7 +546,7 @@ Example: % } - + Total <% $row ? $row-1 : 0 %> <% PL($opt{name_singular} || 'customer', ( $row ? $row-1 : 0 ) ) %> @@ -559,7 +620,8 @@ Example: var table = document.getElementById('<% $opt{prefix} %>OneTrueTable'); var tablebody = table.getElementsByTagName('tbody').item(0); - var row = table.insertRow(rownum+1); + var row = table.insertRow(table.rows.length - 1); + row.setAttribute('id', 'row'+rownum); var invnum_cell = document.createElement('TD'); @@ -578,15 +640,22 @@ Example: var custnum_cell = document.createElement('TD'); + var display_custnum_input = document.createElement('INPUT'); + display_custnum_input.setAttribute('name', 'display_custnum'+<% $opt{prefix} %>rownum); + display_custnum_input.setAttribute('id', 'display_custnum'+<% $opt{prefix} %>rownum); + display_custnum_input.style.textAlign = 'right'; + display_custnum_input.setAttribute('size', 8); + display_custnum_input.setAttribute('maxlength', 12); + display_custnum_input.setAttribute('rownum', <% $opt{prefix} %>rownum); + display_custnum_input.onfocus = clearhint_custnum; + display_custnum_input.onchange = <% $opt{prefix} %>search_custnum; + custnum_cell.appendChild(display_custnum_input); + var custnum_input = document.createElement('INPUT'); + custnum_input.type = 'hidden'; custnum_input.setAttribute('name', 'custnum'+<% $opt{prefix} %>rownum); custnum_input.setAttribute('id', 'custnum'+<% $opt{prefix} %>rownum); - custnum_input.style.textAlign = 'right'; - custnum_input.setAttribute('size', 8); - custnum_input.setAttribute('maxlength', 12); custnum_input.setAttribute('rownum', <% $opt{prefix} %>rownum); - custnum_input.onfocus = clearhint_custnum; - custnum_input.onchange = <% $opt{prefix} %>search_custnum; custnum_cell.appendChild(custnum_input); row.appendChild(custnum_cell); @@ -676,7 +745,7 @@ Example: % } else { % $value = $param->{"$field$row"}; % } - var my_text = document.createTextNode('<% $value %>'); + var my_text = document.createTextNode(<% $value |js_string %>); my_cell.appendChild(my_text); % } @@ -686,10 +755,17 @@ Example: my_input.setAttribute('id', '<% $name %>'+<% $opt{prefix} %>rownum); my_input.style.textAlign = '<% $align{ $opt{align}->[$col] || 'l' } %>'; my_input.setAttribute('size', <% $sizes->[$col] || 10 %>); -% if ($types->[$col] eq 'immutable') { + my_input.setAttribute('rownum', <% $opt{prefix} %>rownum); +% if ( $types->[$col] eq 'immutable' ) { my_input.setAttribute('type', 'hidden'); % } -% if ( $opt{footer}->[$col] eq '_TOTAL' ) { +% elsif ( $types->[$col] eq 'checkbox' ) { + my_input.setAttribute('type', 'checkbox'); +% } +% if ( $opt{onchange}->[$col] ) { + my_input.onchange = <% $opt{onchange}->[$col] %>; +% } +% elsif ( $opt{footer}->[$col] eq '_TOTAL' ) { my_input.onchange = <% $opt{prefix} %>calc_total<%$col%>; my_input.onkeyup = <% $opt{prefix} %>calc_total<%$col%>; % } @@ -713,6 +789,11 @@ Example: + ' <% PL($opt{name_singular} || 'customer') %>'; } +% if ( $opt{add_row_callback} ) { + <% $opt{add_row_callback} %>(<% $opt{prefix} %>rownum, + '<% $opt{prefix} %>'); +% } + <% $opt{prefix} %>rownum++; }