X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=httemplate%2Felements%2Fauto-table.html;h=49222745a95918b942c12c82f647965b173a9082;hb=12869becc72000bd21be04ddeaf7160217e29bfd;hp=89d6eacb9ae5c81126c712be3a9301ca33a66975;hpb=de3bf373e97f6875e09fc17d99068a2716bf3b2d;p=freeside.git
diff --git a/httemplate/elements/auto-table.html b/httemplate/elements/auto-table.html
index 89d6eacb9..49222745a 100644
--- a/httemplate/elements/auto-table.html
+++ b/httemplate/elements/auto-table.html
@@ -28,6 +28,12 @@ Example:
'records' => [ qsearch('item', { } ) ],
# or any other array of FS::Record objects
+ 'select' => [ '',
+ [ 1 => 'option 1',
+ 2 => 'option 2', ...
+ ], # options for second field
+ '' ],
+
'prefix' => 'mytable_',
) %>
@@ -45,8 +51,21 @@ Values will be passed through as "mytable_id1", etc.
% my $col = 0;
% for ( $col = 0; $col < scalar @fields; $col++ ) {
-% my $id = $prefix . $fields[$col] . $row;
+% my $id = $prefix . $fields[$col];
+% # don't suffix rownum in the final, blank row
+% $id .= $row if $row < (scalar @data) - 1;
+% my @o = @{ $select[$col] };
+% if( @o ) {
+
+% }
+% else {
STYLE = "text-align:<% $align[$col] %>"
VALUE = "<% $data[$row][$col] %>"
- onchange = "possiblyAddRow();"
+% if( $opt{'autoadd'} ) {
+ onchange = "possiblyAddRow(this);"
+% }
>
|
+% }
% }
"
ALT = "X"
- onclick = "deleteThisRow(this);"
+ onclick = "deleteRow(this);"
>
|
% }
+% if( !$opt{'autoadd'} ) {
+
+% }
<%init>
@@ -137,10 +153,14 @@ elsif($opt{'records'}) {
}
}
# else @data = ();
+push @data, [ map {''} @fields ]; # make a blank row
my $prefix = $opt{'prefix'};
my @size = $opt{'size'} ? @{ $opt{'size'} } : (map {16} @fields);
my @maxl = $opt{'maxl'} ? @{ $opt{'maxl'} } : @size;
my @align = $opt{'align'} ? @{ $opt{'align'} } : (map {'right'} @fields);
-
+my @select = @{ $opt{'select'} || [] };
+foreach (0..scalar(@fields)-1) {
+ $select[$_] ||= [];
+}
%init>