Sha256: d8de3538555a63e12c2b499d437a76ea65b923b186b17d446b6fa1fe0fee2f12
Contents?: true
Size: 817 Bytes
Versions: 2
Compression:
Stored size: 817 Bytes
Contents
class Splam::Rules::ArmsRace < Splam::Rule class << self attr_accessor :bad_word_score end self.bad_word_score = 40 # This is where you put banned domain names or otherwise def run shitty_sites = ["inquisitr"] shitty_sites.each do |word| results = @body.downcase.scan(word) if results && results.size > 0 add_score((self.class.bad_word_score ** results.size), "stupid site: '#{word}'") @body.scan(/<a[^>]+>(.*?)<\/a>/).each do |match| add_score self.class.bad_word_score * 4 * match[0].scan(word).size, "nasty word inside a link: #{word}" end @body.scan(/<a(.*?)>/).each do |match| add_score self.class.bad_word_score * 4 * match[0].scan(word).size, "nasty word inside a URL: #{word}" end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
splam-0.1.1 | lib/splam/rules/arms_race.rb |
splam-0.1.0 | lib/splam/rules/arms_race.rb |