73 |
use HTML::CalendarMonthSimple; |
use HTML::CalendarMonthSimple; |
74 |
use Getopt::Long; |
use Getopt::Long; |
75 |
use DateTime; |
use DateTime; |
76 |
|
use URI::Escape; |
77 |
use Data::Dump qw/dump/; |
use Data::Dump qw/dump/; |
78 |
|
|
79 |
my $use_twitter = 1; |
my $use_twitter = 1; |
942 |
filter => { |
filter => { |
943 |
message => sub { |
message => sub { |
944 |
my $m = shift || return; |
my $m = shift || return; |
945 |
|
|
946 |
|
# protect HTML from wiki modifications |
947 |
|
sub e { |
948 |
|
my $t = shift; |
949 |
|
return 'uri_unescape{' . uri_escape($t) . '}'; |
950 |
|
} |
951 |
|
|
952 |
$m =~ s/($escape_re)/$escape{$1}/gs; |
$m =~ s/($escape_re)/$escape{$1}/gs; |
953 |
$m =~ s#($RE{URI}{HTTP})#<a href="$1">$1</a>#gs; |
$m =~ s#($RE{URI}{HTTP})#e(qq{<a href="$1">$1</a>})#egs; |
954 |
$m =~ s#$tag_regex#<a href="?tag=$1" class="tag">$1</a>#g; |
$m =~ s#$tag_regex#e(qq{<a href="?tag=$1" class="tag">$1</a>})#egs; |
955 |
$m =~ s#\*(\w+)\*#<b>$1</b>#gs; |
$m =~ s#\*(\w+)\*#<b>$1</b>#gs; |
956 |
$m =~ s#_(\w+)_#<u>$1</u>#gs; |
$m =~ s#_(\w+)_#<u>$1</u>#gs; |
957 |
$m =~ s#\/(\w+)\/#<i>$1</i>#gs; |
$m =~ s#\/(\w+)\/#<i>$1</i>#gs; |
958 |
|
|
959 |
|
$m =~ s#uri_unescape{([^}]+)}#uri_unescape($1)#egs; |
960 |
return $m; |
return $m; |
961 |
}, |
}, |
962 |
nick => sub { |
nick => sub { |