Sha256: 4e8684160a974ebc1c2601ae9968ada4105c58de5e920a82670098ab17d89918
Contents?: true
Size: 1.28 KB
Versions: 8
Compression:
Stored size: 1.28 KB
Contents
class AdminUser < ActiveRecord::Base devise :database_authenticatable, :recoverable, :rememberable, :trackable, :validatable, :lockable has_and_belongs_to_many :virtual_domains, :join_table => :users_domains attr_accessible :name, :email, :password, :password_confirmation, :virtual_domain_ids validates :email, :presence => true, :uniqueness => true, :format => { :with => /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\Z/i } #validates :password, # :presence => true, # :unless => 'selfpassword.empty?' before_create :be_super!, :if => 'AdminUser.first.nil?' def be_super! self.super = true end def domains vd = self.super == true ? VirtualDomain.all : self.virtual_domains vd.each do |domain| VirtualUser.drop_domain_from_email_each(domain.virtual_users) end vd end def domain(id) (self.super == true ? VirtualDomain : self.virtual_domains).find(id) end def build_domain(params) domain = self.virtual_domains.build domain[:name] = params[:name] domain end def change_data(params) success = if not params[:password].blank? update_with_password(params) else params.delete(:password) update_without_password(params) end return success end end
Version data entries
8 entries across 8 versions & 1 rubygems