module Mentionable
Constants
- REGEXP
- VERSION
Public Class Methods
included(base)
click to toggle source
# File lib/mentionable.rb, line 8 def self.included(base) base.after_save do if self.class.class_variable_defined? :@@on_mention send self.class.on_mention, new_mentions if new_mentions? end end base.extend ClassMethods end
Public Instance Methods
extract_mentions(text)
click to toggle source
# File lib/mentionable.rb, line 38 def extract_mentions(text) text.scan(self.class.regexp).uniq end
mentionable()
click to toggle source
# File lib/mentionable.rb, line 42 def mentionable send self.class.mentionable_name end
mentionable_before_last_save()
click to toggle source
# File lib/mentionable.rb, line 46 def mentionable_before_last_save send "#{self.class.mentionable_name}_before_last_save" end
mentions()
click to toggle source
# File lib/mentionable.rb, line 50 def mentions extract_mentions(mentionable) end
mentions?()
click to toggle source
# File lib/mentionable.rb, line 54 def mentions? mentions.present? end
mentions_were()
click to toggle source
# File lib/mentionable.rb, line 58 def mentions_were extract_mentions(mentionable_before_last_save || '') end
new_mentions()
click to toggle source
# File lib/mentionable.rb, line 62 def new_mentions mentions - mentions_were end
new_mentions?()
click to toggle source
# File lib/mentionable.rb, line 66 def new_mentions? new_mentions.present? end