Class: Admin::UsersController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/admin/users_controller.rb

Overview

Copyright © 2008-2013 Michael Dvorkin and contributors.

Fat Free CRM is freely distributable under the terms of MIT license. See MIT-LICENSE file or www.opensource.org/licenses/mit-license.php


Instance Method Summary collapse

Instance Method Details

#confirmObject

GET /admin/users/1/confirm AJAX




72
73
74
# File 'app/controllers/admin/users_controller.rb', line 72

def confirm
  respond_with(@user)
end

#createObject

POST /admin/users POST /admin/users.xml AJAX




46
47
48
49
50
51
52
53
54
# File 'app/controllers/admin/users_controller.rb', line 46

def create
  params[:user][:password_confirmation] = nil if params[:user][:password_confirmation].blank?
  admin = params[:user].delete(:admin)
  @user = User.new(params[:user])
  @user.admin = (admin == "1") unless admin.nil?
  @user.save_without_session_maintenance

  respond_with(@user)
end

#destroyObject

DELETE /admin/users/1 DELETE /admin/users/1.xml AJAX




79
80
81
82
83
84
85
# File 'app/controllers/admin/users_controller.rb', line 79

def destroy
  unless @user.destroy
    flash[:warning] = t(:msg_cant_delete_user, @user.full_name)
  end

  respond_with(@user)
end

#editObject

GET /admin/users/1/edit AJAX




35
36
37
38
39
40
41
# File 'app/controllers/admin/users_controller.rb', line 35

def edit
  if params[:previous].to_s =~ /(\d+)\z/
    @previous = User.find_by_id($1) || $1.to_i
  end

  respond_with(@user)
end

#indexObject

GET /admin/users GET /admin/users.xml HTML




14
15
16
17
# File 'app/controllers/admin/users_controller.rb', line 14

def index
  @users = get_users(:page => params[:page])
  respond_with(@users)
end

#newObject

GET /admin/users/new GET /admin/users/new.xml AJAX




29
30
31
# File 'app/controllers/admin/users_controller.rb', line 29

def new
  respond_with(@user)
end

#reactivateObject

PUT /admin/users/1/reactivate PUT /admin/users/1/reactivate.xml AJAX




103
104
105
106
107
# File 'app/controllers/admin/users_controller.rb', line 103

def reactivate
  @user.update_attribute(:suspended_at, nil)

  respond_with(@user)
end

#showObject

GET /admin/users/1 GET /admin/users/1.xml




22
23
24
# File 'app/controllers/admin/users_controller.rb', line 22

def show
  respond_with(@user)
end

#suspendObject

PUT /admin/users/1/suspend PUT /admin/users/1/suspend.xml AJAX




94
95
96
97
98
# File 'app/controllers/admin/users_controller.rb', line 94

def suspend
  @user.update_attribute(:suspended_at, Time.now) if @user != current_user

  respond_with(@user)
end

#updateObject

PUT /admin/users/1 PUT /admin/users/1.xml AJAX




59
60
61
62
63
64
65
66
67
68
# File 'app/controllers/admin/users_controller.rb', line 59

def update
  params[:user][:password_confirmation] = nil if params[:user][:password_confirmation].blank?
  admin = params[:user].delete(:admin)
  @user = User.find(params[:id])
  @user.attributes = params[:user]
  @user.admin = (admin == "1") unless admin.nil?
  @user.save_without_session_maintenance

  respond_with(@user)
end