Esempio n. 1
0
 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