From fc4cd9e2d3b35e6c0d5a6719b3c141ed191c8880 Mon Sep 17 00:00:00 2001 From: Vincent Le Gallic Date: Thu, 6 Dec 2012 00:46:43 +0100 Subject: [PATCH] [intranet/modules/mesMachines/main.py] Fix du bug "on peut plus modifier ses machines" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ignore-this: 66edbee00876be8be01d3ff53de3695 J'ai cru comprendre que ça avait un rapport avec la modif LDAP du @crans.org. Même si je suis pas convaincu, "comme ça ça marche" (Et puis bon, "raise Exception" c'était moche) darcs-hash:20121205234643-2c9c1-c531c90a2b253798c48c356a12fad9eaee3cbc73.gz --- intranet/modules/mesMachines/main.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/intranet/modules/mesMachines/main.py b/intranet/modules/mesMachines/main.py index a18a58c4..6afd848e 100644 --- a/intranet/modules/mesMachines/main.py +++ b/intranet/modules/mesMachines/main.py @@ -25,6 +25,10 @@ else: from ClassesIntranet.ModuleBase import ModuleBase +class NotYourStuff(Exception): + """Erreur levée si l'adhérent essaye de modifier une machine qu'il n'est pas une des siennes""" + pass + class main(ModuleBase): _droits = ["personnel"] def title(self): @@ -59,8 +63,12 @@ class main(ModuleBase): def AJAXMachineInfo(self, mid): try: machine = cherrypy.session['LDAP'].search('mid=' + mid)['machine'][0] - if machine.proprietaire().mail() != cherrypy.session['uid']: - raise Exception + try: + compte_machine = machine.proprietaire().compte() + except: + raise NotYourStuff("Il semble que vous cherchiez à modifier une machine dont le propriétaire n'a pas de compte Cr@ns…") + if compte_machine != cherrypy.session['uid']: + raise NotYourStuff("Vous ne pouvez pas modifier cette machine") # zamok -> pour tester l'affichage des ports, des alias #machine = cherrypy.session['LDAP'].search('mid=896')['machine'][0] machineInfos = {}