[gest_crans] On répare la méthode de préremplissage, et on corrige des bugs

* La méthode de préremplissage posait des locks, les fonctions affectant
 des valeurs ont désormais un argument lock, par défaut à True, pour
 savoir si elles doivent poser des locks
 * La méthode de préremplissage doit aussi affecter une ip
 * Il y avait un decode de trop dans la gestion des blacklistes
This commit is contained in:
Pierre-Elliott Bécue 2013-10-15 00:44:17 +02:00
parent 673e8266e8
commit 337f4906b6
2 changed files with 39 additions and 25 deletions

View file

@ -1015,7 +1015,7 @@ def set_blackliste(clas):
arg += u'"- pour fin indéterminée" 2 25 "" 0 0 0 0 '
arg += u'"Les jours de début et de fin sont inclus." 3 1 "" 0 0 0 0 '
arg += u'"Sanction : %s" 4 1 "" 0 0 0 0 ' % t[2]
arg += u'"Commentaire (pas de dollar) : " 5 1 "%s" 6 1 52 0 ' % t[3].decode("utf-8")
arg += u'"Commentaire (pas de dollar) : " 5 1 "%s" 6 1 52 0 ' % t[3]
annul, r = dialog(arg)
if annul: return 1
@ -1491,13 +1491,18 @@ def set_machine(machine):
# Traitement
err = ''
try: machine.nom(result[0])
except ValueError, c: err += c.args[0] + '\n'
except EnvironmentError, c: err += c.args[0] + '\n'
except ValueError, c:
err += c.args[0] + '\n'
except EnvironmentError, c:
err += c.args[0] + '\n'
try: machine.ip(result[2])
except ValueError, c: err += c.args[0] + '\n'
except EnvironmentError, c: err += c.__str__() + '\n'
except RuntimeError, c: err += c.args[0] + '\n' # Plus d'IP libres, peut-être à traiter differement ?
except ValueError, c:
err += c.args[0] + '\n'
except EnvironmentError, c:
err += c.__str__() + '\n'
except RuntimeError, c:
err += c.args[0] + '\n' # Plus d'IP libres, peut-être à traiter differement ?
try: machine.mac(result[1])
except ValueError, c:
if len(c.args)>1 and c.args[1] == 1 and isadm:
@ -1509,8 +1514,10 @@ def set_machine(machine):
return set_machine(machine)
else:
try: machine.mac(result[1], 1)
except ValueError, c: err += c.args[0] + '\n'
except EnvironmentError, c: err += c.args[0] + '\n'
except ValueError, c:
err += c.args[0] + '\n'
except EnvironmentError, c:
err += c.args[0] + '\n'
elif len(c.args)>1 and c.args[1] == 3 and isadm:
# Mac douteuse
arg = u'--title "Adresse MAC" '
@ -1520,8 +1527,10 @@ def set_machine(machine):
return set_machine(machine)
else:
try: machine.mac(result[1], 1)
except ValueError, c: err += c.args[0] + '\n'
except EnvironmentError, c: err += c.args[0] + '\n'
except ValueError, c:
err += c.args[0] + '\n'
except EnvironmentError, c:
err += c.args[0] + '\n'
else:
try:
err += c.args[0] + '\n'
@ -1529,7 +1538,8 @@ def set_machine(machine):
raise
raise Exception("UnicodeDecodeError on %s" % repr(c.args))
except EnvironmentError, c: err += c.args[0] + '\n'
except EnvironmentError, c:
err += c.args[0] + '\n'
if isadm:
try:
@ -2224,8 +2234,9 @@ def menu_principal():
#Saisie prédictive de la mac
try:
prise = proprio.chbre().lower()[0] + becane.prise()
becane.ip("<automatique>", lock=False)
f = open('/usr/scripts/var/last_macs/' + prise, 'r')
becane.mac(f.read())
becane.mac(f.read(), lock=False)
f.close()
except:
pass