scripts/sip/code_impression.py
2013-08-14 01:05:24 +02:00

29 lines
765 B
Python
Executable file

#!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys
sys.path.append('/usr/scripts/')
import lc_ldap.shortcuts
from lc_ldap.attributs import imprimeur, nounou
from impression import digicode
conn = lc_ldap.shortcuts.lc_ldap_readonly()
try:
aid=int(sys.argv[1][1:])
adh = conn.search(u"aid=%s" % aid)[0]
login = str(adh.get('uid',['NONE'])[0])
codes = digicode.get_codes(login)
if codes:
sys.stdout.write(codes[0])
else:
droits = [str(d) for d in adh.get('droits', [])]
if imprimeur in droits or nounou in droits:
code = digicode.gen_code(login)
sys.stdout.write(str(code))
else:
sys.stdout.write('NONE')
except ValueError, IndexError:
sys.stdout.write('NONE')