Sha256: 5dd437a09542a19ddd13c486a7880782f0b978d9cdc0eb2cc964e98120775303

Contents?: true

Size: 695 Bytes

Versions: 1

Compression:

Stored size: 695 Bytes

Contents

# frozen_string_literal: true

module PUNK
  class VerifySessionAction < Action
    args :session, :secret

    def validate
      validates_not_null :session
      validates_not_empty :session
      return if session.blank?
      validates_not_null :secret
      return if secret.blank?
      validates_type Session, :session
      validates_state :session, :pending
      validates_event :session, :verify
    end

    def process
      verify = ProveClaimService.run(session: session, secret: secret)
      raise BadRequest, "Secret is incorrect" unless verify.result == true
      present Info, message: "We have succesfully verified your identity.  Welcome to GroupFire!"
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
punk-0.4.1 lib/punk/actions/sessions/verify.rb