Mise en place du parsage des adresses mail, et on utilise aussi config pour la plage

des ip filaires. À venir, la rationalisation de mitdools pour avoir un équivalent
de ip_of_mid dans l'autre sens (genre, si une nounou veut fixer l'ip d'une machine)
This commit is contained in:
Pierre-Elliott Bécue 2013-01-21 02:19:26 +01:00
parent ffb1b94144
commit c805146ab5
2 changed files with 24 additions and 23 deletions

View file

@ -48,6 +48,7 @@ sys.path.append('/usr/scripts/gestion')
import config, crans_utils
from attributs import attrify, blacklist
from ldap_locks import CransLock
import midtools
uri = 'ldap://ldap.adm.crans.org/'
base_dn = 'ou=data,dc=crans,dc=org'
@ -230,15 +231,11 @@ class lc_ldap(ldap.ldapobject.LDAPObject):
elif realm in ["fil", "fil-v6", "gratuit", "personnel-ens"]:
uldif['objectClass'] = [u'machineFixe']
assert isinstance(owner, adherent) or isinstance(owner, club)
# XXX - Vérifier les droits
else: raise ValueError("Realm inconnu: %r" % realm)
# On récupère la plage des mids
if realm == 'fil':
plage = xrange(256, 2047)
else:
plage = xrange( *(config.mid[realm]))
plage = xrange( *(config.mid[realm]))
# On récupère le premier id libre dans la plages s'il n'est pas
# déjà précisé dans le ldiff
mid = uldif.setdefault('mid', [ unicode(self._find_id('mid', plage)) ])
@ -673,6 +670,7 @@ class adherent(proprio):
if u'posixAccount' in self.attrs['objectClass']:
return self.attrs['uid'][0]
elif login:
fn = crans_utils.strip_accents(unicode(self.attrs['prenom'][0]).capitalize())
ln = crans_utils.strip_accents(unicode(self.attrs['nom'][0]).capitalize())