Sha256: 24901b756201ff96a9397fac193f4890d2a6e6011140a562978648a0e99e0ee7

Contents?: true

Size: 1.08 KB

Versions: 5

Compression:

Stored size: 1.08 KB

Contents

class PasswordResetsController < Spree::BaseController
  before_filter :require_no_user
  before_filter :load_user_using_perishable_token, :only => [:edit, :update]

  def new
    render
  end

  def create
    @user = User.find_by_email(params[:email])
    if @user
      @user.deliver_password_reset_instructions!
      self.notice = t("password_reset_instructions_are_mailed")
      redirect_to root_url
    else
      flash[:error] = t("no_user_found")
      render :action => :new
    end
  end

  def edit
    render
  end

  def update
    @user.password = params[:user][:password]
    @user.password_confirmation = params[:user][:password_confirmation]
    if @user.save
      self.notice = t("password_updated")
      redirect_to account_url
    else
      render :action => :edit
    end
  end

  private
    def load_user_using_perishable_token
      @user = User.find_using_perishable_token(params[:id])
      unless @user
        self.notice = t("password_reset_token_not_found")
        redirect_to root_url
      end
    end

    def accurate_title
      I18n.t(:forgot_password)
    end

end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
spree-0.11.4 app/controllers/password_resets_controller.rb
spree-0.11.3 app/controllers/password_resets_controller.rb
spree-0.11.2 app/controllers/password_resets_controller.rb
spree-0.11.1 app/controllers/password_resets_controller.rb
spree-0.11.0 app/controllers/password_resets_controller.rb