/** * Edita un horario habitual del usuario. Verifica que estén presente * todos los campos y sean correctos. Controla que no haya superposición de * horarios. Imprime los resultados. */ private function editarHorarioHabitual() { if (isset($_REQUEST['idHorarioHabitual']) && isset($_REQUEST['dia']) && isset($_REQUEST['ingreso']) && isset($_REQUEST['egreso'])) { // Obtiene el horario para editar solo los campos necesarios $this->horario = $this->gestorHorarios->getHorarioHabitual($_REQUEST['idHorarioHabitual']); $this->horario->setUsuario($this->usuario); $this->horario->setDia(new DiaSemana($_REQUEST['dia'])); $this->horario->setIngreso($_REQUEST['ingreso']); $this->horario->setEgreso($_REQUEST['egreso']); $horariosSuperpuestos = $this->gestorHorarios->getHorariosHabitualesSuperpuestos($this->horario); if (empty($horariosSuperpuestos)) { $this->gestorHorarios->modificarHorarioHabitual($this->horario); imprimirTabulados(5); echo '<div class="tablaTituloBotones">'; imprimirTabulados(6); echo '<h3>El horario:</h3>'; $horarios = array(); array_push($horarios, $this->horario); $tabla = new TablaHorariosHabitualesMovidos($horarios); $tabla->imprimir(); imprimirTabulados(6); echo '<h3>Ha sido editado exitosamente</h3>'; imprimirTabulados(5); echo '</div>'; } else { $this->imprimirHorariosSuperpuestos($horariosSuperpuestos); } } else { throw new Exception('No se especificó un parámetro'); } }
/** * Mueve un horario asignado al usuario. Verifica que estén presente * todos los campos y sean correctos. Controla que no haya superposición de * horarios. Imprime los resultados. */ private function moverHorario() { if (isset($_REQUEST['idHorario']) && isset($_REQUEST['fecha']) && isset($_REQUEST['ingreso']) && isset($_REQUEST['egreso'])) { // Obtiene el horario para editar solo los campos necesarios $this->horario = $this->gestorHorarios->getHorario($_REQUEST['idHorario']); $horarioViejo = new Horario(); $horarioViejo->copiar($this->horario); $this->horario->setUsuario($this->usuario); $this->horario->setFecha($_REQUEST['fecha']); $this->horario->setIngreso($_REQUEST['ingreso']); $this->horario->setEgreso($_REQUEST['egreso']); $horariosSuperpuestos = $this->gestorHorarios->getHorariosSuperpuestos($this->horario); if (empty($horariosSuperpuestos)) { $this->gestorHorarios->modificarHorario($this->horario); imprimirTabulados(5); echo '<div class="tablaTituloBotones">'; imprimirTabulados(6); echo '<h3>El horario:</h3>'; $horarios = array(); array_push($horarios, $horarioViejo); $tabla = new TablaHorariosAsignados($horarios); $tabla->imprimir(); imprimirTabulados(6); echo '<br /><h3>Ha sido movido exitosamente al horario:</h3>'; $horarios = array(); array_push($horarios, $this->horario); $tabla = new TablaHorariosAsignadosMovidos($horarios); $tabla->imprimir(); imprimirTabulados(5); echo '</div>'; } else { $this->imprimirHorariosSuperpuestos($horariosSuperpuestos); } } else { throw new Exception('No se especificó un parámetro'); } }