sr / beadmin

Python scripts hacked together to manage bearnaise.net

This URL has Read+Write access

Jordan Bracco (author)
Tue Dec 23 12:37:28 -0800 2008
Simon Rozet (committer)
Tue Dec 23 12:52:28 -0800 2008
beadmin / domains.py
100755 48 lines (37 sloc) 1.043 kb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env python
#-*- coding: utf8 -*-
 
#from dialog import *
import database as db
import dbconf
import os
 
if os.environ.has_key('SUDO_USER'):
user = os.environ['SUDO_USER']
else:
user = 'root'
 
domains = db.query("""SELECT domains.id, domains.name, users.login
FROM domains
LEFT JOIN websites ON websites.id_domains=domains.id
LEFT JOIN users ON websites.id_users=users.id""")
 
#print 'total %s' % len(domains)
 
for domain in domains:
if domain.login == user:
login = 'vous'
else:
login = domain.login
 
mailboxes = len(db.select('mailboxes', where='domain_id = $domain.id', vars=locals()))
mailaliases = len(db.select('mailaliases', where='domain_id = $domain.id', vars=locals()))
 
if login or mailboxes or mailaliases:
print '%s,' % domain.name,
else:
print domain.name,
 
if login:
print 'hébergé par %s' % login,
if mailboxes or mailaliases:
print 'avec',
 
if mailboxes:
print '%s boite(s)' % mailboxes,
if mailaliases:
print 'et',
if mailaliases:
print '%s alias' % mailaliases,
 
print