module GlobalRoles::ClassMethods
Protected Instance Methods
setup_global_roles!(options = {})
click to toggle source
# File lib/global_roles.rb, line 10 def setup_global_roles!(options = {}) self::ROLES.freeze include GlobalRoles::Methods if default = options[:default] || 0 after_initialize do self.global_role = default unless global_role? || persisted? end end self::ROLES.each do |r| define_method("global_#{r}?".to_sym) do global_role == r end end self.class_eval %( scope :with_global_role, proc { |r| where(:global_role => #{self}::global_role_id_for(r)) } ) end