Sha256: a32ab94118f23dbf70af85a6bae7f64116af2545d1ef88b6bca6f00f41ecabe3

Contents?: true

Size: 1.07 KB

Versions: 2

Compression:

Stored size: 1.07 KB

Contents

class PasswordResetController < ApplicationController
  def show
  end

  def create
    if user && user.send_reset_password
      logout

      respond_to do |format|
        format.json { head :no_content }
        format.html {
          flash[:notice] = "We've sent an email which can be used to change your password"
          redirect_to login_path
        }
      end
    else
      respond_to do |format|
        format.json { render json: { errors: ["Invalid user name or email"], status: "error" }, status: 422 }
        format.html {
          flash.now[:error] = "Invalid user name or email"
          render :show
        }
      end
    end
  end

  protected

  def user
    return @user if defined?(@user)
    <% if username? %>
    username_or_email = "#{params[:email]}".downcase
    return if username_or_email.blank?
    @user = User.where('LOWER(username) = ? OR email = ?', username_or_email, username_or_email).first
    <% else %>
    email = "#{params[:email]}".downcase
    return if email.blank?
    @user = User.where('email = ?', email).first
    <% end %>
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
authkit-0.7.0 lib/generators/authkit/templates/app/controllers/password_reset_controller.rb
authkit-0.5.0 lib/generators/authkit/templates/app/controllers/password_reset_controller.rb