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 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 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"));
     }
 }