- print
- start_Tr {-valign => 'middle'};
- print
- td {-class => 'tableborder'}, small ($next,
- checkbox {-name => "action$next",
- -label => ''}),
- hidden ({-name => "email$next",
- -default => $sender});
- print
- start_td {-align => 'left'};
- print
- start_table {-class => 'tablerightdata',
- -cellpadding => 2,
- -callspacing => 0,
- -border => 0,
- -width => '100%',
- -bgcolor => '#d4d0c8'};
- print
- td {-class => 'tablelabel',
- -valign => 'middle',
- -width => '40'}, 'Sender:',
- td {-class => 'sender',
- -valign => 'middle'},
- a {-href => "mailto:$sender?subject=$msgs2[0][0]"}, $sender;
- print
- end_table;
-
- my $messages = 1;
-
- foreach (@msgs) {
- my $msg_date = pop @{$_};
- my $subject = pop @{$_};
-
- if ($date eq substr ($msg_date, 0, 10)) {
- $msg_date = b font {-color => 'green'}, SQLDatetime2UnixDatetime $msg_date;
+
+ # Start Sender line
+ my $rowspan = @$msgs + 1;
+
+ print start_Tr {-valign => 'middle'};
+ print td {
+ -class => $leftclass,
+ -align => 'right',
+ -valign => 'middle',
+ -rowspan => $rowspan,
+ }, $next,
+ checkbox {
+ -name => "action$next",
+ -label => '',
+ -valign => 'middle',
+ };
+
+ print hidden({
+ -name => "email$next",
+ -default => $sender,
+ });
+
+ # Get subject line
+ $heading = "?subject=$heading" if $heading;
+
+ print td {
+ -class => $senderclass,
+ }, a {
+ -href => "mailto:$sender$heading",
+ }, " $sender";
+
+ if ($rec) {
+ my $listlink = ($rec->{type} and $rec->{sequence}) ? "$rec->{type}:$rec->{sequence}" : '';
+
+ $rec->{comment} //= '';
+ $rec->{retention} //= '';
+
+ print td {
+ -class => $dataclass,
+ -align => 'right',
+ }, a {
+ href => "/maps/php/list.php?type=$rec->{type}&next=" . ($rec->{sequence} - 1),
+ }, $listlink,
+ td {
+ -class => $dataclass,
+ -align => 'right',
+ }, "$rec->{hit_count} ",
+ td {
+ -class => $dataclass,
+ }, formatRule($rec),
+ td {
+ -class => $dataclass,
+ -align => 'right',
+ }, "$rec->{retention} ",
+ td {
+ -class => $rightclass,
+ }, $rec->{comment};
+ } else {
+ # $rec will be undefined if this message will be returned
+ print td {-class => $dataclass},
+ td {-class => $dataclass},
+ td {-class => $dataclass},
+ td {-class => $dataclass},
+ td {-class => $rightclass};
+ } # if
+
+ print end_Tr;
+
+ my $msgnbr = 0;
+
+ for my $rec (@$msgs) {
+ $msgnbr++;
+
+ # We increased $next earlier so do not add 1 here
+ if (($next % $lines) == (@senders % $lines)) {
+ $dataclass = 'tablebottomdata';
+ $rightclass = 'tablebottomright' if $msgnbr == @$msgs;
+
+ # Only subjectbottom the last message
+ $subjectclass = 'subjectbottom' if $msgnbr == @$msgs;
+ } # if
+
+ if ($date eq substr ($rec->{timestamp}, 0, 10)) {
+ $rec->{date} = b font {-color => 'green'}, SQLDatetime2UnixDatetime $rec->{timestamp};