Killing trailing spaces
This commit is contained in:
parent
d2aebebd2a
commit
395cf90fbc
2 changed files with 18 additions and 18 deletions
|
@ -209,7 +209,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
||||||
if not machines.has_key(parent_dn):
|
if not machines.has_key(parent_dn):
|
||||||
machines[parent_dn] = []
|
machines[parent_dn] = []
|
||||||
machines[parent_dn].append(m)
|
machines[parent_dn].append(m)
|
||||||
elif (dn.startswith('aid=') or dn.startswith('cid=') or dn == variables.base_dn) and not parent.has_key(dn):
|
elif (dn.startswith('aid=') or dn.startswith('cid=') or dn == variables.base_dn) and not parent.has_key(dn):
|
||||||
parent[dn] = objets.new_cransldapobject(self, dn, mode, uldif=ldif_to_uldif(attrs))
|
parent[dn] = objets.new_cransldapobject(self, dn, mode, uldif=ldif_to_uldif(attrs))
|
||||||
allmachines = []
|
allmachines = []
|
||||||
for dn, mlist in machines.iteritems(): # on associe propriétaires et machines
|
for dn, mlist in machines.iteritems(): # on associe propriétaires et machines
|
||||||
|
@ -269,7 +269,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
||||||
# On récupère le premier id libre dans la plages s'il n'est pas
|
# On récupère le premier id libre dans la plages s'il n'est pas
|
||||||
# déjà précisé dans le ldif
|
# déjà précisé dans le ldif
|
||||||
rid = uldif.setdefault('rid', [unicode(self._find_id('rid', realm))])
|
rid = uldif.setdefault('rid', [unicode(self._find_id('rid', realm))])
|
||||||
|
|
||||||
# La machine peut-elle avoir une ipv4 ?
|
# La machine peut-elle avoir une ipv4 ?
|
||||||
if 'v6' not in realm:
|
if 'v6' not in realm:
|
||||||
uldif['ipHostNumber'] = [ unicode(crans_utils.ip4_of_rid(int(rid[0]))) ]
|
uldif['ipHostNumber'] = [ unicode(crans_utils.ip4_of_rid(int(rid[0]))) ]
|
||||||
|
@ -346,7 +346,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
||||||
res = self.search_s(variables.base_dn, ldap.SCOPE_SUBTREE, '%s=*' % attr, attrlist = [attr])
|
res = self.search_s(variables.base_dn, ldap.SCOPE_SUBTREE, '%s=*' % attr, attrlist = [attr])
|
||||||
nonfree = [ int(r[1].get(attr)[0]) for r in res if r[1].get(attr) ]
|
nonfree = [ int(r[1].get(attr)[0]) for r in res if r[1].get(attr) ]
|
||||||
nonfree.sort()
|
nonfree.sort()
|
||||||
|
|
||||||
plage = None
|
plage = None
|
||||||
# On récupère la plage des mids
|
# On récupère la plage des mids
|
||||||
if realm != None:
|
if realm != None:
|
||||||
|
@ -389,7 +389,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
||||||
Teste le rapport entre le dn fourni et self
|
Teste le rapport entre le dn fourni et self
|
||||||
Retourne une liste qui s'ajoutera à la liste des droits
|
Retourne une liste qui s'ajoutera à la liste des droits
|
||||||
"""
|
"""
|
||||||
|
|
||||||
if objdn.endswith(self.dn) and objdn != self.dn:
|
if objdn.endswith(self.dn) and objdn != self.dn:
|
||||||
return [attributs.parent]
|
return [attributs.parent]
|
||||||
|
|
||||||
|
|
28
objets.py
28
objets.py
|
@ -131,13 +131,13 @@ class CransLdapObject(object):
|
||||||
if not res:
|
if not res:
|
||||||
raise ValueError ('objet inexistant: %s' % dn)
|
raise ValueError ('objet inexistant: %s' % dn)
|
||||||
self.dn, ldif = res[0]
|
self.dn, ldif = res[0]
|
||||||
|
|
||||||
# L'objet sortant de la base ldap, on ne fait pas de vérifications sur
|
# L'objet sortant de la base ldap, on ne fait pas de vérifications sur
|
||||||
# l'état des données.
|
# l'état des données.
|
||||||
uldif = lc_ldap.ldif_to_uldif(ldif)
|
uldif = lc_ldap.ldif_to_uldif(ldif)
|
||||||
self.attrs = attributs.AttrsDict(self.conn, uldif, Parent=self)
|
self.attrs = attributs.AttrsDict(self.conn, uldif, Parent=self)
|
||||||
self._modifs = attributs.AttrsDict(self.conn, uldif, Parent=self)
|
self._modifs = attributs.AttrsDict(self.conn, uldif, Parent=self)
|
||||||
|
|
||||||
if mode in ['w', 'rw']:
|
if mode in ['w', 'rw']:
|
||||||
if not self.may_be(variables.modified, self.conn.droits + self.conn._check_parent(dn) + self.conn._check_self(dn)):
|
if not self.may_be(variables.modified, self.conn.droits + self.conn._check_parent(dn) + self.conn._check_self(dn)):
|
||||||
raise EnvironmentError("Vous n'avez pas le droit de modifier cet objet.")
|
raise EnvironmentError("Vous n'avez pas le droit de modifier cet objet.")
|
||||||
|
@ -168,7 +168,7 @@ class CransLdapObject(object):
|
||||||
### mais on devrait tout recoder pour utiliser l'historique LDAP"""
|
### mais on devrait tout recoder pour utiliser l'historique LDAP"""
|
||||||
assert isinstance(login, unicode)
|
assert isinstance(login, unicode)
|
||||||
assert isinstance(chain, unicode)
|
assert isinstance(chain, unicode)
|
||||||
|
|
||||||
new_line = u"%s, %s : %s" % (time.strftime(attributs.historique.FORMAT), login, chain)
|
new_line = u"%s, %s : %s" % (time.strftime(attributs.historique.FORMAT), login, chain)
|
||||||
# Attention, le __setitem__ est surchargé, mais pas .append sur l'historique
|
# Attention, le __setitem__ est surchargé, mais pas .append sur l'historique
|
||||||
self["historique"] = self.get("historique", []) + [new_line]
|
self["historique"] = self.get("historique", []) + [new_line]
|
||||||
|
@ -244,7 +244,7 @@ class CransLdapObject(object):
|
||||||
# Services à relancer
|
# Services à relancer
|
||||||
services.services_to_restart(self.conn, {}, self._modifs, created_object=[self])
|
services.services_to_restart(self.conn, {}, self._modifs, created_object=[self])
|
||||||
self._post_creation()
|
self._post_creation()
|
||||||
|
|
||||||
# Vérifications après insertion.
|
# Vérifications après insertion.
|
||||||
self.check_modifs()
|
self.check_modifs()
|
||||||
|
|
||||||
|
@ -495,9 +495,9 @@ class CransLdapObject(object):
|
||||||
class ObjectFactory(object):
|
class ObjectFactory(object):
|
||||||
"""Utilisée pour enregistrer toutes les classes servant à instancier un objet LDAP.
|
"""Utilisée pour enregistrer toutes les classes servant à instancier un objet LDAP.
|
||||||
Elle sert à les récupérer à partir de leur nom LDAP.
|
Elle sert à les récupérer à partir de leur nom LDAP.
|
||||||
|
|
||||||
Cette classe n'est jamais instanciée.
|
Cette classe n'est jamais instanciée.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
_classes = {}
|
_classes = {}
|
||||||
|
|
||||||
|
@ -539,7 +539,7 @@ class proprio(CransLdapObject):
|
||||||
super(proprio, self).__init__(conn, dn, mode, ldif)
|
super(proprio, self).__init__(conn, dn, mode, ldif)
|
||||||
self._machines = None
|
self._machines = None
|
||||||
self._factures = None
|
self._factures = None
|
||||||
|
|
||||||
def sursis_carte(self):
|
def sursis_carte(self):
|
||||||
for h in self['historique'][::-1]:
|
for h in self['historique'][::-1]:
|
||||||
x = re.match("(.*),.* : .*(paiement\+%s|inscription).*" % (config.ann_scol,), h.value)
|
x = re.match("(.*),.* : .*(paiement\+%s|inscription).*" % (config.ann_scol,), h.value)
|
||||||
|
@ -584,7 +584,7 @@ class proprio(CransLdapObject):
|
||||||
bool_carte = True
|
bool_carte = True
|
||||||
return bool_carte
|
return bool_carte
|
||||||
return True
|
return True
|
||||||
|
|
||||||
# XXX - To Delete
|
# XXX - To Delete
|
||||||
def update_solde(self, diff, comment=u"", login=None):
|
def update_solde(self, diff, comment=u"", login=None):
|
||||||
"""Modifie le solde du proprio. diff peut être négatif ou positif."""
|
"""Modifie le solde du proprio. diff peut être négatif ou positif."""
|
||||||
|
@ -592,14 +592,14 @@ class proprio(CransLdapObject):
|
||||||
login = self.conn.current_login
|
login = self.conn.current_login
|
||||||
assert isinstance(diff, int) or isinstance(diff, float)
|
assert isinstance(diff, int) or isinstance(diff, float)
|
||||||
assert isinstance(comment, unicode)
|
assert isinstance(comment, unicode)
|
||||||
|
|
||||||
solde = float(self["solde"][0].value)
|
solde = float(self["solde"][0].value)
|
||||||
new_solde = solde + diff
|
new_solde = solde + diff
|
||||||
|
|
||||||
# On vérifie qu'on ne dépasse par le découvert autorisé
|
# On vérifie qu'on ne dépasse par le découvert autorisé
|
||||||
if new_solde < config.impression.decouvert:
|
if new_solde < config.impression.decouvert:
|
||||||
raise ValueError(u"Solde minimal atteint, opération non effectuée.")
|
raise ValueError(u"Solde minimal atteint, opération non effectuée.")
|
||||||
|
|
||||||
transaction = u"credit" if diff >=0 else u"debit"
|
transaction = u"credit" if diff >=0 else u"debit"
|
||||||
new_solde = u"%.2f" % new_solde
|
new_solde = u"%.2f" % new_solde
|
||||||
self.history_add(login, u"%s %.2f Euros [%s]" % (transaction, abs(diff), comment))
|
self.history_add(login, u"%s %.2f Euros [%s]" % (transaction, abs(diff), comment))
|
||||||
|
@ -662,7 +662,7 @@ class machine(CransLdapObject):
|
||||||
if not self._proprio:
|
if not self._proprio:
|
||||||
self._proprio = new_cransldapobject(self.conn, parent_dn, self.mode)
|
self._proprio = new_cransldapobject(self.conn, parent_dn, self.mode)
|
||||||
return self._proprio
|
return self._proprio
|
||||||
|
|
||||||
def blacklist_actif(self):
|
def blacklist_actif(self):
|
||||||
u"""Renvoie la liste des blacklistes actives sur la machine et le proprio
|
u"""Renvoie la liste des blacklistes actives sur la machine et le proprio
|
||||||
Améliorations possibles:
|
Améliorations possibles:
|
||||||
|
@ -835,7 +835,7 @@ class adherent(proprio):
|
||||||
|
|
||||||
if u'posixAccount' in [str(o) for o in self.attrs['objectClass']]:
|
if u'posixAccount' in [str(o) for o in self.attrs['objectClass']]:
|
||||||
return self.attrs['uid'][0]
|
return self.attrs['uid'][0]
|
||||||
|
|
||||||
elif login:
|
elif login:
|
||||||
fn = crans_utils.strip_accents(unicode(self.attrs['prenom'][0]).capitalize())
|
fn = crans_utils.strip_accents(unicode(self.attrs['prenom'][0]).capitalize())
|
||||||
ln = crans_utils.strip_accents(unicode(self.attrs['nom'][0]).capitalize())
|
ln = crans_utils.strip_accents(unicode(self.attrs['nom'][0]).capitalize())
|
||||||
|
@ -851,7 +851,7 @@ class adherent(proprio):
|
||||||
|
|
||||||
if os.path.exists("/var/mail/" + login):
|
if os.path.exists("/var/mail/" + login):
|
||||||
raise ValueError('Création du compte impossible : /var/mail/%s existant' % login)
|
raise ValueError('Création du compte impossible : /var/mail/%s existant' % login)
|
||||||
|
|
||||||
if not self.full:
|
if not self.full:
|
||||||
self.attribs = self.attribs + crans_account_attribs
|
self.attribs = self.attribs + crans_account_attribs
|
||||||
self.full = True
|
self.full = True
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue