class BsmOa::Authorization

Public Instance Methods

permissions=(vals) click to toggle source

@param [Array|String] permissions

Calls superclass method
# File lib/bsm_oa/authorization.rb, line 29
def permissions=(vals)
  super Array.wrap(vals).map {|s| s.to_s.split(/[\s,]+/) }.flatten
end
toggle_permission!(name) click to toggle source

@param [String] name permission name

# File lib/bsm_oa/authorization.rb, line 24
def toggle_permission!(name)
  update permissions: (permissions.include?(name) ? permissions - [name] : permissions + [name])
end

Protected Instance Methods

normalize_permissions!() click to toggle source
# File lib/bsm_oa/authorization.rb, line 35
def normalize_permissions!
  self.permissions ||= []
  self.permissions = permissions.reject(&:blank?).map(&:strip).map(&:downcase).uniq
  self.permissions &= application.permissions if application
end