예제 #1
0
    def post(self):
        """
        Por POST recoge los datos del formulario del evento, y modifica en BD.
        """
        idE = self.request.get('idE')
        user = controladorUsuario.getUsuarioLogeado(self)
        idLogueado = str(controladorUsuario.getKey(user))
        nombre = self.request.get('nombre')
        hora = self.request.get('hora')
        fecha = self.request.get('fecha')
        descripcion = self.request.get('descripcion').strip()
        lugar = self.request.get('lugar')
        asistencia = self.request.get('asistencia')
        lat = self.request.get('latitud')
        lon = self.request.get('longitud')
        privado = self.request.get('privado')
        idCreador = self.request.get('idUser')
        userT = self.request.get('userT')

        resp = controladorEvento.updateEvento(idE, nombre, userT, privado,
                                              hora, fecha, lugar, lat, lon,
                                              descripcion, asistencia)

        resp = {'response': True, 'idEvento': idE}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #2
0
파일: index.py 프로젝트: evenge/EVENGE
    def post(self):
        """
        Por POST recoge los datos del formulario del nuevo evento, y inserta en BD.
        """
        user = controladorUsuario.getUsuarioLogeado(self)
        idLogueado = str(controladorUsuario.getKey(user))
        nombre = self.request.get('nombre')
        hora = self.request.get('hora')
        fecha = self.request.get('fecha')
        descripcion = self.request.get('descripcion').strip()
        lugar = self.request.get('lugar')
        asistencia = self.request.get('asistencia')
        lat = self.request.get('latitud')
        lon = self.request.get('longitud')
        privado = self.request.get('privado')
        idCreador = self.request.get('idUser')
        userT = self.request.get('userT')

        ret = controladorEvento.SetEvento(nombre, userT, privado, idCreador, hora, fecha, lugar, lat, lon, descripcion, asistencia)

        if userT == '1':
            controladorUsuario.setEventoId(ret, idLogueado)
        else:
            controladorOrganizacion.setEventoId(ret, idCreador)

        # Aquí se avisaría por email
        resp = {'response': True, 'idEvento': ret}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #3
0
    def post(self):
        """
        Por POST recoge los datos del formulario del nuevo evento, y inserta en BD.
        """
        user = controladorUsuario.getUsuarioLogeado(self)
        idLogueado = str(controladorUsuario.getKey(user))
        nombre = self.request.get('nombre')
        hora = self.request.get('hora')
        fecha = self.request.get('fecha')
        descripcion = self.request.get('descripcion').strip()
        lugar = self.request.get('lugar')
        asistencia = self.request.get('asistencia')
        lat = self.request.get('latitud')
        lon = self.request.get('longitud')
        privado = self.request.get('privado')
        idCreador = self.request.get('idUser')
        userT = self.request.get('userT')

        ret = controladorEvento.SetEvento(nombre, userT, privado, idCreador,
                                          hora, fecha, lugar, lat, lon,
                                          descripcion, asistencia)

        if userT == '1':
            controladorUsuario.setEventoId(ret, idLogueado)
        else:
            controladorOrganizacion.setEventoId(ret, idCreador)

        # Aquí se avisaría por email
        resp = {'response': True, 'idEvento': ret}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #4
0
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idPonente = self.request.get('id')
        p = []

        if user == False:
            self.redirect('/login')

        else:
            if str(idPonente) in user.ponentes:
                p = controladorPonente.getPonenteById(idPonente)

            elif user.organizacion:
                o = controladorOrganizacion.getOrganizacion(user.organizacion)
                if str(idPonente) in o.ponentes:
                    p = controladorPonente.getPonenteById(idPonente)

            else:
                self.redirect('/')

            template_values = {'usuario': user, 'info': info, 'ponente': p}

            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateModificarPonente.html')
            self.response.write(template.render(template_values))
