summaryrefslogtreecommitdiff
path: root/app/services/spam/akismet_mark_as_spam_service.rb
blob: da5506b9a218a8af4d800a43fee44499f71649e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# frozen_string_literal: true

module Spam
  class AkismetMarkAsSpamService
    include ::AkismetMethods

    attr_accessor :target, :options

    def initialize(target:)
      @target = target
      @options = {}
    end

    def execute
      @options[:ip_address] = @target.ip_address
      @options[:user_agent] = @target.user_agent

      return unless target.submittable_as_spam?
      return unless akismet.submit_spam

      target.user_agent_detail.update_attribute(:submitted, true)
    end
  end
end