Module: Authorizable

Included in:
User
Defined in:
app/models/authorizable.rb

Instance Method Summary collapse

Instance Method Details

#is?(role) ⇒ Boolean

Returns:

  • (Boolean)


12
13
14
# File 'app/models/authorizable.rb', line 12

def is?(role)
  roles.include?(role.to_s)
end

#rolesObject



6
7
8
9
10
# File 'app/models/authorizable.rb', line 6

def roles
  Chaltron.roles.reject do |r|
    ((roles_mask || 0) & 2**Chaltron.roles.index(r)).zero?
  end
end

#roles=(roles) ⇒ Object



2
3
4
# File 'app/models/authorizable.rb', line 2

def roles=(roles)
  self.roles_mask = (roles & Chaltron.roles).map { |r| 2**Chaltron.roles.index(r) }.inject(:+)
end