예제 #5
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """
        Devuelve la plantilla con los datos de usuario.
        Se pasan los datos:
            - objeto Usuario : usuario logueado
            - numeroEventos : numero de eventos activos de este usuario
        """
        info = getInfo(self)
        #Obtenemos si el usuario está logeado. En caso de no estarlo se redirección a otra
        usuario = controladorUsuario.getUsuarioLogeado(self)
        if usuario == False:
            self.redirect("/login")

        else:
            userLogin = True
            numeroEventos = controladorUsuario.getEventosAsociadosCount(controladorUsuario.getKey(usuario))
            #Obtenemos su organización en caso de pertenecer a una
            orgId = controladorUsuario.getOrganizacion(str(controladorUsuario.getKey(usuario)))
            org = []
            if orgId:
                org = controladorOrganizacion.getOrganizacion(orgId)

            template_values = {
              'usuario': usuario,
              'organizacion': org,
              'info': info
            }
            template = JINJA_ENVIRONMENT.get_template('templates/templateUser.html')
            self.response.write(template.render(template_values))
예제 #6
0
    def get(self):
        """
        Devuelve la plantilla con los datos de usuario.
        Se pasan los datos:
            - objeto Usuario : usuario logueado
            - numeroEventos : numero de eventos activos de este usuario
        """
        info = getInfo(self)
        #Obtenemos si el usuario está logeado. En caso de no estarlo se redirección a otra
        usuario = controladorUsuario.getUsuarioLogeado(self)
        if usuario == False:
            self.redirect("/login")

        else:
            userLogin = True
            numeroEventos = controladorUsuario.getEventosAsociadosCount(
                controladorUsuario.getKey(usuario))
            #Obtenemos su organización en caso de pertenecer a una
            orgId = controladorUsuario.getOrganizacion(
                str(controladorUsuario.getKey(usuario)))
            org = []
            if orgId:
                org = controladorOrganizacion.getOrganizacion(orgId)

            template_values = {
                'usuario': usuario,
                'organizacion': org,
                'info': info
            }
            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateUser.html')
            self.response.write(template.render(template_values))
예제 #7
0
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idCuenta = self.request.get('id')
        cuenta = controladorUsuario.getUsuarioById(idCuenta)
        o = []
        eventosU = []

        if cuenta == False:
            self.redirect('/login')
        else:
            for ide in cuenta.eventos:
                eventosU.append(controladorEvento.GetEventoById(ide))
            for e in eventosU:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if cuenta.organizacion:
                o = controladorOrganizacion.getOrganizacion(
                    cuenta.organizacion)

            template_values = {
                'usuario': user,
                'info': info,
                'cuenta': cuenta,
                'organizacion': o,
                'eventosU': eventosU,
            }

            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateCuenta.html')
            self.response.write(template.render(template_values))
예제 #8
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idPonente = self.request.get('id')
        p = []

        if user == False:
            self.redirect('/login')

        else:
            if str(idPonente) in user.ponentes:
                p = controladorPonente.getPonenteById(idPonente)

            elif user.organizacion:
                o = controladorOrganizacion.getOrganizacion(user.organizacion)
                if str(idPonente) in o.ponentes:
                    p = controladorPonente.getPonenteById(idPonente)

            else:
                self.redirect('/')

            template_values = {
              'usuario': user,
              'info': info,
              'ponente': p
            }

            template = JINJA_ENVIRONMENT.get_template('templates/templateModificarPonente.html')
            self.response.write(template.render(template_values))
