45 |
use HTTP::Status; |
use HTTP::Status; |
46 |
use DBI; |
use DBI; |
47 |
use Encode qw/from_to/; |
use Encode qw/from_to/; |
48 |
|
use Regexp::Common qw /URI/; |
49 |
|
|
50 |
|
|
51 |
my $dbh = DBI->connect($DSN,"","", { RaiseError => 1, AutoCommit => 1 }) || die $DBI::errstr; |
my $dbh = DBI->connect($DSN,"","", { RaiseError => 1, AutoCommit => 1 }) || die $DBI::errstr; |
87 |
nick => '%s: ', |
nick => '%s: ', |
88 |
message => '%s', |
message => '%s', |
89 |
}, |
}, |
90 |
|
message_filter => sub { |
91 |
|
# modify message content |
92 |
|
return shift; |
93 |
|
} |
94 |
); |
); |
95 |
|
|
96 |
=cut |
=cut |
164 |
$append = 0; |
$append = 0; |
165 |
} |
} |
166 |
|
|
167 |
$msg .= sprintf($args->{fmt}->{message}, $row->{message}); |
if (ref($args->{message_filter}) eq 'CODE') { |
168 |
|
$msg .= sprintf($args->{fmt}->{message}, |
169 |
|
$args->{message_filter}->( |
170 |
|
$row->{message} |
171 |
|
) |
172 |
|
); |
173 |
|
} else { |
174 |
|
$msg .= sprintf($args->{fmt}->{message}, $row->{message}); |
175 |
|
} |
176 |
|
|
177 |
if ($append && @msgs) { |
if ($append && @msgs) { |
178 |
$msgs[$#msgs] .= " " . $msg; |
$msgs[$#msgs] .= " " . $msg; |
420 |
nick => '<span class="nick">%s:</span> ', |
nick => '<span class="nick">%s:</span> ', |
421 |
message => '<span class="message">%s</span>', |
message => '<span class="message">%s</span>', |
422 |
}, |
}, |
423 |
|
message_filter => sub { |
424 |
|
my $m = shift || return; |
425 |
|
$m =~ s#($RE{URI}{HTTP})#<a href="$1">$1</a>#gs; |
426 |
|
return $m; |
427 |
|
}, |
428 |
) |
) |
429 |
) . |
) . |
430 |
qq{</body></html>} |
qq{</body></html>} |