Class: Admin::UsersController
- Inherits:
-
AdminController
- Object
- AdminController
- Admin::UsersController
- Includes:
- Authentication, CrudEntities, ProcessedForms, ToggleableEntity
- Defined in:
- app/controllers/admin/users_controller.rb
Overview
Administrative part for handling users
Instance Method Summary collapse
-
#add_role ⇒ Object
put /admin/users/:id/roles/:role_id.
-
#authenticate ⇒ Object
post /admin/users/:id/authenticate.
-
#create ⇒ Object
post /admin/users.
-
#remove_role ⇒ Object
delete /admin/users/:id/roles/:role_id.
-
#roles ⇒ Object
get /admin/users/:id/roles.
-
#update ⇒ Object
patch /admin/users/:id.
Methods included from ToggleableEntity
Methods included from CrudEntities
#check, #destroy, #edit, #index, #new, #search, #show
Methods included from Authentication
#cookie_data, #create_token_for_user, #deactivate_token, #pop_token, #redirect_authenticated_user
Instance Method Details
#add_role ⇒ Object
put /admin/users/:id/roles/:role_id
56 57 58 59 60 61 62 63 |
# File 'app/controllers/admin/users_controller.rb', line 56 def add_role if current_user&.super_user? role = Role.find_by(id: params[:role_id]) @entity.add_role(role) end head :no_content end |
#authenticate ⇒ Object
post /admin/users/:id/authenticate
32 33 34 35 36 37 38 39 40 41 42 43 44 |
# File 'app/controllers/admin/users_controller.rb', line 32 def authenticate if component_handler.permit?('log_in', @entity) && !@entity.super_user? ['pt'] = { value: ['token'], expires: 1.year.from_now, domain: :all, httponly: true } create_token_for_user(@entity) end redirect_to my_path end |
#create ⇒ Object
post /admin/users
13 14 15 16 17 18 19 20 |
# File 'app/controllers/admin/users_controller.rb', line 13 def create @entity = component_handler.create_user(entity_parameters, profile_parameters) if @entity.persisted? form_processed_ok(path_after_save) else form_processed_with_error(view_for_new) end end |
#remove_role ⇒ Object
delete /admin/users/:id/roles/:role_id
66 67 68 69 70 71 72 73 |
# File 'app/controllers/admin/users_controller.rb', line 66 def remove_role if current_user&.super_user? role = Role.find_by(id: params[:role_id]) @entity.remove_role(role) end head :no_content end |
#roles ⇒ Object
get /admin/users/:id/roles
47 48 49 50 51 52 53 |
# File 'app/controllers/admin/users_controller.rb', line 47 def roles if current_user&.super_user? @components = BiovisionComponent.list_for_administration else handle_http_401 end end |
#update ⇒ Object
patch /admin/users/:id
23 24 25 26 27 28 29 |
# File 'app/controllers/admin/users_controller.rb', line 23 def update if component_handler.update_user(@entity, entity_parameters, profile_parameters) form_processed_ok(path_after_save) else form_processed_with_error(view_for_edit) end end |