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'))
def delete(id_data): if not authenticated(session): abort(401) #Chequea permiso User.db = get_db() if (User.tiene_permiso(session['id'], 'estudiante_destroy')): Student.db = get_db() Student.delete(id_data) flash("Se eliminó el estudiante correctamente", 'success') return redirect(url_for('panel_estudiantes')) else: abort(401)
def delete(): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (User.has_permission(session['id'],'estudiante_destroy')): abort(401) else: Student.db = get_db() Student.delete(request.get_json()['student_id']) response_object = {'status': 'success', 'message': 'Se eliminó el estudiante'} return jsonify(response_object)
def create(): if not authenticated(session): abort(401) localidad_param = request.form['localidad'] resp = requests.get(api_localidad.url) localidades = resp.json() for localidad in localidades: if format(localidad['nombre']) == localidad_param: localidad_id = localidad['id'] break nivel = request.form["nivel"] nivel = Level.find_by_name(nivel) nivel_id = nivel.id genero = request.form["genero"] genero = Gender.find_by_name(genero) genero_id = genero.id escuela = request.form["escuela"] escuela = School.find_by_name(escuela) escuela_id = escuela.id tipodoc_param = request.form['tipo_doc'] resp = requests.get(api_tipo_documento.url) documentos = resp.json() for doc in documentos: if format(doc['nombre']) == tipodoc_param: tipo_doc_id = doc['id'] break barrio = request.form["barrio"] barrio = Neighborhood.find_by_name(barrio) barrio_id = barrio.id apellido = request.form['apellido'] nombre = request.form['nombre'] fecha_nac = request.form["fecha_nac"] domicilio = request.form["domicilio"] numero = request.form["numero"] tel = request.form["tel"] requestNew = (apellido, nombre, fecha_nac, localidad_id, nivel_id, domicilio, genero_id, escuela_id, tipo_doc_id, numero, tel, barrio_id) new_estudiante = to_estudiante(requestNew) Student.save(new_estudiante) return redirect(url_for('student_index'))
def update(): #Auth check auth.authenticated_or_401() if request.method == "POST": #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'],'estudiante_update')): abort(401) else: post_data = request.get_json() # if forms.ValidateStudent(request.form).validate(): Student.db = get_db() Student.update(post_data) response_object = {'status': 'success', 'message': 'Se actualizó el estudiante'} # else: # response_object = {'status': 'warning', 'message': 'Verifica los campos obligatorios y no ingreses valores no permitidos'} return jsonify(response_object)
def store(): if not authenticated(session): abort(401) #Chequea permiso User.db = get_db() if (User.tiene_permiso(session['id'], 'estudiante_new')): if request.method == "POST" and forms.ValidateStudent( request.form).validate(): Student.db = get_db() Student.store(request.form) flash("Estudiante agregado correctamente", 'success') else: flash( 'Verifica los campos obligatorios. No ingreses valores no permitidos', 'error') return redirect(url_for('panel_estudiantes')) else: abort(401)
def deleteEstudianteDocente(): if not authenticated(session): abort(401) #Chequea permiso User.db = get_db() if (User.tiene_permiso(session['id'], 'administrativo_destroy')): if request.method == "POST" and forms.ValidateEstudianteDocenteTallerDelete( request.form).validate(): Student.db = get_db() Student.deleteEstudianteTaller(request.form) flash("Se desasigno el estudiante del taller correctamente", 'success') else: flash( 'Verifica los campos obligatorios. No ingreses valores no permitidos', 'error') return redirect(url_for('panel_estudiantes_docentes')) else: abort(401)
def get(id_data): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (User.has_permission(session['id'],'estudiante_show')): Student.db = get_db() return jsonify(Student.get(id_data)) else: abort(401)
def all(): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (User.has_permission(session['id'],'estudiante_index')): Student.db = get_db() return jsonify(Student.all_reduced()) else: abort(401)
def students(lesson_id): #Auth check auth.authenticated_or_401() #Chequea permiso User.db = get_db() if (not User.has_permission(session['id'], 'asistencia_index')): abort(401) else: Student.db = get_db() return jsonify(Student.all_by_lesson(lesson_id))
def index(): estudiantes = Student.all() localidades = [] for estudiante in estudiantes: resp = requests.get(api_localidad.url + "/" + str(estudiante.localidad_id)) if resp.status_code != 200: localidades.append("Error al obtener la localidad") else: result = resp.json() localidades.append(format(result['nombre'])) return render_template('estudiante/index.html', estudiantes=estudiantes, localidades=localidades)
def get(self): filter = {} filter["apellido"] = request.args["apellido"] if not None else "" filter["numero"] = request.args["numero"] if not None else "" search = Student.search(filter) estudiantes = [] for est in search: e = { "id": est.id, "nombre": est.nombre, "apellido": est.apellido, "numero": est.numero } estudiantes.append(e) return build_response(estudiantes, estudiantes.__len__())
def getAsistencias(id_data): if auth.authenticated(): Clase.db = get_db() clase = Clase.findClass(id_data) Student.db = get_db() estudiantes = Student.findByClass(clase['id']) Asistencia.db = get_db() asistencias_estudiantes = Asistencia.getAsistencias(clase) return render_template( 'auth/panel_components/asistencias.html', clase=clase, estudiantes=estudiantes, asistencias_estudiantes=asistencias_estudiantes, ) else: return redirect(url_for('auth_login'))
def update(id): estudiante = Student.find_by_id(id) resp = requests.get(api_localidad.url + "/" + str(estudiante.localidad_id)) result = resp.json() localidad = format(result['nombre']) nivel = Level.find_by_id(estudiante.nivel_id) genero = Gender.find_by_id(estudiante.genero_id) resp = requests.get(api_tipo_documento.url + "/" + str(estudiante.tipo_doc_id)) result = resp.json() tipoDoc = format(result['nombre']) escuela = School.find_by_id(estudiante.escuela_id) barrio = Neighborhood.find_by_id(estudiante.barrio_id) resp = requests.get(api_localidad.url) localidades = [] if resp.status_code != 200: localidades.append("Error al obtener la localidad") else: localidades = resp.json() niveles = Level.all() generos = Gender.all() escuelas = School.all() barrios = Neighborhood.all() resp = requests.get(api_tipo_documento.url) tiposDoc = [] if resp.status_code != 200: tiposDoc.append("Error al obtener la localidad") else: tiposDoc = resp.json() return render_template('estudiante/update.html', estudiante=estudiante, localidad=localidad, localidades=localidades, tipoDoc=tipoDoc, tiposDoc=tiposDoc, nivel=nivel, niveles=niveles, genero=genero, generos=generos, escuela=escuela, escuelas=escuelas, barrio=barrio, barrios=barrios, id=estudiante.id)
def getPanelAsistencia(): if auth.authenticated(): #Obtiene permisos del usuario User.db = get_db() if (User.tiene_permiso(session['id'], 'horario_index')): permisos = User.get_permisos( session['id']) #Session user es el email unico del usuario Clase.db = get_db() clases = Clase.all() Student.db = get_db() estudiantes_talleres = Student.allEstudianteTaller() return render_template( 'auth/panel_components/asistencia.html', permisos=permisos, clases=clases, estudiantes_talleres=estudiantes_talleres, #docente_responsable_taller=docente_responsable_taller, ) else: abort(401) else: return redirect(url_for('auth_login'))
def save(self): self.responsables_saved = Form.save(self.responsables_forms) student = Student.create(self.values) return student
def delete(id): Student.delete_by_id(id) return redirect(url_for('student_index'))
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)