Skip to content

Commit a027b06

Browse files
author
Tom Copeland
committed
Some more automated despamifying
1 parent 9efa913 commit a027b06

File tree

3 files changed

+29
-4
lines changed

3 files changed

+29
-4
lines changed

app/models/skills_data.rb

+5-2
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,12 @@ class SkillsData < ActiveRecord::Base
77

88
belongs_to :user
99

10-
def self.remove_spam
10+
def self.remove_spam!
1111
%w{nike porn shoes wrestling dating href HREF herf watches blackjack poker}.each do |term|
12-
find(:all, :conditions => "keywords like '%#{term}%'").each {|s| s.destroy }
12+
find(:all, :conditions => "keywords like '%#{term}%'").each do |s|
13+
s.user.mark_as_deleted!
14+
s.destroy
15+
end
1316
end
1417
end
1518

app/models/snippet.rb

+10-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,16 @@ class Snippet < ActiveRecord::Base
2121
belongs_to :user, :foreign_key => 'created_by'
2222
has_many :snippet_versions, :dependent => :destroy
2323

24-
def self.inheritance_column
25-
nil
24+
self.inheritance_column = :__unused__
25+
26+
def self.remove_spam!
27+
%w{nike Nike shoes}.each do |term|
28+
find(:all, :conditions => "description like '%#{term}%'").each do |s|
29+
s.user.mark_as_deleted!
30+
s.destroy
31+
end
32+
end
33+
2634
end
2735

2836
def snippet_type

lib/tasks/rubyforge.rake

+14
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,20 @@ namespace :rubyforge do
2222
end
2323
end
2424
end
25+
26+
def despam(clazz)
27+
before = clazz.count
28+
clazz.remove_spam!
29+
after = clazz.count
30+
puts "Removed #{before-after} spam #{clazz} records"
31+
end
32+
33+
desc "Remove spam and spammers"
34+
task :remove_spam => :environment do
35+
[Snippet, SkillsData].each do |clazz|
36+
despam clazz
37+
end
38+
end
2539

2640
end
2741

0 commit comments

Comments
 (0)