예제 #9
0
    def get(self):
        """
        Desde llamada Get:
        Si el usuario está logueado se devuelve la plantilla con el formulario para crear el evento
        Si el usuario no está logueado se le redirige a /login
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idEvent = self.request.get('id')
        event = controladorEvento.GetEventoById(idEvent)

        if user == False:
            self.redirect('/login')
        else:
            #Comprueba si el usuario pertenece a alguna organización
            orgId = controladorUsuario.getOrganizacion(
                str(controladorUsuario.getKey(user)))
            org = []
            if orgId:
                org = controladorOrganizacion.getOrganizacion(orgId)

            template_values = {
                'usuario': user,
                'organizacion': org,
                'info': info,
                'evento': event
            }
            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateUpdateEvent.html')
            self.response.write(template.render(template_values))
예제 #10
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idCuenta = self.request.get('id')
        cuenta = controladorUsuario.getUsuarioById(idCuenta)
        o = []
        eventosU = []

        if cuenta == False:
            self.redirect('/login')
        else:
            for ide in cuenta.eventos:
                eventosU.append(controladorEvento.GetEventoById(ide))
            for e in eventosU:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if cuenta.organizacion:
                o = controladorOrganizacion.getOrganizacion(cuenta.organizacion)

            template_values = {
              'usuario': user,
              'info': info,
              'cuenta': cuenta,
              'organizacion': o,
              'eventosU': eventosU,
            }

            template = JINJA_ENVIRONMENT.get_template('templates/templateCuenta.html')
            self.response.write(template.render(template_values))
예제 #11
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """
        Desde llamada Get:
        Si el usuario está logueado se devuelve la plantilla con el formulario para crear el evento
        Si el usuario no está logueado se le redirige a /login
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idEvent = self.request.get('id')
        event = controladorEvento.GetEventoById(idEvent)

        if user == False:
            self.redirect('/login')
        else:
            #Comprueba si el usuario pertenece a alguna organización
            orgId = controladorUsuario.getOrganizacion(str(controladorUsuario.getKey(user)))
            org = []
            if orgId:
                org = controladorOrganizacion.getOrganizacion(orgId)

            template_values = {
              'usuario': user,
              'organizacion': org,
              'info': info,
              'evento': event
            }
            template = JINJA_ENVIRONMENT.get_template('templates/templateUpdateEvent.html')
            self.response.write(template.render(template_values))
예제 #12
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """
        Devuelve el index en función del logueo del usuario.
        Si está logueado devuelve la plantilla con todos sus eventos
        Si no está logueado devuelve un landpage de presentación
        """
        info = getInfo(self)
        usuario = controladorUsuario.getUsuarioLogeado(self)
        organizacion = False
        organizacionEventos = []

        if usuario:
            eventos = []
            evs = controladorUsuario.getEventosAsociados(usuario.key.id())
            for ev in evs:
                eventos.append(controladorEvento.GetEventoById(ev))
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if usuario.organizacion:
                organizacion = True
                org = controladorOrganizacion.getOrganizacion(usuario.organizacion)
                for evo in org.eventos:
                    organizacionEventos.append(controladorEvento.GetEventoById(evo))
                for e in organizacionEventos:
                    if len(e.descripcion) > 200:
                        sec = [e.descripcion[:200], '...']
                        e.descripcion = ''.join(sec)

            template_values = {
              'eventos': eventos,
              'usuario': usuario,
              'info': info,
              'organizacion': organizacion,
              'eventosOrg': organizacionEventos
            }

            template = JINJA_ENVIRONMENT.get_template('templates/templateMyEvents.html')
            self.response.write(template.render(template_values))
        else:
            #Obtenemos los tres proximos eventos a partir de la fecha actual
            eventos = controladorEvento.getUltimosEventos(3)
            #Acortamos descripcion, titulo y lugar para ajustar los contenedores a la misma altura de manera elegante.
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)
                if len(e.nombre) > 35:
                    sec = [e.nombre[:35], '...']
                    e.nombre = ''.join(sec)
                if len(e.lugar) > 45:
                    sec = [e.lugar[:45], '...']
                    e.lugar = ''.join(sec)
            template_values = {'eventos': eventos}
            template = JINJA_ENVIRONMENT.get_template('templates/land.html')
            self.response.write(template.render(template_values))
예제 #13
0
    def post(self):
        user = controladorUsuario.getUsuarioLogeado(self)
        idP = self.request.get('idP').strip()

        if str(idP) in user.ponentes:
            logging.getLogger().setLevel(logging.DEBUG)
            logging.error(user.ponentes)
            controladorUsuario.deletePonente(idP, user.getKey())
            self.response.write(json.dumps({'response': 'true'}))
예제 #14
0
파일: index.py 프로젝트: evenge/EVENGE
    def post(self):
        user = controladorUsuario.getUsuarioLogeado(self)
        idP = self.request.get('idP').strip()

        if str(idP) in user.ponentes:
            logging.getLogger().setLevel(logging.DEBUG)
            logging.error(user.ponentes)
            controladorUsuario.deletePonente(idP, user.getKey())
            self.response.write(json.dumps({'response': 'true'}))
