diff options
author | Yorhel <git@yorhel.nl> | 2008-12-27 10:57:33 +0100 |
---|---|---|
committer | Yorhel <git@yorhel.nl> | 2008-12-27 10:57:33 +0100 |
commit | 6713e044e0b1a0a9dbb61da7a2ce6f252dc95f12 (patch) | |
tree | 3c371eb3cd920316fdcb502e7a66a4e875847954 /lib/VNDB/Func.pm | |
parent | 89a7b892aafe5e4138d62bf37c877d186d7dfcc8 (diff) |
[spoiler] tag produces mouseover-style spoilers instead of ROT13
Diffstat (limited to 'lib/VNDB/Func.pm')
-rw-r--r-- | lib/VNDB/Func.pm | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/lib/VNDB/Func.pm b/lib/VNDB/Func.pm index 9abacad0..1833be37 100644 --- a/lib/VNDB/Func.pm +++ b/lib/VNDB/Func.pm @@ -98,7 +98,6 @@ sub bb2html { my $e = sub { local $_ = shift; - tr/A-Za-z/N-ZA-Mn-za-m/ if !@_ && grep /spoiler/, @open; s/&/&/g; s/>/>/g; s/</</g; @@ -113,9 +112,14 @@ sub bb2html { my $lit = $_; if($open[$#open] ne 'raw') { if ($_ eq '[raw]') { push @open, 'raw'; next } - elsif ($_ eq '[spoiler]') { push @open, 'spoiler'; next } - elsif ($_ eq '[/spoiler]') { pop @open if $open[$#open] eq 'spoiler'; next } - elsif ($_ eq '[/url]') { + elsif ($_ eq '[spoiler]') { push @open, 'spoiler'; $result .= '<b class="spoiler">'; next } + elsif ($_ eq '[/spoiler]') { + if($open[$#open] eq 'spoiler') { + $result .= '</b>'; + pop @open; + } + next; + } elsif($_ eq '[/url]') { if($open[$#open] eq 'url') { $result .= '</a>'; pop @open; |