--- trunk/bin/irc-logger.pl 2007/06/08 12:12:45 64 +++ trunk/bin/irc-logger.pl 2007/06/08 12:17:35 65 @@ -855,6 +855,8 @@ .col-3 { background: #ff9999 } .col-4 { background: #ff66ff } */ +.calendar { border: 1px solid red; width: 100%; } +.month { border: 0px; width: 100%; } _END_OF_STYLE_ my $max_color = 4; @@ -907,28 +909,42 @@ qq{

}; if ($request->url =~ m#/history#) { my $sth = $dbh->prepare(qq{ - select date(time) as date,count(*) as nr + select date(time) as date,count(*) as nr,sum(length(message)) as len from log group by date(time) order by date(time) desc }); $sth->execute(); my ($l_yyyy,$l_mm) = (0,0); + $html .= qq{}; my $cal; + my $ord = 0; while (my $row = $sth->fetchrow_hashref) { # this is probably PostgreSQL specific, expects ISO date my ($yyyy,$mm,$dd) = split(/-/, $row->{date}); if ($yyyy != $l_yyyy || $mm != $l_mm) { - $html .= $cal->as_HTML() if ($cal); + if ( $cal ) { + $html .= qq{}; + $ord++; + $html .= qq{} if ( $ord % 3 == 0 ); + } $cal = new HTML::CalendarMonthSimple('month'=>$mm,'year'=>$yyyy); - $cal->border(2); + $cal->border(1); + $cal->width('30%'); + $cal->cellheight('5em'); + $cal->tableclass('month'); + #$cal->cellclass('day'); + $cal->sunday('SUN'); + $cal->saturday('SAT'); + $cal->weekdays('MON','TUE','WED','THU','FRI'); ($l_yyyy,$l_mm) = ($yyyy,$mm); } $cal->setcontent($dd, qq{ - $row->{nr} + $row->{nr}
$row->{len} }); + } - $html .= $cal->as_HTML() if ($cal); + $html .= qq{
} . $cal->as_HTML() . qq{
} . $cal->as_HTML() . qq{
}; } else { $html .= join("

",