class GraphqlDevise::Mutations::ResendConfirmation
Public Instance Methods
resolve(email:, redirect_url:) { |resource| ... }
click to toggle source
# File lib/graphql_devise/mutations/resend_confirmation.rb, line 11 def resolve(email:, redirect_url:) check_redirect_url_whitelist!(redirect_url) resource = find_confirmable_resource(email) if resource yield resource if block_given? if resource.confirmed? && !resource.pending_reconfirmation? raise_user_error(I18n.t('graphql_devise.confirmations.already_confirmed')) end resource.send_confirmation_instructions( redirect_url: redirect_url, template_path: ['graphql_devise/mailer'], schema_url: controller.full_url_without_params ) { message: I18n.t('graphql_devise.confirmations.send_instructions', email: email) } else raise_user_error(I18n.t('graphql_devise.confirmations.user_not_found', email: email)) end end
Private Instance Methods
find_confirmable_resource(email)
click to toggle source
# File lib/graphql_devise/mutations/resend_confirmation.rb, line 37 def find_confirmable_resource(email) email_insensitive = get_case_insensitive_field(:email, email) resource = find_resource(:unconfirmed_email, email_insensitive) if resource_class.reconfirmable resource ||= find_resource(:email, email_insensitive) resource end