Sha256: 9117349d87241480f2fd1ac0afd2472f250e5d836f2538846f308d6467d7c4b0
Contents?: true
Size: 1.17 KB
Versions: 19
Compression:
Stored size: 1.17 KB
Contents
class Admin::PrivilegeGroupsController < AdminController before_action :set_entity, except: [:index] before_action :set_privilege, only: [:add_privilege, :remove_privilege] # get /admin/privilege_groups def index @collection = PrivilegeGroup.page_for_administration end # get /admin/privilege_groups/:id def show @collection = @entity.privileges.ordered_by_name end # put /admin/privilege_groups/:id/privileges/:privilege_id def add_privilege @entity.add_privilege(@privilege) render json: { data: { privilege_ids: @entity.privilege_ids } } end # delete /admin/privilege_groups/:id/privileges/:privilege_id def remove_privilege @entity.remove_privilege(@privilege) render json: { data: { privilege_ids: @entity.privilege_ids } } end protected def restrict_access require_privilege :administrator end def set_entity @entity = PrivilegeGroup.find_by(id: params[:id]) if @entity.nil? handle_http_404('Cannot find privilege group') end end def set_privilege @privilege = Privilege.find_by(id: params[:privilege_id]) if @entity.nil? handle_http_404('Cannot find privilege') end end end
Version data entries
19 entries across 19 versions & 1 rubygems