예제 #15
0
파일: index.py 프로젝트: evenge/EVENGE
 def post(self):
     u = controladorUsuario.getUsuarioLogeado(self)
     nombre = self.request.get("nombre").strip()
     apellidos = self.request.get("apellidos").strip()
     telefono = self.request.get("telefono").strip()
     twitter = self.request.get("twitter").strip()
     ciudad = self.request.get("ciudad").strip()
     web = self.request.get("web").strip()
     controladorUsuario.modificarUsuario(nombre, apellidos, telefono, twitter, web, ciudad, u.getKey())
     self.response.write(json.dumps({'response': 'true'}))
예제 #16
0
파일: index.py 프로젝트: evenge/EVENGE
 def get(self):
     """
     Muestra el formulario de registro de nuevo usuario
     """
     user = controladorUsuario.getUsuarioLogeado(self)
     if user:
         self.redirect("/micuenta")
     else:
         template_values = {}
         template = JINJA_ENVIRONMENT.get_template('templates/templatesNewUser.html')
         self.response.write(template.render(template_values))
예제 #17
0
 def post(self):
     u = controladorUsuario.getUsuarioLogeado(self)
     nombre = self.request.get("nombre").strip()
     apellidos = self.request.get("apellidos").strip()
     telefono = self.request.get("telefono").strip()
     twitter = self.request.get("twitter").strip()
     ciudad = self.request.get("ciudad").strip()
     web = self.request.get("web").strip()
     controladorUsuario.modificarUsuario(nombre, apellidos, telefono,
                                         twitter, web, ciudad, u.getKey())
     self.response.write(json.dumps({'response': 'true'}))
예제 #18
0
    def get(self):
        """Pasa a plantilla un evento del usuario identificado por un id,
            recibido por GET en la variable idEvento.
            La información a la plantilla es:
            - objeto Evento
            - Usuario logueado : true o false
            - Usuario Creador
            - id del evento
            - numero de eventos del usuario
            - objeto Usuario (logeado en este momento)
            - asistentes : Vector de objetos Asistente, correspondiente al evento

        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idEvento = self.request.get('id')
        evento = controladorEvento.GetEventoById(idEvento)
        org = []
        organizadorNombre = []
        userCreador = False
        ponentes = []

        for p in evento.ponentes:
            ponentes.append(controladorPonente.getPonenteById(p))

        if user:
            if str(controladorUsuario.getKey(user)) == str(evento.idCreador):
                userCreador = True
            elif str(user.organizacion) == str(evento.idCreador):
                userCreador = True

        if evento.tipo == "1":
            organizador = controladorUsuario.getUsuarioById(evento.idCreador)
            organizadorNombre = organizador.nombre + ' ' + organizador.apellidos
        else:
            organizador = controladorOrganizacion.getOrganizacion(
                evento.idCreador)
            organizadorNombre = organizador.nombre

        template_values = {
            'evento': evento,
            'descripcion': evento.descripcion.replace("\n", "<br />"),
            'organizador': org,
            'organizadorNombre': organizadorNombre,
            'userCreador': userCreador,
            'usuario': user,
            'info': info,
            'ponentes': ponentes
        }

        template = JINJA_ENVIRONMENT.get_template(
            'templates/templateEvents.html')
        self.response.write(template.render(template_values))
예제 #19
0
 def get(self):
     """
     Muestra el formulario de registro de nuevo usuario
     """
     user = controladorUsuario.getUsuarioLogeado(self)
     if user:
         self.redirect("/micuenta")
     else:
         template_values = {}
         template = JINJA_ENVIRONMENT.get_template(
             'templates/templatesNewUser.html')
         self.response.write(template.render(template_values))
예제 #20
0
파일: index.py 프로젝트: evenge/EVENGE
 def post(self):
     """
     Recibe el id del evento a borrar por post, y lo borra de la BD
     """
     user = controladorUsuario.getUsuarioLogeado(self)
     idEvento = self.request.get('id')
     if user is False:
         self.redirect("/")
     else:
         ret = controladorEvento.deleteEvento(idEvento)
         resp = {'response': ret}
         self.response.headers['Content-Type'] = 'application/json'
         self.response.write(json.dumps(resp))
예제 #21
0
 def post(self):
     """
     Recibe el id del evento a borrar por post, y lo borra de la BD
     """
     user = controladorUsuario.getUsuarioLogeado(self)
     idEvento = self.request.get('id')
     if user is False:
         self.redirect("/")
     else:
         ret = controladorEvento.deleteEvento(idEvento)
         resp = {'response': ret}
         self.response.headers['Content-Type'] = 'application/json'
         self.response.write(json.dumps(resp))
예제 #22
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """Pasa a plantilla un evento del usuario identificado por un id,
            recibido por GET en la variable idEvento.
            La información a la plantilla es:
            - objeto Evento
            - Usuario logueado : true o false
            - Usuario Creador
            - id del evento
            - numero de eventos del usuario
            - objeto Usuario (logeado en este momento)
            - asistentes : Vector de objetos Asistente, correspondiente al evento

        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        idEvento = self.request.get('id')
        evento = controladorEvento.GetEventoById(idEvento)
        org = []
        organizadorNombre = []
        userCreador = False
        ponentes = []

        for p in evento.ponentes:
            ponentes.append(controladorPonente.getPonenteById(p))

        if user:
            if str(controladorUsuario.getKey(user)) == str(evento.idCreador):
                userCreador = True
            elif str(user.organizacion) == str(evento.idCreador):
                userCreador = True

        if evento.tipo == "1":
            organizador = controladorUsuario.getUsuarioById(evento.idCreador)
            organizadorNombre = organizador.nombre + ' ' + organizador.apellidos
        else:
            organizador = controladorOrganizacion.getOrganizacion(evento.idCreador)
            organizadorNombre = organizador.nombre

        template_values = {
          'evento': evento,
          'descripcion': evento.descripcion.replace("\n", "<br />"),
          'organizador': org,
          'organizadorNombre': organizadorNombre,
          'userCreador': userCreador,
          'usuario': user,
          'info': info,
          'ponentes': ponentes
        }

        template = JINJA_ENVIRONMENT.get_template('templates/templateEvents.html')
        self.response.write(template.render(template_values))
