Sha256: ce8822fe991f5762e8448b0e8371d5ec17c88872d5d08be14a20b8b396d358ae

Contents?: true

Size: 1.32 KB

Versions: 7

Compression:

Stored size: 1.32 KB

Contents

module Ecm
  module UserArea
    module PasswordResets
      class BaseController < Ecm::UserArea::Configuration.base_controller.constantize
        include ResourcesController::Resources
        include ResourcesController::ResourceInflections
        include ResourcesController::RestResourceUrls
        include ResourcesController::RestActions
        include Controller::RedirectBackConcern

        if Rails.version < '5'
          skip_before_action :authenticate_user!
        else
          skip_before_action :authenticate_user!, raise: false
        end

        before_action :find_using_perishable_token

        private

        def load_resource
          @resource
        end

        def load_resource
          User.find_using_perishable_token(params[:token])
        end

        def permitted_params
          params.require(:user).permit(:password, :password_confirmation)
        end

        def after_update_location
          new_user_session_path
        end

        def handle_user_not_found
          redirect_to new_user_session_path, notice: t("messages.failures.ecm_user_area.perishable_token_invalid")
        end

        def find_using_perishable_token
          @resource =  User.find_using_perishable_token(params[:token])
          handle_user_not_found if @resource.nil?
        end
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
ecm_user_area2-4.0.2 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-4.0.1 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-3.1.2 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-3.1.1 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-3.1.0 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-3.0.3 app/controllers/ecm/user_area/password_resets/base_controller.rb
ecm_user_area2-3.0.2 app/controllers/ecm/user_area/password_resets/base_controller.rb