Class: PostfixAdmin::Admin

Inherits:
Object
  • Object
show all
Includes:
DataMapper::Resource
Defined in:
lib/postfix_admin/models.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.exist?(username) ⇒ Boolean

Returns:

  • (Boolean)


62
63
64
# File 'lib/postfix_admin/models.rb', line 62

def self.exist?(username)
  !!Admin.find(username)
end

.find(username) ⇒ Object



58
59
60
# File 'lib/postfix_admin/models.rb', line 58

def self.find(username)
  Admin.first(:username => username)
end

Instance Method Details

#active_strObject



28
29
30
# File 'lib/postfix_admin/models.rb', line 28

def active_str
  PostfixAdmin.flag_str(active)
end

#clear_domainsObject



53
54
55
56
# File 'lib/postfix_admin/models.rb', line 53

def clear_domains
  domains.clear
  save or raise "Could save Admin"
end

#has_domain?(domain_name) ⇒ Boolean

Returns:

  • (Boolean)


32
33
34
35
36
37
38
# File 'lib/postfix_admin/models.rb', line 32

def has_domain?(domain_name)
  if super_admin?
    Domain.exist?(domain_name)
  else
    exist_domain?(domain_name)
  end
end

#super_admin=(value) ⇒ Object



40
41
42
43
44
45
46
47
# File 'lib/postfix_admin/models.rb', line 40

def super_admin=(value)
  if value
    domains << Domain.find('ALL')
    save or raise "Could not save ALL domain for Admin"
  else
    domain_admins(:domain_name => 'ALL').destroy or raise "Could not destroy DoaminAdmin for Admin"
  end
end

#super_admin?Boolean

Returns:

  • (Boolean)


49
50
51
# File 'lib/postfix_admin/models.rb', line 49

def super_admin?
  exist_domain?('ALL')
end