예제 #23
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        idOrg = self.request.get('id')
        email = self.request.get('email')
        user = controladorUsuario.getUsuarioLogeado(self)

        if not user:
            self.redirect('/login')
        else:
            if str(user.email) != str(email):
                self.redirect('/error')
            else:
                controladorOrganizacion.deleteInvitacion(idOrg, email)
                controladorOrganizacion.setUsuarioOrganizacion(idOrg, user.getKey())
                controladorUsuario.setOrganizacion(idOrg, user.getKey())
                self.redirect('/micuenta')
예제 #24
0
    def get(self):
        idOrg = self.request.get('id')
        email = self.request.get('email')
        user = controladorUsuario.getUsuarioLogeado(self)

        if not user:
            self.redirect('/login')
        else:
            if str(user.email) != str(email):
                self.redirect('/error')
            else:
                controladorOrganizacion.deleteInvitacion(idOrg, email)
                controladorOrganizacion.setUsuarioOrganizacion(
                    idOrg, user.getKey())
                controladorUsuario.setOrganizacion(idOrg, user.getKey())
                self.redirect('/micuenta')
예제 #25
0
    def get(self):
        """
        Desde llamada Get:
        Si el usuario está logueado se devuelve la plantilla con el formulario para crear un ponente
        Si el usuario no está logueado se le redirige a /login
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        if user is False:
            self.redirect('/login')
        else:

            template_values = {'info': info, 'usuario': user}
            template = JINJA_ENVIRONMENT.get_template(
                'templates/templatesNewPonente.html')
            self.response.write(template.render(template_values))
예제 #26
0
파일: index.py 프로젝트: evenge/EVENGE
def getInfo(self):
    #obtenemos el usuario logueado si lo esta
    user = controladorUsuario.getUsuarioLogeado(self)
    #creamos el diccionaro para las variables. Las inicializamos a False que serán su valor predeterminado
    info = {
      'gravatar': False,
      'userLogin': False,
      'numeroEventos': False,
      'numeroPonetes': False
    }
    #Comprobamos si el usuario está logueado o es False
    if user:
        info['numeroEventos'] = controladorUsuario.getEventosAsociadosCount(controladorUsuario.getKey(user))
        info['numeroPonentes'] = controladorUsuario.getPonentesAsociadosCount(controladorUsuario.getKey(user))
        info['userLogin'] = True
        info['gravatar'] = user.nombre[0:1] + user.apellidos[0:1]

    return info
예제 #27
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        if user is False:
            self.redirect('/login')
        else:
            ponentesList = controladorUsuario.getPonentes(controladorUsuario.getKey(user))
            ponentes = []
            for p in ponentesList:
                ponentes.append(controladorPonente.getPonenteById(p))

            template_values = {
              'ponentes': ponentes,
              'info': info,
              'usuario': user
            }
            template = JINJA_ENVIRONMENT.get_template('templates/templatePonentes.html')
            self.response.write(template.render(template_values))
예제 #28
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """
        Desde llamada Get:
        Si el usuario está logueado se devuelve la plantilla con el formulario para crear un ponente
        Si el usuario no está logueado se le redirige a /login
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        if user is False:
            self.redirect('/login')
        else:

            template_values = {
              'info': info,
              'usuario': user
            }
            template = JINJA_ENVIRONMENT.get_template('templates/templatesNewPonente.html')
            self.response.write(template.render(template_values))
