Class: Refinery::Inquiries::SpamFilter
- Inherits:
-
Object
- Object
- Refinery::Inquiries::SpamFilter
- Defined in:
- lib/refinery/inquiries/spam_filter.rb
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(inquiry, request) ⇒ SpamFilter
constructor
A new instance of SpamFilter.
- #notify? ⇒ Boolean
- #recaptcha_validated? ⇒ Boolean
- #valid? ⇒ Boolean
Constructor Details
#initialize(inquiry, request) ⇒ SpamFilter
Returns a new instance of SpamFilter.
7 8 9 10 11 |
# File 'lib/refinery/inquiries/spam_filter.rb', line 7 def initialize(inquiry, request) @inquiry = inquiry @request = request @params = request.params end |
Instance Method Details
#call ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/refinery/inquiries/spam_filter.rb', line 13 def call if recaptcha? if recaptcha_validated? @valid = true @inquiry.save else @inquiry.errors.add(:base, ::I18n.t(:captcha_invalid, scope: "refinery.inquiries.spam_filter")) end elsif simple_filter? @inquiry.save @valid = simple_filter_validated? end if notify? send_notification_email! send_confirmation_email! end end |
#notify? ⇒ Boolean
36 37 38 39 40 41 42 43 44 |
# File 'lib/refinery/inquiries/spam_filter.rb', line 36 def notify? if valid? if simple_filter? @inquiry.ham? || Inquiries.send_notifications_for_inquiries_marked_as_spam else true end end end |
#recaptcha_validated? ⇒ Boolean
46 47 48 49 50 51 52 |
# File 'lib/refinery/inquiries/spam_filter.rb', line 46 def recaptcha_validated? return true unless recaptcha? # avoid doing a second request if we already have a result. return @recaptcha_validated unless @recaptcha_validated.nil? @recaptcha_validated = recaptcha_success? end |
#valid? ⇒ Boolean
32 33 34 |
# File 'lib/refinery/inquiries/spam_filter.rb', line 32 def valid? @valid == true end |