From b19d9cc71b2c2e98c79f2734cbd110715c1f46a8 Mon Sep 17 00:00:00 2001 From: Nicolas Dandrimont Date: Sat, 4 Sep 2010 15:39:07 +0200 Subject: [PATCH] [ldap_crans] Exceptions en str darcs-hash:20100904133907-ffbb2-fc397f6e3d005e0d49d1a1f5f791bf821cc7c4ec.gz --- gestion/gest_crans.py | 2 +- gestion/ldap_crans.py | 230 +++++++++++++++++++++--------------------- 2 files changed, 116 insertions(+), 116 deletions(-) diff --git a/gestion/gest_crans.py b/gestion/gest_crans.py index 8f79d91d..ecc79d86 100644 --- a/gestion/gest_crans.py +++ b/gestion/gest_crans.py @@ -577,7 +577,7 @@ def set_droits(adher): droit = droit.strip() if droit == '': continue if droit not in droits_possibles: - raise ValueError(u'Droit %s incorrect' % droit) + raise ValueError('Droit %s incorrect' % droit) new.append(droit) # Dans le cas où l'utilisateur qui modifie n'est pas Nounou, on ajoute les diff --git a/gestion/ldap_crans.py b/gestion/ldap_crans.py index 8b302644..9d3eb113 100644 --- a/gestion/ldap_crans.py +++ b/gestion/ldap_crans.py @@ -38,7 +38,7 @@ cur_user = os.getenv('SUDO_USER') or pwd.getpwuid(os.getuid())[0] if __name__ == 'ldap_crans_test' or os.environ.get('crans_ldap', '') == 'test': if hostname != "vo": - raise ImportError, coul("La base de test n'est accessible que depuis vo !", "rouge") + raise ImportError(coul("La base de test n'est accessible que depuis vo !", "rouge")) # Utilisation de la base de données de test (tests, séminaire...) # Il faut au choix : # - faire un import crans_ldap_test @@ -158,7 +158,7 @@ def mailexist(mail): r = s.getreply()[0] in [250, 252] s.close() except: - raise ValueError(u'Serveur de mail injoignable') + raise ValueError('Serveur de mail injoignable') return r @@ -218,12 +218,12 @@ def format_mac(mac): map(lambda x: "%02s" % x, mac.split(":")))) mac = mac.replace(':', '').lower() if len(mac) != 12: - raise ValueError(u"Longueur de l'adresse mac incorrecte.") + raise ValueError("Longueur de l'adresse mac incorrecte.") for c in mac[:]: if c not in string.hexdigits: - raise ValueError(u"Caractère interdit '%s' dans l'adresse mac." % c) + raise ValueError("Caractère interdit '%s' dans l'adresse mac." % c) if mac == '000000000000': - raise ValueError(u"MAC nulle interdite\nIl doit être possible de modifier l'adresse de la carte.") + raise ValueError("MAC nulle interdite\nIl doit être possible de modifier l'adresse de la carte.") # Formatage mac = "%s:%s:%s:%s:%s:%s" % (mac[:2], mac[2:4], mac[4:6], mac[6:8], mac[8:10], mac[10:]) @@ -247,16 +247,16 @@ def validate_mail(mail, crans_allowed=False): if mail.count('@') != 1 \ or not ( l-b >= 2 and l-b <= 4) \ or a < 1 or b-a < 2: - raise ValueError(u"Adresse mail incorrecte.") + raise ValueError("Adresse mail incorrecte.") # Pas de caractèrs bizarres for l in mail[:]: if not l in (string.lowercase + string.digits + '-_.@'): - raise ValueError(u"Caractère interdit dans l'adresse mail (%s)." % l) + raise ValueError("Caractère interdit dans l'adresse mail (%s)." % l) # Pour les vicieux if not crans_allowed and mail.endswith(('crans.org','crans.ens-cachan.fr')): - raise ValueError(u"Adresse mail @crans interdite ici !") + raise ValueError("Adresse mail @crans interdite ici !") # On enlève les blacklistes mail_invalide return mail @@ -480,7 +480,7 @@ class CransLdap: # Il ne tourne plus self.remove_lock(res[0]) # delock return self.lock(item, valeur) # relock - raise EnvironmentError(u'Objet (%s=%s) locké, patienter.' % (item, valeur), l) + raise EnvironmentError('Objet (%s=%s) locké, patienter.' % (item, valeur), l) else: if not hasattr(self, '_locks'): self._locks = [lock_dn] @@ -635,7 +635,7 @@ class CransLdap: # On crée l'objet return classe(entry, mode, self.conn) except: - raise ValueError(u"Impossible de créer l'objet %s" % nom_classe) + raise ValueError("Impossible de créer l'objet %s" % nom_classe) def search(self, expression, mode=''): @@ -658,7 +658,7 @@ class CransLdap: elif type(expression) == unicode: expression = expression.encode('utf-8') else: - raise TypeError(u'Chaîne attendue') + raise TypeError('Chaîne attendue') if not expression: return [] @@ -745,7 +745,7 @@ class CransLdap: champ = champ[:-1] neg = True except: - raise ValueError(u'Syntaxe de recherche invalide (%s)' % cond) + raise ValueError('Syntaxe de recherche invalide (%s)' % cond) # Transformation de certains champs champ = self.trans.get(champ, champ) @@ -770,7 +770,7 @@ class CransLdap: filtre_seul[i] = True if not ok: - raise ValueError(u'Champ de recherche inconnu (%s)' % champ) + raise ValueError('Champ de recherche inconnu (%s)' % champ) ## Recherche avec chacun des filtres r = {} # contiendra les réponses par filtre @@ -1017,7 +1017,7 @@ class BaseClasseCrans(CransLdap): debut = new[0] = int(time.time()) else: try: debut = new[0] = int(new[0]) - except: raise ValueError(u'Date de début blacklist invalide') + except: raise ValueError('Date de début blacklist invalide') if new[1] == 'now': fin = new[1] = int(time.time()) @@ -1025,12 +1025,12 @@ class BaseClasseCrans(CransLdap): fin = -1 else: try: fin = new[1] = int(new[1]) - except: raise ValueError(u'Date de fin blacklist invalide') + except: raise ValueError('Date de fin blacklist invalide') if debut == fin: - raise ValueError(u'Dates de début et de fin identiques') + raise ValueError('Dates de début et de fin identiques') elif fin != -1 and debut > fin: - raise ValueError(u'Date de fin avant date de début') + raise ValueError('Date de fin avant date de début') # On dépasse la fin de sanction d'1min pour être sûr qu'elle est périmée. fin = fin + 60 @@ -1270,13 +1270,13 @@ class BaseClasseCrans(CransLdap): else: ### Modification entrée if not self._modifiable: - raise RuntimeError(u'Objet non modifiable : %s' % str(self)) + raise RuntimeError('Objet non modifiable : %s' % str(self)) modlist = ldap.modlist.modifyModlist(self._init_data, self._data) try: self.conn.modify_s(self.dn, modlist) except ldap.TYPE_OR_VALUE_EXISTS, c: champ = c.args[0]['info'].split(':')[0] - raise RuntimeError(u'Entrée en double dans le champ %s' % champ) + raise RuntimeError('Entrée en double dans le champ %s' % champ) # l'ip change, le mid aussi... if 'ipHostNumber' in self.modifs: @@ -1443,14 +1443,14 @@ class BaseProprietaire(BaseClasseCrans): l, new = preattr(new) new = new.lower() if l < 2: - raise ValueError(u"Alias trop court.") + raise ValueError("Alias trop court.") for c in new[:]: if not c in (string.letters + string.digits + '-_.'): - raise ValueError(u"Alias : seuls les caractères alphanumériques, le -, le _ et le . sont autorisés." ) + raise ValueError("Alias : seuls les caractères alphanumériques, le -, le _ et le . sont autorisés." ) if new[0] not in string.letters: - raise ValueError(u"Le premier caractère de l'alias doit être alphabétique.") + raise ValueError("Le premier caractère de l'alias doit être alphabétique.") if mailexist(new): - raise ValueError(u"Alias existant ou correspondand à un compte.") + raise ValueError("Alias existant ou correspondand à un compte.") if index != -1: liste[index] = new @@ -1570,11 +1570,11 @@ class BaseProprietaire(BaseClasseCrans): try: new = solde + float(str(operation).replace(',', '.')) except ValueError: - raise ValueError(u"Il faut donner un nombre en argument.") + raise ValueError("Il faut donner un nombre en argument.") # découvert accepté if new < config.impression.decouvert: - raise ValueError(u"Solde minimal atteint, opération non effectuée.") + raise ValueError("Solde minimal atteint, opération non effectuée.") self._set('solde', [str(new)], comment) return new @@ -1632,7 +1632,7 @@ class BaseProprietaire(BaseClasseCrans): # si l'adhérent n'a pas de compte, on lève une exception if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") # tente de modifier la valeur if contourneGreylist == True: @@ -1640,7 +1640,7 @@ class BaseProprietaire(BaseClasseCrans): elif contourneGreylist == False: self._set('contourneGreylist', []) elif contourneGreylist != None: - raise ValueError, u"contourneGreylist prend un booléen comme argument" + raise ValueError("contourneGreylist prend un booléen comme argument") # renvoie la valeur trouvée dans la base return bool(self._data.get('contourneGreylist', [])) @@ -1651,7 +1651,7 @@ class BaseProprietaire(BaseClasseCrans): ou False si le mot de passe n'est pas bon. """ if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") return ldap_passwd.checkpwd(passwd, self._data['userPassword'][0]) def changePasswd(self, passwd): @@ -1659,7 +1659,7 @@ class BaseProprietaire(BaseClasseCrans): Modifie le mot de passe de l'adhérent """ if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") self._set('userPassword', [ldap_passwd.mkpasswd(passwd)]) def forward(self, new = None): @@ -1669,7 +1669,7 @@ class BaseProprietaire(BaseClasseCrans): sinon cette metode ne fonctionnera pas """ if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") return config_mail.MailConfig(uid=self._data['uid'][0], forward = new)['forward'] def spam(self, new = None): @@ -1680,20 +1680,20 @@ class BaseProprietaire(BaseClasseCrans): sinon cette metode ne fonctionnera pas """ if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") return config_mail.MailConfig(uid=self._data['uid'][0], spam = new)['spam'] def home(self): """ Retourne le home de l'adhérent """ if not self.compte(): - raise NotImplementedError, u"L'adhérent na pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") return self._data['homeDirectory'][0] def uidNumber(self, new=None): """ Retourne ou change l'uidNumber de l'adhérent """ if not self.compte(): - raise NotImplementedError, u"L'adhérent na pas de compte" + raise NotImplementedError("L'adhérent na pas de compte") if new == None: return self._data['uidNumber'][0] else: @@ -1944,11 +1944,11 @@ class Adherent(BaseProprietaire): new = new.capitalize() for c in strip_accents(new[:]): if c not in (string.letters + '- '): - raise ValueError(u"Seuls les caractères alphabétiques, l'espace et le - sont permis dans %s." % champ) + raise ValueError("Seuls les caractères alphabétiques, l'espace et le - sont permis dans %s." % champ) if l<2: - raise ValueError(u"%s trop court." % champ) + raise ValueError("%s trop court." % champ) if new[0] not in string.letters: - raise ValueError(u"Le premier caractère du %s doit être une lettre" % champ) + raise ValueError("Le premier caractère du %s doit être une lettre" % champ) self._set(champ, [new]) if self._data.has_key('gecos'): @@ -1963,7 +1963,7 @@ class Adherent(BaseProprietaire): if new != 'inconnu': l, new = preattr(new) if not new.isdigit() or l < 6 or l > 15: - raise ValueError(u"Numéro de téléphone incorrect (il doit comporter uniquement des chiffres).") + raise ValueError("Numéro de téléphone incorrect (il doit comporter uniquement des chiffres).") self._set('tel', [new]) return new @@ -1977,14 +1977,14 @@ class Adherent(BaseProprietaire): l, new = preattr(new) if l == 0: - raise ValueError(u"Chambre incorrecte.") + raise ValueError("Chambre incorrecte.") if new.upper() == 'EXT': # N'est pas ou plus sur le campus # Machine fixe ? # for m in self.machines(): # if not isinstance(m, MachineWifi): - # raise ValueError(u'Un adhérent en dehors du campus ne doit pas avoir de machine fixe.') + # raise ValueError('Un adhérent en dehors du campus ne doit pas avoir de machine fixe.') self._set('chbre', ['EXT']) return 'EXT' @@ -2001,7 +2001,7 @@ class Adherent(BaseProprietaire): chbres = annuaires.chbre_prises(bat).keys() if new[1:] not in chbres or len(new)<4 or not new[1:4].isdigit(): chbres.sort() - aide = u"Chambre inconnue dans le batiment, les chambres valides sont :" + aide = "Chambre inconnue dans le bâtiment, les chambres valides sont :" a = 0 for c in chbres: if len(c)>=3 and not c[:3].isdigit(): @@ -2011,23 +2011,23 @@ class Adherent(BaseProprietaire): if c[0] != 'X': aide += c.ljust(5) a = a+1 - aide += u'\n' + aide += '\n' raise ValueError(aide) else: - raise ValueError(u'Bâtiment inconnu.') + raise ValueError('Bâtiment inconnu.') # La chambre est valide, est-elle déja occupée ? test = self.exist('chbre=%s' % new) if test: search = test[0].split(',')[0] if search.split('=')[0] != 'aid': - raise ValueError(u'Chambre déjà occupée.') + raise ValueError('Chambre déjà occupée.') adh = self.search(search, self._modifiable)['adherent'] if len(adh) != 1: - raise ValueError(u'Chambre déjà occupée.') + raise ValueError('Chambre déjà occupée.') else: - raise ValueError(u'Chambre déjà occupée.', adh[0]) + raise ValueError('Chambre déjà occupée.', adh[0]) # Lock de la chambre self.lock('chbre', new) @@ -2056,7 +2056,7 @@ class Adherent(BaseProprietaire): l_min = [ 2, 0, 5, 2 ] for i in range(0, 4): l, new[i] = preattr(new[i]) - if l < l_min[i]: raise ValueError(u"Adresse incorrecte.") + if l < l_min[i]: raise ValueError("Adresse incorrecte.") # Correction si necessaire if not new[1]: @@ -2141,7 +2141,7 @@ class Adherent(BaseProprietaire): return False else: - raise ValueError, u'mail_invalide ne peut prendre que None ou False en argument' + raise ValueError('mail_invalide ne peut prendre que None ou False en argument') def charteMA(self, valeur=None): """ @@ -2154,7 +2154,7 @@ class Adherent(BaseProprietaire): elif valeur == False: self._set('charteMA', []) elif valeur != None: - raise ValueError, u"charteMA prend un booléen comme argument" + raise ValueError("charteMA prend un booléen comme argument") # renvoie la valeur trouvée dans la base return bool(self._data.get('charteMA', [])) @@ -2171,7 +2171,7 @@ class Adherent(BaseProprietaire): set_to = ['FALSE'] self._set('adherentPayant', set_to) elif valeur is not None: - raise ValueError, u"adherentPayant prend un booléen comme argument" + raise ValueError("adherentPayant prend un booléen comme argument") # bool d'une liste non vide est true, on inverse donc (la base ne peut contenir que FALSE) return not bool(self._data.get('adherentPayant', [])) @@ -2210,13 +2210,13 @@ class Adherent(BaseProprietaire): # Pas grand chose à faire à part vérifier que ce sont bien des chaines if len(index_or_new) != 3: - raise ValueError(u"Format études non valides.") + raise ValueError("Format études non valides.") new = ['', '', ''] for i in range(0, 3): n = preattr(index_or_new[i])[1] if n in new or n == '': - raise ValueError(u"Etudes non valides.") + raise ValueError("Etudes non valides.") new[i] = n self._set('etudes', new) @@ -2263,34 +2263,34 @@ class Adherent(BaseProprietaire): login = login.lower() if login and not self.adherentPayant(): - raise ValueError(u"L'adhérent ne paie pas de cotisation, il n'a pas droit à un compte.") + raise ValueError("L'adhérent ne paie pas de cotisation, il n'a pas droit à un compte.") if 'posixAccount' in self._data['objectClass']: if login != self._data['uid']: # A déja un compte - raise ValueError(u"L'adhérent à déjà un compte. Login : %s" % self._data['uid'][0]) + raise ValueError("L'adhérent à déjà un compte. Login : %s" % self._data['uid'][0]) else: return login for c in login[:]: if not c in (string.letters + '-'): - raise ValueError(u"Seuls les caractères alphabétiques non accentués et le - sont autorisés dans le login.") + raise ValueError("Seuls les caractères alphabétiques non accentués et le - sont autorisés dans le login.") if l < 2: - raise ValueError(u"Login trop court.") + raise ValueError("Login trop court.") if l > config.maxlen_login: - raise ValueError(u"Login trop long.") + raise ValueError("Login trop long.") if login[0] == '-': - raise ValueError(u"- interdit en première position.") + raise ValueError("- interdit en première position.") if mailexist(login): - raise ValueError(u"Login existant ou correspondant à un alias mail.", 1) + raise ValueError("Login existant ou correspondant à un alias mail.", 1) home = '/home/' + login if os.path.exists(home): - raise ValueError(u'Création du compte impossible : home existant', 1) + raise ValueError('Création du compte impossible : home existant', 1) if os.path.exists("/var/mail/" + login): - raise ValueError(u'Création du compte impossible : /var/mail/%s existant' % login, 1) + raise ValueError('Création du compte impossible : /var/mail/%s existant' % login, 1) # Lock du mail self.lock('mail', login) @@ -2317,7 +2317,7 @@ class Adherent(BaseProprietaire): if uidNumber: if self.exist('(uidNumber=%s)' % uidNumber): - raise ValueError(u'uidNumber pris') + raise ValueError('uidNumber pris') else: pool_uid = range(1001, 9999) random.shuffle(pool_uid) @@ -2328,7 +2328,7 @@ class Adherent(BaseProprietaire): pool_uid.append(uidNumber) break if not len(pool_uid): - raise ValueError(u"Plus d'uid disponibles !") + raise ValueError("Plus d'uid disponibles !") try: self.lock('uidNumber', str(uidNumber)) @@ -2370,7 +2370,7 @@ class Adherent(BaseProprietaire): light permet de modifier les droits non critiques sans être Nounou.""" if droits != None and 'cransAccount' not in self._data.get('objectClass', []): - raise EnvironmentError(u'Il faut avoir un compte pour avoir des droits.') + raise EnvironmentError('Il faut avoir un compte pour avoir des droits.') if droits == None: return map(decode, self._data.get('droits', [])) @@ -2379,18 +2379,18 @@ class Adherent(BaseProprietaire): if not light: from user_tests import isadm if not isadm(): - raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.') + raise EnvironmentError('Il faut être administrateur pour effectuer cette opération.') # On vérifie la liste donnée if type(droits) != list: - raise TypeError(u'Une liste est attendue') + raise TypeError('Une liste est attendue') new = [] for droit in droits: droit = droit.strip() if droit == '': continue if droit not in droits_possibles: - raise ValueError(u'Droit %s incorrect' % droit) + raise ValueError('Droit %s incorrect' % droit) new.append(droit) ancien = self._data.get('droits', []) @@ -2435,7 +2435,7 @@ class Adherent(BaseProprietaire): # si l'adhérent n'a pas de compte, on lève une exception if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") # tente de modifier la valeur if rewrite == True: @@ -2443,7 +2443,7 @@ class Adherent(BaseProprietaire): elif rewrite == False: self._set('rewriteMailHeaders', []) elif rewrite != None: - raise ValueError, u"rewriteMailHeaders prend un booléen comme argument" + raise ValueError("rewriteMailHeaders prend un booléen comme argument") # renvoie la valeur trouvée dans la base return bool(self._data.get('rewriteMailHeaders', [])) @@ -2457,7 +2457,7 @@ class Adherent(BaseProprietaire): # si l'adhérent n'a pas de compte, on lève une exception if not self.compte(): - raise NotImplementedError, u"L'adhérent n'a pas de compte" + raise NotImplementedError("L'adhérent n'a pas de compte") current = int(self._data.get('derniereConnexion', ['0'])[0]) @@ -2500,7 +2500,7 @@ class Club(BaseProprietaire): l, new = preattr(new) new = new.capitalize() if l<2: - raise ValueError(u"Nom trop court.") + raise ValueError("Nom trop court.") self._set('nom', [new]) return new @@ -2528,7 +2528,7 @@ class Club(BaseProprietaire): raise ValueError if not adher.id(): - raise AttributeError(u'Adhérent invalide') + raise AttributeError('Adhérent invalide') self._set('responsable', [adher.id()]) return adher @@ -2565,7 +2565,7 @@ class Club(BaseProprietaire): annu = annuaires.locaux_clubs() if new not in annu.keys(): - raise ValueError(u'Local invalide', annu) + raise ValueError('Local invalide', annu) self._set('chbre', [new]) return new @@ -2586,26 +2586,26 @@ class Club(BaseProprietaire): if not login.startswith('club-'): login = 'club-' + login if not re.match('^[a-z0-9]*[a-z]+[a-z0-9-]*$', login): - raise ValueError(u'Login incorrect') + raise ValueError('Login incorrect') login = preattr(login)[1] if 'posixAccount' in self._data['objectClass']: if login != self._data['uid']: # A déja un compte - raise ValueError(u"Le club à déjà un compte. Login : %s" % self._data['uid'][0]) + raise ValueError("Le club à déjà un compte. Login : %s" % self._data['uid'][0]) else: return login if mailexist(login) and not os.system('/usr/sbin/list_lists | grep -qi %s' % login): # la 2ème vérif est pour vérifier que ce n'est pas la ML du club - raise ValueError(u"Login existant ou correspondant à un alias mail.", 1) + raise ValueError("Login existant ou correspondant à un alias mail.", 1) home = '/home/' + login.replace('-', '/', 1) if os.path.exists(home): - raise ValueError(u'Création du compte impossible : home existant', 1) + raise ValueError('Création du compte impossible : home existant', 1) if os.path.exists("/var/mail/"+login): - raise ValueError(u'Création du compte impossible : /var/mail/%s existant'%login, 1) + raise ValueError('Création du compte impossible : /var/mail/%s existant'%login, 1) # Lock du mail self.lock('mail', login) @@ -2699,13 +2699,13 @@ class Machine(BaseClasseCrans): chbre = self.__proprietaire.chbre() # if chbre == 'EXT' and mode == 'fixe': - # raise ValueError(u'Il faut une chambre pour pouvoir posséder une machine fixe') + # raise ValueError('Il faut une chambre pour pouvoir posséder une machine fixe') if chbre == '????': - raise ValueError(u'ERREUR: la chambre du propriétaire est inconnue') + raise ValueError('ERREUR: la chambre du propriétaire est inconnue') else: - raise TypeError(u'Arguments invalides') + raise TypeError('Arguments invalides') def Nom(self): """ Retourne le nom de la machine """ @@ -2728,13 +2728,13 @@ class Machine(BaseClasseCrans): # La mac serait-elle déjà connue ? if not multi_ok and self.exist('macAddress=%s' % mac): - raise ValueError(u'Mac déja utilisée sur le réseau.', 1) + raise ValueError('Mac déja utilisée sur le réseau.', 1) # La MAC serait-elle une MAC à la con ? if mac == "00:04:4b:80:80:03": - raise ValueError(u"Il s'agit de l'unique adresse MAC achetée par nVidia pour ses cartes réseau. Il faut changer cette adresse.", 2) + raise ValueError("Il s'agit de l'unique adresse MAC achetée par nVidia pour ses cartes réseau. Il faut changer cette adresse.", 2) elif mac[0:11] == "44:45:53:54": - raise ValueError(u"Il s'agit de l'adresse MAC d'une interface PPP.", 2) + raise ValueError("Il s'agit de l'adresse MAC d'une interface PPP.", 2) # Le test final : vendeur connu prefix = mac[:8].upper() + ' ' @@ -2746,7 +2746,7 @@ class Machine(BaseClasseCrans): break except IOError: # Le fichier existe pas, on sors - raise RuntimeError(u"Fichier de fabriquants de MAC non trouvé !") + raise RuntimeError("Fichier de fabriquants de MAC non trouvé !") if not multi_ok and not vendor: raise ValueError( @@ -2770,33 +2770,33 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) l = len(new.split('.')[0]) if l<2: - raise ValueError(u"%s trop court." % champ.capitalize()) + raise ValueError("%s trop court." % champ.capitalize()) if self.proprietaire().__class__ != AssociationCrans: new = new.split('.', 1)[0] for c in new[:]: if not c in (string.letters + string.digits + '-'): - raise ValueError(u"Seuls les caractères alphabétiques minuscules et les - sont autorisés pour %s" % champ) + raise ValueError("Seuls les caractères alphabétiques minuscules et les - sont autorisés pour %s" % champ) if l > 17: - raise ValueError(u"%s trop long." % champ.capitalize()) + raise ValueError("%s trop long." % champ.capitalize()) if not new[0].isalpha(): - raise ValueError(u"Le premier caractère du champ %s doit être alphabétique" % champ) + raise ValueError("Le premier caractère du champ %s doit être alphabétique" % champ) if new.endswith('-'): - raise ValueError(u"Le dernier caractère du champ %s ne peut être un tiret" % champ) + raise ValueError("Le dernier caractère du champ %s ne peut être un tiret" % champ) # Ajout du domaine si necessaire if new.find('.') == -1: try: new += '.' + config.domains[self.objectClass] except: - raise RuntimeError(u"%s : domaine non trouvé pour %s" % (champ.capitalize(), self.__class__)) + raise RuntimeError("%s : domaine non trouvé pour %s" % (champ.capitalize(), self.__class__)) # Pas déja pris ? if self.exist('(|(host=%s)(hostAlias=%s))' % (new, new)): - raise ValueError(u"%s : nom déjà pris" % champ.capitalize()) + raise ValueError("%s : nom déjà pris" % champ.capitalize()) # Lock host self.lock('host', new) @@ -2918,7 +2918,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) net = config.NETs[proprio_subnet] pool_ip = lister_ip_dispo(proprio_subnet) except: - raise RuntimeError(u'Impossible de trouver le réseau où placer la machine.') + raise RuntimeError('Impossible de trouver le réseau où placer la machine.') else: net = config.NETs["gratuit"] pool_ip = lister_ip_dispo("gratuit") @@ -2934,19 +2934,19 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) break if not len(pool_ip): - raise RuntimeError(u"Plus d'IP libres dans %s." % ' et '.join(net)) + raise RuntimeError("Plus d'IP libres dans %s." % ' et '.join(net)) else: # L'ip est elle dans le bon sous-réseau ? # (accessoirement teste si l'IP est valide et ne correspond pas # à l'adresse de broadcast ou de réseau) if not iptools.AddrInNet(ip, net): - raise ValueError(u'IP invalide ou en dehors du sous-réseau alloué.', 1) + raise ValueError('IP invalide ou en dehors du sous-réseau alloué.', 1) # Reformatage ip = iptools.DecToQuad(iptools.QuadToDec(ip)) # L'ip est-elle déja allouée ? if self.exist('ipHostNumber=%s' % ip): - raise ValueError(u'IP déjà prise.') + raise ValueError('IP déjà prise.') # Lock ip self.lock('ipHostNumber', ip) @@ -3015,7 +3015,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) """ from user_tests import isadm if self.proprietaire().__class__ == AssociationCrans and not (isadm() or user_tests.getuser() == 'www-data'): - raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.') + raise EnvironmentError('Il faut être administrateur pour effectuer cette opération.') ret = '' @@ -3104,7 +3104,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) """ Destruction de la machine""" from user_tests import isadm if self.proprietaire().__class__ == AssociationCrans and not isadm(): - raise EnvironmentError(u'Il faut être administrateur pour effectuer cette opération.') + raise EnvironmentError('Il faut être administrateur pour effectuer cette opération.') self.proprio = self.__proprietaire.Nom() # On met dans un coin le nom du proprio @@ -3157,7 +3157,7 @@ Contactez nounou si la MAC est bien celle d'une carte.""", 3) assert(len(liste) == 1 or len(liste) == 2) return map(lambda x: x and int(x) or '', liste) except: - raise ValueError(u'Spécification de ports incorrecte : %s' % x) + raise ValueError('Spécification de ports incorrecte : %s' % x) ports = map(parse, ports) ports.sort() @@ -3217,7 +3217,7 @@ class MachineCrans(Machine): try: new = int(new) except: - raise ValueError(u'Le nombre de prises doit être un entier') + raise ValueError('Le nombre de prises doit être un entier') vals = [24, 26, 28, 50, 52] if new not in vals: @@ -3310,7 +3310,7 @@ class BorneWifi(Machine): raise new = new + (1 << (c - 1)) except: - raise ValueError(u'Canal invalide : doit être entre 0 et 13 ou une liste de canaux') + raise ValueError('Canal invalide : doit être entre 0 et 13 ou une liste de canaux') self._set('canal', [str(new)]) return new @@ -3324,7 +3324,7 @@ class BorneWifi(Machine): new = int(new) if new < -99 or new > 99: raise except: - raise ValueError(u'Puissance invalide : doit être entre -99 et 99') + raise ValueError('Puissance invalide : doit être entre -99 et 99') self._set('puissance', [str(new)]) return new @@ -3456,13 +3456,13 @@ class Facture(BaseClasseCrans): self._modifiable = 'w' else: - raise TypeError(u'Arguments invalides') + raise TypeError('Arguments invalides') def numero(self): """ Retourne le numéro de facture """ fid = self._data.get('fid', [None])[0] if fid == None: - raise NotImplementedError, u'Il faut enregistrer une facture pour connaitre son numero' + raise NotImplementedError('Il faut enregistrer une facture pour connaitre son numero') return fid def nom(self): @@ -3488,7 +3488,7 @@ class Facture(BaseClasseCrans): elif 'club' in res[0][1]['objectClass']: self.__proprietaire = Club(res[0], self._modifiable, self.conn) else: - raise ValueError, u'Propriétaire inconnu' + raise ValueError('Propriétaire inconnu') return self.__proprietaire @@ -3501,13 +3501,13 @@ class Facture(BaseClasseCrans): # modification du mode de paiement if new != None: if self.recuPaiement(): - raise ValueError, u'Facture déja payée' + raise ValueError('Facture déja payée') if not self._modifiable: - raise NotImplementedError, "La facture n'est pas modifiable" + raise NotImplementedError("La facture n'est pas modifiable") if new not in ['liquide', 'cheque', 'paypal']: - raise ValueError, u'Mode de paiement non accepté' + raise ValueError('Mode de paiement non accepté') self._set('modePaiement', [new]) @@ -3520,13 +3520,13 @@ class Facture(BaseClasseCrans): # on vérifie que la facture n'est pas déja payéee if new and self._data.get('recuPaiement', []): - raise ValueError, u'Facture déja payée' + raise ValueError('Facture déja payée') # modification de la valeur if new != None: # on vérifie que la facture est modifiable if not self._modifiable and new: - raise NotImplementedError, "La facture n'est pas modifiable" + raise NotImplementedError("La facture n'est pas modifiable") # on crédite les articles, si c'est pas possible, la metode # levera une exeption @@ -3556,7 +3556,7 @@ class Facture(BaseClasseCrans): # on vérifie que le propriétaire est modifiable if not self.proprietaire()._modifiable: - raise SystemError, u"Impossible de créditer les articles, le proprietaire n'est pas modifiable" + raise SystemError("Impossible de créditer les articles, le proprietaire n'est pas modifiable") # on crédite les articles for art in self._articles(): @@ -3622,7 +3622,7 @@ class Facture(BaseClasseCrans): """ # on ne eut pas modifier une facture payée if self.recuPaiement(): - raise ValueError, u'On ne peut pas modifier une facture payée' + raise ValueError('On ne peut pas modifier une facture payée') # charge la liste des articles arts = self._articles() @@ -3633,12 +3633,12 @@ class Facture(BaseClasseCrans): if type(ajoute)==list: for art in ajoute: if int(art['nombre']) != float(art['nombre']): - raise ValueError, u'nombre doit être un entier' + raise ValueError('nombre doit être un entier') if float(int(art['pu']*100)/100.0) != art['pu']: - raise ValueError, u'pu ne doit pas avoir plus de 2 chiffres apres la virgule' + raise ValueError('pu ne doit pas avoir plus de 2 chiffres apres la virgule') art['nombre'] = int(art['nombre']) if '~~' in ' '.join([str(x) for x in art.values()]): - raise ValueError, u'Ne pas mettre de ~~ dans les champs' + raise ValueError('Ne pas mettre de ~~ dans les champs') arts.append(art) # enregistre la nouvelle liste @@ -3650,7 +3650,7 @@ class Facture(BaseClasseCrans): """ # on ne eut pas modifier une facture payée if self.recuPaiement(): - raise ValueError, u'On ne peut pas modifier une facture payée' + raise ValueError('On ne peut pas modifier une facture payée') # charge la liste des articles arts = self._articles()