예제 #29
0
파일: index.py 프로젝트: evenge/EVENGE
    def post(self):
        """
        Recibe los datos de la nueva organización, la crea e inscribe al usuario.
        """
        user = controladorUsuario.getUsuarioLogeado(self)

        if user is False:
            self.response.write(json.dumps({'response': 'false'}))
        else:
            nombre = self.request.get('nombre').strip()
            mail = self.request.get('email').strip()
            twitter = self.request.get('twitter').strip()
            tel = self.request.get('telefono').strip()
            web = self.request.get('web').strip()
            idOrganizacion = controladorOrganizacion.setOrganizacion(nombre, mail, tel, twitter, web)
            controladorOrganizacion.setUsuarioOrganizacion(idOrganizacion, user.key.id())
            controladorUsuario.setOrganizacion(idOrganizacion, user.key.id())

            self.response.write(json.dumps({'response': 'true'}))
예제 #30
0
파일: index.py 프로젝트: evenge/EVENGE
    def post(self):
        """Inserta un nuevo ponente con los datos recogidos"""
        user = controladorUsuario.getUsuarioLogeado(self)
        nombre = self.request.get("nombre").strip()
        apellidos = self.request.get("apellidos").strip()
        email = self.request.get("email").strip()
        telefono = self.request.get("tlf").strip()
        twitter = self.request.get("twitter").strip()
        web = self.request.get("web").strip()
        descripcion = self.request.get("descripcion").strip()
        guardar = self.request.get("guardar").strip()
        idNuevoPonente = controladorPonente.setPonente(nombre, apellidos, email, telefono, twitter, web, descripcion)
        controladorUsuario.setPonenteId(str(controladorUsuario.getKey(user)), idNuevoPonente)
        if str(guardar) == '1':
            controladorEvento.setPonente(idNuevoPonente, self.request.get("idEvento").strip())

        resp = {'response': True, 'p': idNuevoPonente}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #31
