Class: Workarea::Api::Admin::UsersController

Inherits:
ApplicationController show all
Defined in:
app/controllers/workarea/api/admin/users_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#current_user, #sort_direction, #sort_field

Instance Method Details

#bulkObject



275
276
277
278
279
280
281
282
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 275

def bulk
  @bulk = Api::Admin::BulkUpsert.create!(
    klass: User,
    data: params[:users].map(&:to_h)
  )

  head :no_content
end

#createObject



107
108
109
110
111
112
113
114
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 107

def create
  @user = User.create!(params[:user])
  respond_with(
    { user: api_attributes_for(@user) },
    { status: :created,
    location: user_path(@user) }
  )
end

#destroyObject



242
243
244
245
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 242

def destroy
  @user.destroy
  head :no_content
end

#indexObject



98
99
100
101
102
103
104
105
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 98

def index
  @users = User
              .all
              .order_by(sort_field => sort_direction)
              .page(params[:page])

  respond_with users: @users.to_a.map { |u| api_attributes_for(u) }
end

#showObject



233
234
235
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 233

def show
  respond_with user: api_attributes_for(@user)
end

#updateObject



237
238
239
240
# File 'app/controllers/workarea/api/admin/users_controller.rb', line 237

def update
  @user.update_attributes!(params[:user])
  respond_with user: api_attributes_for(@user)
end