Sha256: 84c6b853e2280ab1cf5850f5dc4918613471543b5341bd809379f429feba2b94

Contents?: true

Size: 435 Bytes

Versions: 4

Compression:

Stored size: 435 Bytes

Contents

# Hooks up the aegis gem so users can be given roles and be queried for permissions.
# origin: RM
module User::AuthorizationTrait
  as_trait do

    has_role :default => 'user'
    validates_role

    def self.available_roles
      labeler = lambda { |role| I18n.t("roles.#{role.name}") }
      Permissions.roles.sort_by(&labeler).collect_ordered_hash do |role|
        [role.name, labeler.call(role)]
      end
    end    

  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
serum-rails-0.2.1 spec/test_apps/rails-2-3/app/models/user/authorization_trait.rb
serum-rails-0.2.0 spec/test_apps/rails-2-3/app/models/user/authorization_trait.rb
serum-rails-0.1.1 spec/test_app/app/models/user/authorization_trait.rb
serum-rails-0.1.0 spec/test_app/app/models/user/authorization_trait.rb