Sha256: 019222c3b57604c4754aa6aece684ccad80a17a34542f470b0df8e35ecef0836

Contents?: true

Size: 1.11 KB

Versions: 6

Compression:

Stored size: 1.11 KB

Contents

# frozen_string_literal: true

module Overrides
  class PasswordsController < DeviseTokenAuth::PasswordsController
    OVERRIDE_PROOF = '(^^,)'.freeze

    # this is where users arrive after visiting the email confirmation link
    def edit
      @resource = resource_class.reset_password_by_token(
        reset_password_token: resource_params[:reset_password_token]
      )

      if @resource && @resource.id
        client_id, token = @resource.create_token

        # ensure that user is confirmed
        @resource.skip_confirmation! unless @resource.confirmed_at

        @resource.save!

        redirect_header_options = {
          override_proof: OVERRIDE_PROOF,
          reset_password: true
        }
        redirect_headers = build_redirect_headers(token,
                                                  client_id,
                                                  redirect_header_options)
        redirect_to(@resource.build_auth_url(params[:redirect_url],
                                             redirect_headers))
      else
        raise ActionController::RoutingError, 'Not Found'
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 3 rubygems

Version Path
devise_token_auth-1.1.0 test/dummy/app/controllers/overrides/passwords_controller.rb
devise_token_auth_fork_dfabarbosa-1.0.0 test/dummy/app/controllers/overrides/passwords_controller.rb
devise_token_auth_skycocker_fork-1.0.0 test/dummy/app/controllers/overrides/passwords_controller.rb
devise_token_auth-1.0.0 test/dummy/app/controllers/overrides/passwords_controller.rb
devise_token_auth-1.0.0.rc2 test/dummy/app/controllers/overrides/passwords_controller.rb
devise_token_auth-1.0.0.rc1 test/dummy/app/controllers/overrides/passwords_controller.rb