Module: ForumRedCloth4
- Defined in:
- lib/forum_red_cloth4.rb
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.included(base) ⇒ Object
3 4 5 6 7 8 9 10 11 12 |
# File 'lib/forum_red_cloth4.rb', line 3 def self.included(base) # base.extend ClassMethods base.class_eval do def to_html_with_smilies(*rules) rules.push(:smilies) unless rules.include?(:smilies) to_html_without_smilies(*rules) end alias_method_chain :to_html, :smilies unless self.instance_methods.include?("to_html_without_smilies") end end |
Instance Method Details
#smilies(text) ⇒ Object
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/forum_red_cloth4.rb', line 14 def smilies(text) emoticons = { ':)' => 'happy', ':|' => 'neutral', ':(' => 'sad', ':D' => 'grin', ':O' => 'surprised', ';)' => 'wink', '}:)' => 'devil', ':P' => 'tongue', ':[' => 'mad', '8|' => 'shocked', ':@' => 'lol', 'B]' => 'cool' } # old syntax carried over from vanilla text.gsub!(/\:(angry|smile|bigsmile|confused|cool|cry|devil|neutral|sad|shamed|shocked|surprised|tongue|wink)\:/) do |w| %{<img src="/images/emoticons/#{$1}.gif" alt="(#{$1})" title="#{$1}" class="smiley" />} end # these are generally put in by the punymce toolbar, so we use their nasty but effective combination of blank image with sprite background text.gsub!(/(\}\:\)|\:\)|\:\||\:\(|\:D|\:O|\;\)|\:P|\:\@|8\||\:\[|B\])/) do |w| %{<img src="/images/furniture/blank.png" class="emoticon #{emoticons[w]}" />}; end end |