+require 'common/domain'
require 'common/plugin'
+require 'common/user'
require 'pg'
module PostfixadminPlugin
end
- def describe_user(user)
- # There's no other unique identifier in PostfixAdmin
- return user
- end
-
-
- def describe_domain(domain)
- # There's no other unique identifier in PostfixAdmin
- return domain
- end
-
-
def list_domains()
domains = []
raise DatabaseError.new(e)
end
- return domains
+ return domains.map{ |d| Domain.new(d) }
end
- def domain_exists(domain)
- # Does the given domain exist in Postfixadmin? We use a naive
- # implementation here based on list_domains(). This isn't in our
- # superclass because not all plugins have a concept of domains.
- domains = list_domains()
- return domains.include?(domain)
- end
-
def list_users()
users = []
raise DatabaseError.new(e)
end
- return users
+ return users.map{ |u| User.new(u) }
end
sql_query = 'SELECT username FROM mailbox WHERE domain IN $1;'
- connection.query(sql_query, [domains]) do |result|
+ connection.query(sql_query, domains.map{|d| d.to_s()}) do |result|
usernames = result.field_values('username')
end
raise DatabaseError.new(e)
end
- return usernames
+ return usernames.map{ |u| User.new(u) }
end