Module: FastSubmissionProtection::Controller

Extended by:
ActiveSupport::Concern
Defined in:
lib/fast_submission_protection/controller.rb

Defined Under Namespace

Modules: ClassMethods

Instance Method Summary collapse

Instance Method Details

#finish_timed_submission(name, delay = nil) ⇒ Object



54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/fast_submission_protection/controller.rb', line 54

def finish_timed_submission name, delay = nil
  if protect_from_fast_submission?
    timer = submission_timer(name, delay)
    if timer.too_fast?
      logger.warn "WARNING: timed submission too fast" if logger
      timer.restart
      raise SubmissionTooFastError.new(name, delay)
    else
      timer.clear
    end
  end
end

#start_timed_submission(name) ⇒ Object



50
51
52
# File 'lib/fast_submission_protection/controller.rb', line 50

def start_timed_submission name
  submission_timer(name).start
end