From de3bf373e97f6875e09fc17d99068a2716bf3b2d Mon Sep 17 00:00:00 2001 From: mark Date: Thu, 1 Jul 2010 01:53:50 +0000 Subject: voip_cdr call rating by day and time, RT#4763 --- httemplate/elements/auto-table.html | 146 ++++++++++++++++++++++++++++++++++++ 1 file changed, 146 insertions(+) create mode 100644 httemplate/elements/auto-table.html (limited to 'httemplate/elements/auto-table.html') diff --git a/httemplate/elements/auto-table.html b/httemplate/elements/auto-table.html new file mode 100644 index 000000000..89d6eacb9 --- /dev/null +++ b/httemplate/elements/auto-table.html @@ -0,0 +1,146 @@ +<%doc> + +Example: +<% include('/elements/auto-table.html', + + ### + # required + ### + + 'header' => [ '#', 'Item', 'Amount' ], + 'fields' => [ 'id', 'name', 'amount' ], + + ### + # highly recommended + ### + + 'size' => [ 4, 12, 8 ], + 'maxl' => [ 4, 12, 8 ], + 'align' => [ 'right', 'left', 'right' ], + + ### + # optional + ### + + 'data' => [ [ 1, 'Widget', 25 ], + [ 12, 'Super Widget, 7 ] ], + #or + 'records' => [ qsearch('item', { } ) ], + # or any other array of FS::Record objects + + 'prefix' => 'mytable_', +) %> + +Values will be passed through as "mytable_id1", etc. + + + + +% foreach (@header) { + +% } + +% my $row = 0; +% for ( $row = 0; $row < scalar @data; $row++ ) { + +% my $col = 0; +% for ( $col = 0; $col < scalar @fields; $col++ ) { +% my $id = $prefix . $fields[$col] . $row; + +% } + + +% } +
<% $_ %>
+ + MAXLENGTH = <% $maxl[$col] %> + STYLE = "text-align:<% $align[$col] %>" + VALUE = "<% $data[$row][$col] %>" + onchange = "possiblyAddRow();" + > + + " + ALT = "X" + onclick = "deleteThisRow(this);" + > +
+ + + +<%init> +my %opt = @_; + +my @header = @{ $opt{'header'} }; +my @fields = @{ $opt{'fields'} }; +my @data = (); +if($opt{'data'}) { + @data = @{ $opt{'data'} }; +} +elsif($opt{'records'}) { + foreach my $rec (@{ $opt{'records'} }) { + push @data, [ map { $rec->getfield($_) } @fields ]; + } +} +# else @data = (); + +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); + + -- cgit v1.2.1