0
    def get(self):
        """
        Muestra TODOS los eventos asociados al usuario logueado en este momento.
        Se pasan los datos:
            - vector Eventos : Colección de todos los objeto Evento del usuario
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        organizacion = False
        organizacionEventos = []

        if user:
            eventos = controladorUsuario.getEventosAsociados(user.key.id())
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if user.organizacion:
                organizacion = True
                org = controladorOrganizacion.getOrganizacion(
                    user.organizacion)
                for evo in org.eventos:
                    organizacionEventos.append(
                        controladorEvento.getEventoById(evo))

            template_values = {
                'eventos': eventos,
                'usuario': user,
                'info': info,
                'organizacion': organizacion,
                'eventosOrg': organizacionEventos
            }

            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateMyEvents.html')
            self.response.write(template.render(template_values))

        else:
            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateLogin.html')
            self.response.write(template.render(template_values))
예제 #32
0
def getInfo(self):
    #obtenemos el usuario logueado si lo esta
    user = controladorUsuario.getUsuarioLogeado(self)
    #creamos el diccionaro para las variables. Las inicializamos a False que serán su valor predeterminado
    info = {
        'gravatar': False,
        'userLogin': False,
        'numeroEventos': False,
        'numeroPonetes': False
    }
    #Comprobamos si el usuario está logueado o es False
    if user:
        info['numeroEventos'] = controladorUsuario.getEventosAsociadosCount(
            controladorUsuario.getKey(user))
        info['numeroPonentes'] = controladorUsuario.getPonentesAsociadosCount(
            controladorUsuario.getKey(user))
        info['userLogin'] = True
        info['gravatar'] = user.nombre[0:1] + user.apellidos[0:1]

    return info
예제 #33
0
    def get(self):
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        if user is False:
            self.redirect('/login')
        else:
            ponentesList = controladorUsuario.getPonentes(
                controladorUsuario.getKey(user))
            ponentes = []
            for p in ponentesList:
                ponentes.append(controladorPonente.getPonenteById(p))

            template_values = {
                'ponentes': ponentes,
                'info': info,
                'usuario': user
            }
            template = JINJA_ENVIRONMENT.get_template(
                'templates/templatePonentes.html')
            self.response.write(template.render(template_values))
예제 #34
0
    def post(self):
        """
        Recibe los datos de la nueva organización, la crea e inscribe al usuario.
        """
        user = controladorUsuario.getUsuarioLogeado(self)

        if user is False:
            self.response.write(json.dumps({'response': 'false'}))
        else:
            nombre = self.request.get('nombre').strip()
            mail = self.request.get('email').strip()
            twitter = self.request.get('twitter').strip()
            tel = self.request.get('telefono').strip()
            web = self.request.get('web').strip()
            idOrganizacion = controladorOrganizacion.setOrganizacion(
                nombre, mail, tel, twitter, web)
            controladorOrganizacion.setUsuarioOrganizacion(
                idOrganizacion, user.key.id())
            controladorUsuario.setOrganizacion(idOrganizacion, user.key.id())

            self.response.write(json.dumps({'response': 'true'}))
예제 #35
0
파일: index.py 프로젝트: evenge/EVENGE
    def get(self):
        """
        Muestra TODOS los eventos asociados al usuario logueado en este momento.
        Se pasan los datos:
            - vector Eventos : Colección de todos los objeto Evento del usuario
        """
        info = getInfo(self)
        user = controladorUsuario.getUsuarioLogeado(self)
        organizacion = False
        organizacionEventos = []

        if user:
            eventos = controladorUsuario.getEventosAsociados(user.key.id())
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if user.organizacion:
                organizacion = True
                org = controladorOrganizacion.getOrganizacion(user.organizacion)
                for evo in org.eventos:
                    organizacionEventos.append(controladorEvento.getEventoById(evo))

            template_values = {
              'eventos': eventos,
              'usuario': user,
              'info': info,
              'organizacion': organizacion,
              'eventosOrg': organizacionEventos
            }

            template = JINJA_ENVIRONMENT.get_template('templates/templateMyEvents.html')
            self.response.write(template.render(template_values))

        else:
            template = JINJA_ENVIRONMENT.get_template('templates/templateLogin.html')
            self.response.write(template.render(template_values))
예제 #36
0
파일: index.py 프로젝트: evenge/EVENGE
    def post(self):
        """
        Por POST recoge los datos del formulario del evento, y modifica en BD.
        """
        idE = self.request.get('idE')
        user = controladorUsuario.getUsuarioLogeado(self)
        idLogueado = str(controladorUsuario.getKey(user))
        nombre = self.request.get('nombre')
        hora = self.request.get('hora')
        fecha = self.request.get('fecha')
        descripcion = self.request.get('descripcion').strip()
        lugar = self.request.get('lugar')
        asistencia = self.request.get('asistencia')
        lat = self.request.get('latitud')
        lon = self.request.get('longitud')
        privado = self.request.get('privado')
        idCreador = self.request.get('idUser')
        userT = self.request.get('userT')

        resp = controladorEvento.updateEvento(idE, nombre, userT, privado, hora, fecha, lugar, lat, lon, descripcion, asistencia)

        resp = {'response': True, 'idEvento': idE}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #37
0
    def post(self):
        """Inserta un nuevo ponente con los datos recogidos"""
        user = controladorUsuario.getUsuarioLogeado(self)
        nombre = self.request.get("nombre").strip()
        apellidos = self.request.get("apellidos").strip()
        email = self.request.get("email").strip()
        telefono = self.request.get("tlf").strip()
        twitter = self.request.get("twitter").strip()
        web = self.request.get("web").strip()
        descripcion = self.request.get("descripcion").strip()
        guardar = self.request.get("guardar").strip()
        idNuevoPonente = controladorPonente.setPonente(nombre, apellidos,
                                                       email, telefono,
                                                       twitter, web,
                                                       descripcion)
        controladorUsuario.setPonenteId(str(controladorUsuario.getKey(user)),
                                        idNuevoPonente)
        if str(guardar) == '1':
            controladorEvento.setPonente(idNuevoPonente,
                                         self.request.get("idEvento").strip())

        resp = {'response': True, 'p': idNuevoPonente}
        self.response.headers['Content-Type'] = 'application/json'
        self.response.write(json.dumps(resp))
예제 #38
0
파일: index.py 프로젝트: evenge/EVENGE
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     idE = self.request.get('idE').strip()
     dni = self.request.get('dni').strip()
     controladorEvento.confirmarAsistente(idE, dni)
     self.response.write(json.dumps({'response': 'true'}))
예제 #39
0
파일: index.py 프로젝트: evenge/EVENGE
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     img = self.request.get("imgO")
     controladorOrganizacion.setImage(img, user.organizacion)
예제 #40
0
파일: index.py 프로젝트: evenge/EVENGE
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     img = self.request.get("imgU")
     controladorUsuario.setImage(img, user.getKey())
예제 #41
0
    def get(self):
        """
        Devuelve el index en función del logueo del usuario.
        Si está logueado devuelve la plantilla con todos sus eventos
        Si no está logueado devuelve un landpage de presentación
        """
        info = getInfo(self)
        usuario = controladorUsuario.getUsuarioLogeado(self)
        organizacion = False
        organizacionEventos = []

        if usuario:
            eventos = []
            evs = controladorUsuario.getEventosAsociados(usuario.key.id())
            for ev in evs:
                eventos.append(controladorEvento.GetEventoById(ev))
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)

            if usuario.organizacion:
                organizacion = True
                org = controladorOrganizacion.getOrganizacion(
                    usuario.organizacion)
                for evo in org.eventos:
                    organizacionEventos.append(
                        controladorEvento.GetEventoById(evo))
                for e in organizacionEventos:
                    if len(e.descripcion) > 200:
                        sec = [e.descripcion[:200], '...']
                        e.descripcion = ''.join(sec)

            template_values = {
                'eventos': eventos,
                'usuario': usuario,
                'info': info,
                'organizacion': organizacion,
                'eventosOrg': organizacionEventos
            }

            template = JINJA_ENVIRONMENT.get_template(
                'templates/templateMyEvents.html')
            self.response.write(template.render(template_values))
        else:
            #Obtenemos los tres proximos eventos a partir de la fecha actual
            eventos = controladorEvento.getUltimosEventos(3)
            #Acortamos descripcion, titulo y lugar para ajustar los contenedores a la misma altura de manera elegante.
            for e in eventos:
                if len(e.descripcion) > 200:
                    sec = [e.descripcion[:200], '...']
                    e.descripcion = ''.join(sec)
                if len(e.nombre) > 35:
                    sec = [e.nombre[:35], '...']
                    e.nombre = ''.join(sec)
                if len(e.lugar) > 45:
                    sec = [e.lugar[:45], '...']
                    e.lugar = ''.join(sec)
            template_values = {'eventos': eventos}
            template = JINJA_ENVIRONMENT.get_template('templates/land.html')
            self.response.write(template.render(template_values))
예제 #42
0
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     img = self.request.get("imgU")
     controladorUsuario.setImage(img, user.getKey())
예제 #43
0
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     img = self.request.get("imgO")
     controladorOrganizacion.setImage(img, user.organizacion)
예제 #44
0
 def post(self):
     user = controladorUsuario.getUsuarioLogeado(self)
     idE = self.request.get('idE').strip()
     dni = self.request.get('dni').strip()
     controladorEvento.confirmarAsistente(idE, dni)
     self.response.write(json.dumps({'response': 'true'}))