Sha256: 21b77bfacf39d8e76a93fde87ef242170c09f9381dac7d4d5f9982ad4ef163f7

Contents?: true

Size: 1.06 KB

Versions: 2

Compression:

Stored size: 1.06 KB

Contents

class Admin::UsersController < Admin::AdminController
  MODEL = self.controller_name.singularize.downcase.to_sym
  
  def index
    @users = User.all
  end
  
  def show
    @user = User.find(params[:id])
  end
  
  def new
    @user = User.new
  end
  
  def create
    @user = User.new(params[MODEL])
    @user.role = params[MODEL][:role]
    if @user.save
      flash[:notice] = "Created #{@user.name}"
      redirect_to admin_user_url(@user)
    else
      render :action => 'new'
    end
  end
  
  def edit
    @user = User.find(params[:id])
  end
  
  def update
    @user = User.find(params[:id])
    @user.role = params[MODEL][:role]
    if @user.update_attributes(params[MODEL])
      flash[:notice] = "Updated #{@user.name}"
      redirect_to admin_user_url(@user)
    else
      render :action => 'edit'
    end
  end
  
  def destroy
    @user = User.find(params[:id])
    if @user != current_user
      @user.destroy
      flash[:notice] = "Deleted #{@user.name}"
    else
      flash[:error] = "Cannot delete yourself"
    end
    redirect_to admin_users_url
  end
    
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
headstart-0.4.1 generators/headstart_admin/templates/app/controllers/admin/users_controller.rb
headstart-0.4.0 generators/headstart_admin/templates/app/controllers/admin/users_controller.rb