mirror of
https://github.com/openSUSE/osem.git
synced 2026-01-25 14:29:51 -05:00
About track requests: Create migration that adds the fields submitter_id, state, and cfp_active to Tracks Add validations and the self_organized? method to the Track model Create a new TracksController outide of the admin namespace Create the relevant views for index, show, new and edit Modify the admin views for tracks to include extra info for self-organized tracks About track organizers: Create the role when a self-organized track is created Define track organizer abilities Modify the roles views and controller to handle the new role The route for Roles#edit needs to have higher priority than the nested routes for track roles, otherwise, the word edit in the url is matched as a track with short_name edit
25 lines
801 B
Ruby
25 lines
801 B
Ruby
module Admin
|
|
class BaseController < ApplicationController
|
|
before_filter :verify_user_admin
|
|
|
|
private
|
|
|
|
def current_ability
|
|
@current_ability ||= AdminAbility.new(current_user)
|
|
end
|
|
|
|
def verify_user_admin
|
|
if (current_user.nil?)
|
|
redirect_to sign_in_path
|
|
return false
|
|
end
|
|
unless (current_user.has_role? :organizer, :any) || (current_user.has_role? :cfp, :any) ||
|
|
(current_user.has_role? :info_desk, :any) || (current_user.has_role? :organization_admin, :any) ||
|
|
(current_user.has_role? :volunteers_coordinator, :any) ||
|
|
(current_user.has_role? :track_organizer, :any) || current_user.is_admin
|
|
raise CanCan::AccessDenied.new('You are not authorized to access this page.')
|
|
end
|
|
end
|
|
end
|
|
end
|