Class: LesliGuard::RolesController
- Inherits:
-
ApplicationController
- Object
- Lesli::ApplicationLesliController
- ApplicationController
- LesliGuard::RolesController
- Defined in:
- app/controllers/lesli_guard/roles_controller.rb
Instance Method Summary collapse
-
#create ⇒ Json
Json that contains wheter the creation of the role was successful or not.
-
#destroy ⇒ Json
Json that contains wheter the role was successfully deleted or not.
-
#edit ⇒ HTML
HTML view for editing the role.
- #index ⇒ Object
-
#new ⇒ HTML
HTML view for creating a new role.
- #options ⇒ JSON
- #show ⇒ Object
-
#update ⇒ Json
Json that contains wheter the role was successfully updated or not.
Instance Method Details
#create ⇒ Json
Returns Json that contains wheter the creation of the role was successful or not. If it is not successful, it returns an error message.
82 83 84 85 86 87 88 89 90 91 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 82 def create role = RoleService.new(current_user).create(role_params) if role.successful? respond_with_successful(role.result) else respond_with_error(role.errors_as_sentence) end end |
#destroy ⇒ Json
Returns Json that contains wheter the role was successfully deleted or not. If it it not successful, it returns an error message.
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 120 def destroy return respond_with_not_found unless @role.found? # Validation: check if the role has still associated users if @role.has_users? return respond_with_error(I18n.t("core.roles.messages_danger_users_assigned_validation")) end @role.destroy # Check if the deletion went ok unless @role.successful? return respond_with_error(@role.errors) end respond_with_successful end |
#edit ⇒ HTML
Returns HTML view for editing the role.
68 69 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 68 def edit end |
#index ⇒ Object
37 38 39 40 41 42 43 44 45 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 37 def index respond_to do |format| format.html { } format.json { respond_with_successful(RoleService.new(current_user, query).index) #respond_with_pagination(RoleService.new(current_user, query).index) } end end |
#new ⇒ HTML
Returns HTML view for creating a new role.
59 60 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 59 def new end |
#options ⇒ JSON
140 141 142 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 140 def respond_with_successful(RoleService.new(current_user).) end |
#show ⇒ Object
47 48 49 50 51 52 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 47 def show respond_to do |format| format.html { } format.json { respond_with_successful(@role.show) } end end |
#update ⇒ Json
Returns Json that contains wheter the role was successfully updated or not. If it it not successful, it returns an error message.
97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
# File 'app/controllers/lesli_guard/roles_controller.rb', line 97 def update # Respond with 404 if role was not found return respond_with_not_found unless @role.found? # check if current user can work with role unless current_user.can_work_with_role?(@role.resource) return respond_with_error(I18n.t("core.roles.messages_danger_updating_role_object_level_permission_too_high")) end # Update role information @role.update(role_params) # check if the update went OK unless @role.successful? respond_with_error(@role.errors) end respond_with_successful(@role) end |