Splitte oid entre les différents objets concernés

This commit is contained in:
Pierre-Elliott Bécue 2015-10-18 21:01:05 +02:00
parent 9388e1d217
commit 2a806bb367

View file

@ -209,16 +209,7 @@ class CransLdapObject(object):
def oid(self):
"""Retourne l'id de l'objet courant"""
if isinstance(self, adherent):
return self['aid']
elif isinstance(self, machine):
return self['mid']
elif isinstance(self, club):
return self['cid']
elif isinstance(self, facture):
return self['fid']
else:
return [self.dn]
return [self.dn.split(",")[0].split("=")[1]]
def _out_of_context(self, *args, **kwargs):
raise EnvironmentError("Hors du context, impossible de faire des écritures")
@ -1286,6 +1277,10 @@ class machine(CransLdapObject):
if domain in certificat['hostCert']:
raise EnvironmentError("Vous devez d'abord supprimer ou éditer les certificats utilisant le nom de domaine %s avant de le retirer de la machine" % domain)
def oid(self):
"""Retourne l'id de l'objet courant"""
return self['mid']
def proprio(self, mode=None, refresh=False):
u"""Renvoie le propriétaire de la machine"""
if not hasattr(self, '_proprio') or not self._proprio or refresh:
@ -1507,6 +1502,10 @@ class adherent(proprio):
raise EnvironmentError("L'adhérent est responsable ou imprimeur pour les clubs %s, suppression impossible" % ", ".join(str(c["cid"][0]) for c in clubs))
super(adherent, self).delete(comm, login)
def oid(self):
"""Retourne l'id de l'objet courant"""
return self['aid']
@crans_object
class club(proprio):
u"""Club crans"""
@ -1544,6 +1543,10 @@ class club(proprio):
def __repr__(self):
return repr(self.__unicode__())
def oid(self):
"""Retourne l'id de l'objet courant"""
return self['cid']
@crans_object
class machineFixe(machine):
u"""Machine fixe"""
@ -1692,6 +1695,10 @@ class facture(CransLdapObject):
raise EnvironmentError("Paiement déjà effectué pour cette facture, impossible de modifier son contenu")
return super(facture, self).__setitem__(attr, value)
def oid(self):
"""Retourne l'id de l'objet courant"""
return self['fid']
def total(self):
total = 0
for article in self["article"]: