Add Admin Administrator route, controller and manage ability for admin users
This commit is contained in:
32
app/controllers/admin/administrators_controller.rb
Normal file
32
app/controllers/admin/administrators_controller.rb
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
class Admin::AdministratorsController < Admin::BaseController
|
||||||
|
load_and_authorize_resource
|
||||||
|
|
||||||
|
def index
|
||||||
|
@administrators = @administrators.page(params[:page])
|
||||||
|
end
|
||||||
|
|
||||||
|
def search
|
||||||
|
@user = User.find_by(email: params[:email])
|
||||||
|
|
||||||
|
respond_to do |format|
|
||||||
|
if @user
|
||||||
|
@administrator = Administrator.find_or_initialize_by(user: @user)
|
||||||
|
format.js
|
||||||
|
else
|
||||||
|
format.js { render "user_not_found" }
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def create
|
||||||
|
@administrator.user_id = params[:user_id]
|
||||||
|
@administrator.save
|
||||||
|
|
||||||
|
redirect_to admin_administrators_path
|
||||||
|
end
|
||||||
|
|
||||||
|
def destroy
|
||||||
|
@administrator.destroy
|
||||||
|
redirect_to admin_administrators_path
|
||||||
|
end
|
||||||
|
end
|
||||||
@@ -29,7 +29,7 @@ module AdminHelper
|
|||||||
end
|
end
|
||||||
|
|
||||||
def menu_profiles?
|
def menu_profiles?
|
||||||
["organizations", "officials", "moderators", "valuators", "managers"].include? controller_name
|
["administrators", "organizations", "officials", "moderators", "valuators", "managers"].include? controller_name
|
||||||
end
|
end
|
||||||
|
|
||||||
def menu_banners?
|
def menu_banners?
|
||||||
|
|||||||
@@ -34,6 +34,7 @@ module Abilities
|
|||||||
|
|
||||||
can :comment_as_administrator, [Debate, Comment, Proposal, Poll::Question, Budget::Investment]
|
can :comment_as_administrator, [Debate, Comment, Proposal, Poll::Question, Budget::Investment]
|
||||||
|
|
||||||
|
can [:search, :create, :index, :destroy], ::Administrator
|
||||||
can [:search, :create, :index, :destroy], ::Moderator
|
can [:search, :create, :index, :destroy], ::Moderator
|
||||||
can [:search, :create, :index, :summary], ::Valuator
|
can [:search, :create, :index, :summary], ::Valuator
|
||||||
can [:search, :create, :index, :destroy], ::Manager
|
can [:search, :create, :index, :destroy], ::Manager
|
||||||
|
|||||||
@@ -207,6 +207,10 @@ Rails.application.routes.draw do
|
|||||||
get :search, on: :collection
|
get :search, on: :collection
|
||||||
end
|
end
|
||||||
|
|
||||||
|
resources :administrators, only: [:index, :create, :destroy] do
|
||||||
|
get :search, on: :collection
|
||||||
|
end
|
||||||
|
|
||||||
scope module: :poll do
|
scope module: :poll do
|
||||||
resources :polls do
|
resources :polls do
|
||||||
get :search_questions, on: :member
|
get :search_questions, on: :member
|
||||||
|
|||||||
Reference in New Issue
Block a user