/** * método que realiza la busqueda */ public function buscar() { if ($ofertas = OfertaModel::buscar($_POST)) { // llamamamos a la vista que permitira ver los resultados $datos = ['ofertas' => $ofertas]; echo $this->view->render('ofertas/listaOfertas', $datos); } else { // Hay errores if (isset($_POST['busqueda'])) { $_POST['busqueda'] = Validaciones::limpiarString($_POST['busqueda']); $ofertas = OfertaModel::todas(); $datos = ['ofertas' => $ofertas, 'busqueda' => $_POST['busqueda']]; echo $this->view->render("ofertas/index", $datos); } else { // no se ha realizado busqueda alguna header('Location: /Oferta'); exit; } } }
/** * Método que valida los datos a insertar en la base de datos * @param Array $array Datos a validar * @return Boolean True = si los datos son validos, False = sino lo son */ public static function validar($array) { // Si exite el campo lo validamos // Validación del nombre if (isset($array['nombre'])) { if (($erro = Validaciones::validarNombre($array["nombre"], 50)) !== true) { Session::addArray('feedback_negative', $erro); } else { if (isset($array['id'])) { // cuando estamos editando $nombres = OfertaModel::getNombreNoRepetido($array['id']); if (!OfertaModel::compararNombre($nombres, $array['nombre'])) { Session::add('feedback_negative', 'La oferta ya exite'); } } else { // cuando estamos insertando if (OfertaModel::getNombre($array['nombre'])) { Session::add('feedback_negative', 'El nombre ya existe'); } } } } else { Session::add('feedback_negative', 'El nombre no ha sido recicibido'); } // fin de las validaciones del nombre // Validación del descripcion if (isset($array['descripcion'])) { $array['descripcion'] = Validaciones::limpiarTextarea($array['descripcion']); if (($erro = Validaciones::validarDescripcion($array["descripcion"], 1000)) !== true) { Session::addArray('feedback_negative', $erro); } } else { Session::add('feedback_negative', 'La descripcion no ha sido recicibida'); } // Fin de la validación del descripcion // Validación de los requisitos if (isset($array['requisitos'])) { $array['requisitos'] = Validaciones::limpiarTextarea($array['requisitos']); if (($erro = Validaciones::validarRequisitos($array["requisitos"], 1000)) !== true) { Session::addArray('feedback_negative', $erro); } } else { Session::add('feedback_negative', 'Los requisitos no han sido recicibidos'); } // Fin de la validación de los requisitos // Validación de la url if (isset($array['url'])) { if (($erro = Validaciones::validarUrl($array["url"])) !== true) { Session::addArray('feedback_negative', $erro); } } else { Session::add('feedback_negative', 'La url no ha sido recicibida'); } // fin de las validaciones de la url // validamos el salario if (isset($array['salario'])) { if (($erro = Validaciones::validarSalario($array["salario"])) !== true) { Session::addArray('feedback_negative', $erro); } } else { Session::add('feedback_negative', 'El salario no ha sido recibido'); } // validamos la empresa if (isset($array['empresa']) || !empty($array['empresa'])) { $array['empresa'] = Validaciones::saneamiento($array['empresa']); if (!OfertaModel::getIdEmpresaByNombre($array['empresa'])) { Session::add('feedback_negative', 'La empresa no existe'); } else { $empresa = OfertaModel::getIdEmpresaByNombre($array['empresa']); Session::set('empresa', $empresa); Session::set('selected', $array['empresa']); } } else { Session::add('feedback_negative', 'La empresa no ha sido seleccionada, o quizás no tenga ninguna'); } // Comprobación de de que no haya habido errores return Session::comprobarErrores(); }