# The SpamRulesEnforcer class takes action against users based on flags that their posts # receive, their trust level, etc. class SpamRulesEnforcer # The exclamation point means that this method may make big changes to posts and users. def self.enforce!(arg) SpamRulesEnforcer.new(arg).enforce! end def initialize(arg) @user = arg if arg.is_a?(User) @post = arg if arg.is_a?(Post) end def enforce! if @user SpamRule::AutoBlock.new(@user).perform end if @post SpamRule::FlagSockpuppets.new(@post).perform end true end end