def doAuthentication(self, trans, request): session = request.getSession() _ = trans info = WebGetUserInfo(self.db, session) # 0) Se empieza la página request.write(self.template.startPage(session, _('Informacion de usuario'))) d = defer.maybeDeferred(lambda:None) # 1) Verificar que esté autenticado ante el sistema if not hasattr(session, 'username'): request.write(self.template.notAuthenticated(session)) # 2) Si es Admin, puede ver todos los usuarios elif "user_id" in request.args.keys() and "kind" in request.args.keys(): try: user_id = int(request.args['user_id'][0]) kind = int(request.args['kind'][0]) msg = '<h2>' + _('Informacion de usuario') + '</h2>' d.addCallback(lambda a: info.getUserInfo(user_id, kind)) except ValueError: request.write(self.template.unexpectedArguments(session, \ _('Argumento no valido'))) user_id = kind = msg = None d.addCallback(lambda a: None) d.addCallback(self.printContent, request, d, user_id, kind, session, msg) else: request.write(self.template.unexpectedArguments(session, \ _('Falta algun argumento'))) d.addCallback(lambda a: request.write(self.template.finishPage(session))) d.addCallback(lambda a: request.finish()) return d