class Admin::UsersController
def announce_cannot_delete_self
def announce_cannot_delete_self flash[:error] = t('users_controller.cannot_delete_self') end
def announce_cannot_remove_self_from_admin_role
def announce_cannot_remove_self_from_admin_role flash[:error] = 'You cannot remove yourself from the admin role.' end
def create
def create user = User.new(user_params) if user.save flash[:notice] = 'User was created.' redirect_to admin_users_path else flash[:error] = 'There was an error saving the user. Please try again.' render :new end end
def ensure_deletable
def ensure_deletable if current_user.id.to_s == params[:id].to_s announce_cannot_delete_self redirect_to admin_users_path end end
def show
def show redirect_to edit_admin_user_path(params[:id]) end
def update
def update user_params = params[model_symbol].permit! if user_params && user_params['admin'] == false && model == current_user user_params.delete('admin') announce_cannot_remove_self_from_admin_role end model.skip_password_validation = true unless user_params[:password_confirmation].present? if model.update(user_params) response_for :update else flash[:error] = 'There was an error saving the user. Please try again.' render :edit end end
def user_params
def user_params params.require(:user).permit(:first_name, :last_name, :admin, :designer, :password, :password_confirmation, :email, :site_id, :notes) end