public function grupo($profesorevaluacion_id, $profesorasignatura_id) { $this->profesorevaluacion_id = $profesorevaluacion_id; $this->alumnoevaluacion = new Alumnoevaluacion(); $this->profesorasignatura_id = $profesorasignatura_id; $incripcionalumnoasignatura = new Incripcionalumnoasignatura(); $this->alumnos = $incripcionalumnoasignatura->find("conditions: profesorasignatura_id = '{$profesorasignatura_id}'", "join: inner join alumno on incripcionalumnoasignatura.alumno_id = alumno.id", "columns: alumno.*,incripcionalumnoasignatura.id as incripcionalumnoasignatura_id"); $profesorevaluacion = new Profesorevaluacion(); if (Input::haspost("alumnoevaluacion")) { $alumnoevaluacion = new Alumnoevaluacion(Input::post("alumnoevaluacion")); $registro = $alumnoevaluacion->validarRepetida(); if ($registro->ponderacion <= 20 and $registro->ponderacion >= 0) { # code... if ($registro->save()) { Flash::valid("Registro Guardado"); Input::delete(); } else { Flash::error("Error guardando registro"); } } else { Flash::error("La ponderacion debe ser mayor o igual a cero o menor o igual a 20"); } } $this->alumnos = $incripcionalumnoasignatura->find("conditions: profesorasignatura_id = '{$profesorasignatura_id}'", "join: inner join alumno on incripcionalumnoasignatura.alumno_id = alumno.id", "columns: alumno.*,incripcionalumnoasignatura.id as incripcionalumnoasignatura_id"); foreach ($this->alumnos as $key => $value) { $respuesta = $this->alumnoevaluacion->getPonderacionByIncripcionalumnoasignaturaIdYprofesorevaluacionId($value->incripcionalumnoasignatura_id, $this->profesorevaluacion_id); if ($respuesta === null) { $alumnoevaluacion_para_poner_en_cero = new Alumnoevaluacion(); $alumnoevaluacion_para_poner_en_cero->ponderacion = 0; $alumnoevaluacion_para_poner_en_cero->incripcionalumnoasignatura_id = $value->incripcionalumnoasignatura_id; $alumnoevaluacion_para_poner_en_cero->profesorevaluacion_id = $this->profesorevaluacion_id; $alumnoevaluacion_para_poner_en_cero->save(); } } $this->evaluacion = $profesorevaluacion->find($profesorevaluacion_id); /*este mecanismo lo aplique cuando me di cuenta que cuando se inscriben los alumnos en las evaluaciones del profesor tengo que poner las notas de cada uno en cero. Como aqui es donde se hace, en esta accion, entonces redirijo obligatoriamente para aca para que se haga y luego vuelvo a la anterior validando que no se repita el proceso con una variable de sesion*/ if (isset($_SESSION['KUMBIA_AUTH_IDENTITY'][Config::get('config.application.namespace_auth')]['se_actualizaran_notas_a_cero'])) { unset($_SESSION['KUMBIA_AUTH_IDENTITY'][Config::get('config.application.namespace_auth')]['se_actualizaran_notas_a_cero']); $_SESSION['KUMBIA_AUTH_IDENTITY'][Config::get('config.application.namespace_auth')]['notas_puestas_en_cero'] = 1; Router::redirect("perfil/programarevaluaciones/{$profesorasignatura_id}"); } }
public function eliminar_inscripcion($incripcionalumnoasignatura_id) { $incripcionalumnoasignatura = new Incripcionalumnoasignatura(); $alumnoevaluacion = new Alumnoevaluacion(); $inscripcion_eliminar = $incripcionalumnoasignatura->find($incripcionalumnoasignatura_id); if ($inscripcion_eliminar->delete()) { if ($alumnoevaluacion->delete("incripcionalumnoasignatura_id='{$incripcionalumnoasignatura_id}'")) { Flash::valid("Inscripcion Eliminada con las evaluaciones de esa inscripción"); } else { Flash::error("La inscripción se eliminó pero no se pudieron eliminar las evaluaciones de la inscripción"); } } else { Flash::error("No se pudo eliminar la inscripción"); } Router::redirect("evaluacion/inscripcion"); }
public function index() { $tipo = Auth::get("tipousuario"); if ($tipo == "alumno") { $incripcionalumnoasignatura = new Incripcionalumnoasignatura(); $profesorasignatura = new Profesorasignatura(); $alumnoasignatura = new Alumnoasignatura(); $profesorevaluacion = new Profesorevaluacion(); $alumnoevaluacion = new Alumnoevaluacion(); $this->alumnoevaluacion = $alumnoevaluacion; $id_alumno = Auth::get("id"); /*aqui esta la id del alumno y las materias inscritas*/ $this->materias_inscritas = $incripcionalumnoasignatura->find("conditions: alumno_id = '{$id_alumno}'"); $this->cursos = array(); $this->evaluaciones = array(); foreach ($this->materias_inscritas as $key => $value) { /*estos cursos tienen incripcionalumnoasignatura.id <--- importante seccion_id semestre_id asignatura_id profesor_id */ $this->cursos[] = $profesorasignatura->find("columns: asignatura.asignatura,\n profesorasignatura.seccion_id,\n profesorasignatura.semestre_id,\n profesorasignatura.asignatura_id,\n profesorasignatura.profesor_id", "conditions: profesorasignatura.id='" . $value->profesorasignatura_id . "'", "join: inner join asignatura on profesorasignatura.asignatura_id = asignatura.id"); /*esto contiene las evaluaciones programadas por el profesor profesorevaluacion.id <-- importante unidad tipoevaluacion porcentaje fecha */ $this->evaluaciones[] = $profesorevaluacion->find("conditions: profesorasignatura_id = '{$value->profesorasignatura_id}'"); } } if ($tipo == "docente") { $profesorasignatura = new Profesorasignatura(); /*aqui siempre viene un profesor... uno de la tabla profesor*/ $this->titulo = "Mis Salones"; $this->docente = 1; $this->asignaturas = $profesorasignatura->getAsignaturasByProfesorId(Auth::get("id")); } }