Sha256: 7ee042bff5f6506672411714191f65c003729c18cd5c4d37fc0bac9a1227006e

Contents?: true

Size: 1.43 KB

Versions: 13

Compression:

Stored size: 1.43 KB

Contents

class Admin::AccountController < Admin::BaseController

  layout 'admin/session'

  skip_before_filter :reload_config_and_roles, :authenticate, :set_locale

  before_filter :sign_in?, :except => [:forgot_password, :send_password, :show]
  before_filter :new?, :only => [:forgot_password, :send_password]

  def new
    flash[:notice] = Typus::I18n.t("Enter your email below to create the first user.")
  end

  def create
    user = Typus.user_class.generate(:email => admin_user_params[:email])
    redirect_to user ? { :action => "show", :id => user.token } : { :action => :new }
  end

  def forgot_password; end

  def send_password
    if user = Typus.user_class.find_by_email(admin_user_params[:email])
      Admin::Mailer.reset_password_instructions(user, request.host_with_port).deliver
      redirect_to new_admin_session_path, :notice => Typus::I18n.t("Password recovery link sent to your email.")
    else
      render :action => :forgot_password
    end
  end

  def show
    flash[:notice] = Typus::I18n.t("Please set a new password.")
    typus_user = Typus.user_class.find_by_token!(params[:id])
    session[:typus_user_id] = typus_user.id
    redirect_to params[:return_to] || { :controller => "/admin/#{Typus.user_class.to_resource}", :action => "edit", :id => typus_user.id }
  end

  private

  def sign_in?
    redirect_to new_admin_session_path unless zero_users
  end

  def new?
    redirect_to new_admin_account_path if zero_users
  end

end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
brainsome_typus-4.0.0.beta13 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta12 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta11 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta10 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta9 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta8 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta7 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta6 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta5 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta4 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta3 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta2 app/controllers/admin/account_controller.rb
brainsome_typus-4.0.0.beta1 app/controllers/admin/account_controller.rb