Sha256: 8b310bdfba50a003de5b7178fffd8a1f5f29302df179a95466edd9087a123a12

Contents?: true

Size: 627 Bytes

Versions: 1

Compression:

Stored size: 627 Bytes

Contents

module Pbw
  class Role
    include ::Mongoid::Document
    field :name, type: String
    attr_accessible :name
    has_many :users

    validates :name, presence: true, uniqueness: true

    has_and_belongs_to_many :permissions

    def set_permission(subject_class, action)
    	p = Permission.where(subject_class: subject_class, action: action)
    	p = Permission.create(subject_class: subject_class, action: action) unless p
    	self.permissions << p
    end

    def set_permissions(permissions)
    	permissions.each do |id|
    		permission = Permission.find(id)
    		self.permissions << p
    	end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pbw-0.0.2 app/models/pbw/role.rb