module NofollowLinks # # def self.included(base) base.extend(ClassMethods) end # # def self.addNoFollow(text) tokenizer = HTML::Tokenizer.new(text) out = '' while token = tokenizer.next node = HTML::Node.parse(nil, 0, 0, token, false) if node.tag? and node.name.downcase == 'a' node.attributes['rel'] = 'nofollow' unless node.attributes.nil? end out << node.to_s end out end module ClassMethods # # def nofollow_links(*attr_names) attr_names.each do |field| before_save do |record| record[field] = NofollowLinks.addNoFollow(record[field]) if record[field].kind_of? String end end end #end method end # end ClassMethod end #end module