Sha256: c3e40f7a57d67cc44309701d74fa643126e9e8e79d6b2264ca99d0ffbe745bb4

Contents?: true

Size: 662 Bytes

Versions: 6

Compression:

Stored size: 662 Bytes

Contents

class MyAdmin::Permission < ActiveRecord::Base
  self.table_name = "my_admin_permissions"
  
  has_many :group_permissions, :dependent => :destroy
  has_many :groups, :through => :group_permissions
  
  validates_presence_of :model, :name, :application
  validates_uniqueness_of :name, :scope => [:model, :name, :application]
  
  def to_s
    application = MyAdmin::Application.find(self.application)
    application.title + ">" + self.model.constantize.title + " - " + I18n.t("my_admin.permissions.#{self.name}") 
  end
  
  scope :by_user, lambda { |user_id|
    { :joins => {:groups => [:users]}, :conditions => {"my_admin_users.id" => user_id} }
  }
  
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
my_admin-0.0.7 app/model/my_admin/permission.rb
my_admin-0.0.6 app/model/my_admin/permission.rb
my_admin-0.0.5 app/model/my_admin/permission.rb
my_admin-0.0.4 app/model/my_admin/permission.rb
my_admin-0.0.3 app/model/my_admin/permission.rb
my_admin-0.0.2 app/model/my_admin/permission.rb