/** * Realiza las validaciones necesarias y agrega un nuevo período al sistema. * Informa errores mediante excepciones. */ private function agregarPeriodo() { if (isset($_REQUEST['nombre']) && isset($_REQUEST['area']) && isset($_REQUEST['fechaInicio']) && isset($_REQUEST['fechaFin']) && isset($_REQUEST['observaciones'])) { // Acciones ejecutadas $periodo = new Periodo(); $periodo->setNombre($_REQUEST['nombre']); $periodo->setArea($this->gestorAreas->getArea($_REQUEST['area'])); $periodo->setInicio($_REQUEST['fechaInicio']); $periodo->setFin($_REQUEST['fechaFin']); $periodo->setObservaciones($_REQUEST['observaciones']); // Impresion imprimirTabulados(5); echo '<div class="tablaTituloBotones">'; try { $this->gestorPeriodos->insertarPeriodo($periodo); imprimirTabulados(6); echo '<h3>El período ha sido agregado exitosamente</h3>'; } catch (Exception $excepcion) { imprimirTabulados(5); echo '<h2>Se produjo un error al procesar la solicitud:</h2><br />'; imprimirTabulados(5); echo '<h3>' . $excepcion->getMessage() . '</h3>'; } imprimirTabulados(5); echo '</div>'; $this->imprimirListaPeriodos(); } else { throw new Exception('No se especificó un parámetro'); } }