module Comunit::Base::PrivilegeMethods
Public Instance Methods
current_region()
click to toggle source
# File lib/comunit/base/privilege_methods.rb, line 11 def current_region @current_region ||= set_current_region end
current_user_has_privilege?(privilege_name, region_ids = [])
click to toggle source
@param [Symbol] privilege_name @param [Array] region_ids
# File lib/comunit/base/privilege_methods.rb, line 17 def current_user_has_privilege?(privilege_name, region_ids = []) ::UserPrivilege.user_has_privilege?(current_user, privilege_name, region_ids) end
current_user_in_group?(group_name)
click to toggle source
@param [Symbol] group_name
# File lib/comunit/base/privilege_methods.rb, line 22 def current_user_in_group?(group_name) ::UserPrivilege.user_in_group?(current_user, group_name) end
Protected Instance Methods
require_privilege(privilege_name)
click to toggle source
@param [Symbol] privilege_name
# File lib/comunit/base/privilege_methods.rb, line 29 def require_privilege(privilege_name) return if current_user_has_privilege?(privilege_name, current_region.subbranch_ids) handle_http_401("Current user has no privilege #{privilege_name}") end
require_privilege_group(group_name)
click to toggle source
@param [Symbol] group_name
# File lib/comunit/base/privilege_methods.rb, line 35 def require_privilege_group(group_name) return if current_user_in_group?(group_name) handle_http_401("Current user is not in group #{group_name}") end
set_current_region()
click to toggle source
# File lib/comunit/base/privilege_methods.rb, line 40 def set_current_region region_slug = param_from_request(:region_slug) if region_slug.blank? region_slug = request.subdomains.first end if region_slug.blank? @current_region = CentralRegion.new else @current_region = Region.find_by(long_slug: region_slug) || CentralRegion.new end end