class Decidim::DirectVerifications::AuthorizeUser
Attributes
data[R]
email[R]
instrumenter[R]
organization[R]
session[R]
Public Class Methods
new(email, data, session, organization, instrumenter, authorization_handler)
click to toggle source
rubocop:disable Metrics/ParameterLists
# File lib/decidim/direct_verifications/authorize_user.rb, line 7 def initialize(email, data, session, organization, instrumenter, authorization_handler) @email = email @data = data @session = session @organization = organization @instrumenter = instrumenter @authorization_handler = authorization_handler end
Public Instance Methods
call()
click to toggle source
rubocop:enable Metrics/ParameterLists
# File lib/decidim/direct_verifications/authorize_user.rb, line 17 def call unless user instrumenter.add_error :authorized, email return end return unless valid_authorization? Verification::ConfirmUserAuthorization.call(authorization, form, session) do on(:ok) do instrumenter.add_processed :authorized, email end on(:invalid) do instrumenter.add_error :authorized, email end end end
Private Instance Methods
form()
click to toggle source
# File lib/decidim/direct_verifications/authorize_user.rb, line 59 def form Verification::DirectVerificationsForm.new(email: user.email, name: user.name) end
user()
click to toggle source
# File lib/decidim/direct_verifications/authorize_user.rb, line 43 def user @user ||= User.find_by(email: email, decidim_organization_id: organization.id) end