}
my ($outer_idx, $inner_idx) = (0, 0);
+ my $next_border_top;
my @rows;
foreach my $row_set (@{ $self->{data} }) {
if ('HASH' eq ref $row_set) {
+ if ($row_set->{type} eq 'separator') {
+ if (! scalar @rows) {
+ $next_border_top = 1;
+ } else {
+ $rows[-1]->{BORDER_BOTTOM} = 1;
+ }
+
+ next;
+ }
+
my $row_data = {
'IS_CONTROL' => 1,
- 'IS_SEPARATOR' => $row_set->{type} eq 'separator',
'IS_COLSPAN_DATA' => $row_set->{type} eq 'colspan_data',
'NUM_COLUMNS' => scalar @visible_columns,
+ 'BORDER_TOP' => $next_border_top,
'data' => $row_set->{data},
};
push @rows, $row_data;
+ $next_border_top = 0;
+
next;
}
'outer_idx' => $outer_idx,
'outer_idx_odd' => $outer_idx % 2,
'inner_idx' => $inner_idx,
+ 'BORDER_TOP' => $next_border_top,
};
push @rows, $row_data;
+
+ $next_border_top = 0;
}
}
-->
</script>
+ <style type="text/css">
+ <!--
+.top_border {
+ border-top: solid black;
+ border-width: 4px;
+}
+.bottom_border {
+ border-bottom: solid black;
+ border-width: 4px;
+}
+ -->
+ </style>
+
[% IF MESSAGE %]
<p>[% MESSAGE %]</p>
[% END %]
[% FOREACH row = ROWS %]
[% IF row.IS_CONTROL %]
- [% IF row.IS_SEPARATOR %]<tr><td colspan="[% row.NUM_COLUMNS %]"><hr size="3" noshade></td></tr>[% END %][% IF row.IS_COLSPAN_DATA %]<tr><td colspan="[% row.NUM_COLUMNS %]">[% row.data %]</td></tr>[% END %]
+ [% IF row.IS_COLSPAN_DATA %]<tr><td colspan="[% row.NUM_COLUMNS %]">[% row.data %]</td></tr>[% END %]
[% ELSE %]
<tr class="listrow[% row.outer_idx_odd %]">
- [% FOREACH col = row.COLUMNS %]<td[% IF col.align %] align="[% col.align %]"[% END %][% IF col.valign %] valign="[% col.valign %]"[% END %][% IF col.class %] class="[% col.class %]"[% END %]>[% IF col.raw_data %][% col.raw_data %][% END %][% USE iterator(col.CELL_ROWS) %][% FOREACH cell_row = iterator %][% IF cell_row.data %][% IF cell_row.link %]<a href="[% cell_row.link %]">[% END %][% cell_row.data %][% IF cell_row.link %]</a>[% END %][% END %][% UNLESS iterator.last %]<br>[% END %][% END %]</td>
- [% END %]
+ [%- FOREACH col = row.COLUMNS %]
+ <td[% IF col.align %] align="[% col.align %]"[% END %]
+ [%- IF col.valign %] valign="[% col.valign %]"[%- END %]
+ [%- SET tdclass = '' %]
+ [%- IF row.BORDER_TOP %][%- SET tdclass = "$tdclass top_border" %][%- END %]
+ [%- IF row.BORDER_BOTTOM %][%- SET tdclass = "$tdclass bottom_border" %][%- END %]
+ [%- IF col.class %][%- SET tdclass = "$tdclass $col.class" %][%- END %]
+ [%- IF tdclass %] class="[% tdclass %]"[%- END %]>
+ [%- IF col.raw_data %][%- col.raw_data %][%- END %]
+ [%- USE iterator(col.CELL_ROWS) %][%- FOREACH cell_row = iterator %]
+ [%- IF cell_row.data %]
+ [%- IF cell_row.link %]<a href="[% cell_row.link %]">[%- END %]
+ [%- cell_row.data %]
+ [%- IF cell_row.link %]</a>[%- END %]
+ [%- END %]
+ [%- UNLESS iterator.last %]<br>[%- END %]
+ [%- END %]
+ </td>
+ [%- END %]
</tr>
[% END %]
[% END %]
-->
</script>
+ <style type="text/css">
+ <!--
+.top_border {
+ border-top: solid black;
+ border-width: 4px;
+}
+.bottom_border {
+ border-bottom: solid black;
+ border-width: 4px;
+}
+ -->
+ </style>
+
[% IF MESSAGE %]
<p>[% MESSAGE %]</p>
[% END %]
[% FOREACH row = ROWS %]
[% IF row.IS_CONTROL %]
- [% IF row.IS_SEPARATOR %]<tr><td colspan="[% row.NUM_COLUMNS %]"><hr size="3" noshade></td></tr>[% END %][% IF row.IS_COLSPAN_DATA %]<tr><td colspan="[% row.NUM_COLUMNS %]">[% row.data %]</td></tr>[% END %]
+ [% IF row.IS_COLSPAN_DATA %]<tr><td colspan="[% row.NUM_COLUMNS %]">[% row.data %]</td></tr>[% END %]
[% ELSE %]
<tr class="listrow[% row.outer_idx_odd %]">
- [% FOREACH col = row.COLUMNS %]<td[% IF col.align %] align="[% col.align %]"[% END %][% IF col.valign %] valign="[% col.valign %]"[% END %][% IF col.class %] class="[% col.class %]"[% END %]>[% IF col.raw_data %][% col.raw_data %][% END %][% USE iterator(col.CELL_ROWS) %][% FOREACH cell_row = iterator %][% IF cell_row.data %][% IF cell_row.link %]<a href="[% cell_row.link %]">[% END %][% cell_row.data %][% IF cell_row.link %]</a>[% END %][% END %][% UNLESS iterator.last %]<br>[% END %][% END %]</td>
- [% END %]
+ [%- FOREACH col = row.COLUMNS %]
+ <td[% IF col.align %] align="[% col.align %]"[% END %]
+ [%- IF col.valign %] valign="[% col.valign %]"[%- END %]
+ [%- SET tdclass = '' %]
+ [%- IF row.BORDER_TOP %][%- SET tdclass = "$tdclass top_border" %][%- END %]
+ [%- IF row.BORDER_BOTTOM %][%- SET tdclass = "$tdclass bottom_border" %][%- END %]
+ [%- IF col.class %][%- SET tdclass = "$tdclass $col.class" %][%- END %]
+ [%- IF tdclass %] class="[% tdclass %]"[%- END %]>
+ [%- IF col.raw_data %][%- col.raw_data %][%- END %]
+ [%- USE iterator(col.CELL_ROWS) %][%- FOREACH cell_row = iterator %]
+ [%- IF cell_row.data %]
+ [%- IF cell_row.link %]<a href="[% cell_row.link %]">[%- END %]
+ [%- cell_row.data %]
+ [%- IF cell_row.link %]</a>[%- END %]
+ [%- END %]
+ [%- UNLESS iterator.last %]<br>[%- END %]
+ [%- END %]
+ </td>
+ [%- END %]
</tr>
[% END %]
[% END %]