Sha256: 18efb72e79892f29dfde86d36f3154d3c41078b79caa15b6605914ed19a78c17

Contents?: true

Size: 1.32 KB

Versions: 1

Compression:

Stored size: 1.32 KB

Contents

module Shoppe
  class UsersController < Shoppe::ApplicationController
  
    before_filter { @active_nav = :users }
    before_filter { params[:id] && @user = Shoppe::User.find(params[:id]) }
    if Shoppe.config[:demo_mode]
      before_filter(:only => [:create, :update, :destroy]) do
        raise Shoppe::Error, "You cannot make changes to user in demo mode. Sorry about that."
      end
    end
  
    def index
      @users = Shoppe::User.all
    end
  
    def new
      @user = Shoppe::User.new
    end
  
    def create
      @user = Shoppe::User.new(safe_params)
      if @user.save
        redirect_to :users, :flash => {:notice => "User has been created successfully"}
      else
        render :action => "new"
      end
    end
  
    def edit
    end
  
    def update
      if @user.update(safe_params)
        redirect_to [:edit, @user], :flash => {:notice => "User has been updated successfully"}
      else
        render :action => "edit"
      end
    end
  
    def destroy
      raise Shoppe::Error, "You cannot remove yourself" if @user == current_user
      @user.destroy
      redirect_to :users, :flash => {:notice => "User has been removed successfully"}
    end
  
    private
  
    def safe_params
      params[:user].permit(:first_name, :last_name, :email_address, :password, :password_confirmation)
    end
  
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
shoppe-0.0.15 app/controllers/shoppe/users_controller.rb