diff --git a/app/logical/d_text.rb b/app/logical/d_text.rb
index 92af35faf..1dcbfb88e 100644
--- a/app/logical/d_text.rb
+++ b/app/logical/d_text.rb
@@ -14,7 +14,6 @@ class DText
str.gsub!(/&/, "&")
str.gsub!(/, "<")
str.gsub!(/>/, ">")
- str.gsub!(/(?\1')
str.gsub!(/\n/m, "
")
str.gsub!(/\[b\](.+?)\[\/b\]/i, '\1')
str.gsub!(/\[i\](.+?)\[\/i\]/i, '\1')
@@ -122,6 +121,8 @@ class DText
unless options[:inline]
str.gsub!(/\s*\[quote\]\s*/m, "\n\n[quote]\n\n")
str.gsub!(/\s*\[\/quote\]\s*/m, "\n\n[/quote]\n\n")
+ str.gsub!(/\s*\[spoilers?\](?!\])\s*/m, "\n\n[spoiler]\n\n")
+ str.gsub!(/\s*\[\/spoilers?\]\s*/m, "\n\n[/spoiler]\n\n")
end
str.gsub!(/(?:\r?\n){3,}/, "\n\n")
@@ -162,6 +163,16 @@ class DText
""
end
+ when /\[spoilers?\](?!\])/
+ stack << "div"
+ '
' + parse_inline(block) + "
" end