예제 #1
0
def getPanelEstudiantesDocentes(page):
    if auth.authenticated():  # or not auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        Student.db = get_db()
        permisos = User.get_permisos(
            session['id'])  #Session user es el email unico del usuario
        if (page > Student.total_paginas_taller(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        lastpage = Student.getLastPageTaller(site_controller.get_pagination(),
                                             int(page))
        Docente.db = get_db()
        docente_responsable_taller = Docente.allDocenteTaller()
        estudiantes_talleres = Student.allEstudianteTallerPaginated(
            site_controller.get_pagination(), int(page))
        estudiantes = Student.all()
        return render_template(
            'auth/panel_components/alumnos_docentes.html',
            permisos=permisos,
            page=page,
            lastpage=lastpage,
            docente_responsable_taller=docente_responsable_taller,
            estudiantes_talleres=estudiantes_talleres,
            estudiantes=estudiantes)
    return redirect(url_for('auth_login'))
예제 #2
0
def getPanelDocentesTaller(page):
    if auth.authenticated():  # or not auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        Ciclo.db = get_db()
        Docente.db = get_db()
        permisos = User.get_permisos(
            session['id'])  #Session user es el email unico del usuario
        if (page > Docente.total_paginas_taller(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        lastpage = Docente.getLastPageDocenteTaller(
            site_controller.get_pagination(), int(page))
        ciclotalleres = Ciclo.allCicloTaller()
        docentes = Docente.all()
        docente_responsable_taller = Docente.allDocenteTallerPaginated(
            site_controller.get_pagination(), int(page))
        return render_template(
            'auth/panel_components/docentes_taller.html',
            permisos=permisos,
            page=page,
            lastpage=lastpage,
            ciclotalleres=ciclotalleres,
            docentes=docentes,
            docente_responsable_taller=docente_responsable_taller)
    return redirect(url_for('auth_login'))
예제 #3
0
def getPanelTalleres(page):
    if auth.authenticated():  # or not auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        Ciclo.db = get_db()
        Taller.db = get_db()
        permisos = User.get_permisos(
            session['id'])  #Session user es el email unico del usuario
        if (page > Taller.total_paginas(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        lastpage = Taller.getLastPage(site_controller.get_pagination(),
                                      int(page))
        talleres = Taller.all()
        ciclos = Ciclo.all()
        ciclotalleres = Taller.allCicloTallerPaginated(
            site_controller.get_pagination(), int(page))
        return render_template('auth/panel_components/talleres.html',
                               permisos=permisos,
                               page=page,
                               lastpage=lastpage,
                               talleres=talleres,
                               ciclos=ciclos,
                               ciclotalleres=ciclotalleres)
    return redirect(url_for('auth_login'))
예제 #4
0
def getNucleos(page):
    if auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        Nucleo.db = get_db()
        #Si se envia una pagina inexistente se aborta
        if (page > Nucleo.total_paginas(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        nucleos = Nucleo.allPaginated(site_controller.get_pagination(),
                                      int(page))
        fullnucleos = Nucleo.all()
        #Ultima pagina de paginado
        lastpage = Nucleo.getLastPage(site_controller.get_pagination(),
                                      int(page))
        return render_template(
            'auth/panel_components/nucleos.html',
            nombre=session['nombre'],
            apellido=session['apellido'],
            page=page,
            lastpage=lastpage,
            nucleos=nucleos,
            fullnucleos=fullnucleos,
        )
    else:
        return redirect(url_for('auth_login'))
예제 #5
0
def getPanelUsuarios(page):
    if auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        permisos = User.get_permisos(
            session['id'])  #Session user es el email unico del usuario
        lastpage = 1
        #Obtiene usuarios
        if (page > User.total_paginas(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        #Chequea si hubo busquedas
        #Se buscó solo nombre
        if forms.searchByFirstName(request.args).validate():
            usuarios = User.searchByUserName(request.args.get('solo_nombre'))
            #Se buscó solo activo
        elif forms.searchByActive(request.args).validate():
            usuarios = User.searchByActive(request.args.get('active'))
        else:
            usuarios = User.allPaginated(site_controller.get_pagination(),
                                         int(page))
            #Ultima pagina de paginado
            lastpage = User.getLastPage(site_controller.get_pagination(),
                                        int(page))
        #Obtiene roles
        Rol.db = get_db()
        roles_lista = Rol.all()
        return render_template('auth/panel_components/usuarios.html',
                               permisos=permisos,
                               usuarios=usuarios,
                               page=page,
                               lastpage=lastpage,
                               roles_lista=roles_lista)

    return redirect(url_for('auth_login'))
예제 #6
0
def getPanelDocentes(page):
    if auth.authenticated():
        #g.user = session['user'] #En la documentación no detallaban el por qué de esta lína, pero sí que era necesaria para las paginas restringidas
        #Obtiene permisos del usuario
        User.db = get_db()
        permisos = User.get_permisos(session['id'])
        #Obtiene docentes
        Docente.db = get_db()

        lastpage = 1
        #Si se envia una pagina inexistente se aborta
        if (page > Docente.total_paginas(
                site_controller.get_pagination())) or (not int(page) > 0):
            abort(404)
        #Chequea si hubo busquedas
        #Se buscó solo nombre
        if forms.searchByFirstName(request.args).validate():
            docentes = Docente.searchByFirstName(
                request.args.get('solo_nombre'))
            #Se buscó solo apellido
        elif forms.searchByLastName(request.args).validate():
            docentes = Docente.searchByLastName(
                request.args.get('solo_apellido'))
        elif forms.searchByBoth(request.args).validate():
            #Se buscó ambos
            docentes = Docente.searchByBoth(request.args.get('ambos_nombre'),
                                            request.args.get('ambos_apellido'))
            #No hubo busqueda
        else:
            docentes = Docente.allPaginated(site_controller.get_pagination(),
                                            int(page))
            #Ultima pagina de paginado
            lastpage = Docente.getLastPage(site_controller.get_pagination(),
                                           int(page))
        #Obtiene generos
        Genero.db = get_db()
        generos = Genero.all()
        #Obtiene la información de las apis
        localidades = getLocalidades()
        tipo_docs = getDocumentos()
        #Retorna el template
        return render_template('auth/panel_components/docentes.html',
                               permisos=permisos,
                               nombre=session['nombre'],
                               apellido=session['apellido'],
                               localidades=localidades,
                               tipo_docs=tipo_docs,
                               generos=generos,
                               docentes=docentes,
                               page=page,
                               lastpage=lastpage)
    return redirect(url_for('auth_login'))
예제 #7
0
def getPanelInstrumentos(page):
    if auth.authenticated():
        #Obtiene permisos del usuario
        User.db = get_db()
        if (User.tiene_permiso(session['id'], 'administrativo_index')):
            permisos = User.get_permisos(
                session['id'])  #Session user es el email unico del usuario
            #Obtiene estudiantes
            Instrumento.db = get_db()
            lastpage = 1
            #Si se envia una pagina inexistente se aborta
            if (page > Instrumento.total_paginas(
                    site_controller.get_pagination())) or (not int(page) > 0):
                abort(404)
            #Chequea si hubo busquedas
            #Se buscó instrumento
            if forms.searchByFirstName(request.args).validate():
                instrumentos = Instrumento.searchByName(
                    request.args.get('solo_nombre'))
                #No hubo busqueda
            else:
                instrumentos = Instrumento.allPaginated(
                    site_controller.get_pagination(), int(page))
                #Ultima pagina de paginado
                lastpage = Instrumento.getLastPage(
                    site_controller.get_pagination(), int(page))
            #Retorna el template
            return render_template('auth/panel_components/instrumentos.html',
                                   permisos=permisos,
                                   nombre=session['nombre'],
                                   apellido=session['apellido'],
                                   instrumentos=instrumentos,
                                   page=page,
                                   lastpage=lastpage)
        else:
            abort(401)
    else:
        return redirect(url_for('auth_login'))
예제 #8
0
def getPanelEstudiantes(page):
    if not authenticated(session):
        abort(401)
    #Obtiene permisos del usuario
    User.db = get_db()
    permisos = User.get_permisos(
        session['id'])  #Session user es el email unico del usuario
    #Obtiene estudiantes
    Student.db = get_db()
    lastpage = 1
    #Si se envia una pagina inexistente se aborta
    if (page > Student.total_paginas(
            site_controller.get_pagination())) or (not int(page) > 0):
        abort(404)
    #Chequea si hubo busquedas
    #Se buscó solo nombre
    if forms.searchByFirstName(request.args).validate():
        students = Student.searchByFirstName(request.args.get('solo_nombre'))
        #Se buscó solo apellido
    elif forms.searchByLastName(request.args).validate():
        students = Student.searchByLastName(request.args.get('solo_apellido'))
    elif forms.searchByBoth(request.args).validate():
        #Se buscó ambos
        students = Student.searchByBoth(request.args.get('ambos_nombre'),
                                        request.args.get('ambos_apellido'))
        #No hubo busqueda
    else:
        students = Student.allPaginated(site_controller.get_pagination(),
                                        int(page))
        #Ultima pagina de paginado
        lastpage = Student.getLastPage(site_controller.get_pagination(),
                                       int(page))
    #Obtiene niveles
    Nivel.db = get_db()
    niveles = Nivel.all()
    #Obtiene generos
    Genero.db = get_db()
    generos = Genero.all()
    #Obtiene escuelas
    Escuela.db = get_db()
    escuelas = Escuela.all()
    #Obtiene barrios
    Barrio.db = get_db()
    barrios = Barrio.all()
    #Obtiene responsables
    Responsable.db = get_db()
    responsables = Responsable.all()
    #Obtiene la información de las apis
    localidades = getLocalidades()
    tipo_docs = getDocumentos()
    #Retorna el template
    return render_template('auth/panel_components/alumnos.html',
                           permisos=permisos,
                           nombre=session['nombre'],
                           apellido=session['apellido'],
                           students=students,
                           localidades=localidades,
                           tipo_docs=tipo_docs,
                           niveles=niveles,
                           generos=generos,
                           escuelas=escuelas,
                           barrios=barrios,
                           responsables=responsables,
                           page=page,
                           lastpage=lastpage)