@@ -40,27 +40,20 @@ class Protip < ActiveRecord::Base
40
40
include Tire ::Model ::Search
41
41
include Scoring ::HotStream
42
42
include SearchModule
43
- include Rakismet ::Model
44
-
45
43
acts_as_commentable
46
44
47
45
include ProtipMapping
46
+ include SpamFilter
48
47
49
48
paginates_per ( PAGESIZE = 18 )
50
49
51
50
URL_REGEX = /(?i)\b ((?:[a-z][\w -]+:(?:\/ {1,3}|[a-z0-9%])|www\d {0,3}[.]|[a-z0-9.\- ]+[.][a-z]{2,4}\/ )(?:[^\s ()<>]+|\( ([^\s ()<>]+|(\( [^\s ()<>]+\) ))*\) )+(?:\( ([^\s ()<>]+|(\( [^\s ()<>]+\) ))*\) |[^\s `!()\[ \] {};:'".,<>?]))/
52
51
53
52
has_many :likes , as : :likable , dependent : :destroy , after_add : :reset_likes_cache , after_remove : :reset_likes_cache
54
53
has_many :protip_links , autosave : true , dependent : :destroy , after_add : :reset_links_cache , after_remove : :reset_links_cache
55
- has_one :spam_report , as : :spammable
56
54
belongs_to :user , autosave : true
57
55
58
- rakismet_attrs author : proc { self . user . name } ,
59
- author_email : proc { self . user . email } ,
60
- content : :body ,
61
- blog : ENV [ 'AKISMET_URL' ] ,
62
- user_ip : proc { self . user . last_ip } ,
63
- user_agent : proc { self . user . last_ua }
56
+
64
57
65
58
acts_as_taggable_on :topics , :users
66
59
attr_accessor :upvotes
@@ -108,7 +101,7 @@ class Protip < ActiveRecord::Base
108
101
after_save :index_search
109
102
after_destroy :index_search_after_destroy
110
103
after_create :update_network
111
- after_save :analyze_spam
104
+
112
105
# End of test failing lines
113
106
114
107
attr_accessor :upvotes_value
@@ -999,9 +992,4 @@ def need_to_extract_data_from_links
999
992
def adjust_like_value ( user , like_value )
1000
993
user . is_a? ( User ) && self . author . team_member_of? ( user ) ? [ like_value /2 , 1 ] . max : like_value
1001
994
end
1002
-
1003
- def analyze_spam
1004
- AnalyzeSpamJob . perform_async ( { id : id , klass : self . class . name } )
1005
- end
1006
-
1007
995
end
0 commit comments