/** * Consigue el titulo del articulo cuyo archivo es guardado en nuestra DB con un nombre generico * @author Jorge * @param type $fichero * @return type string */ public static function get_titulo_articulo($fichero) { $nombre_tabla = 'articulos'; $tabla = \core\Modelo_SQL::get_prefix_tabla($nombre_tabla); $sql = 'select * from ' . $tabla . ' where manual = "' . $fichero . '"'; $titulos = \core\Modelo_SQL::execute($sql); return $titulos[0]['nombre']; }
/** * Función que envía un correo electrónico * @param array $datos */ public function enviar_mail(array $datos = array()) { $validacion_catcha = true; // Iniciamos la variable. if (\core\Configuracion::$form_insertar_externo_catcha) { require_once PATH_APP . 'lib/php/recaptcha-php-1.11/recaptchalib.php'; $privatekey = "6Lem1-sSAAAAAPfnSmYe5wyruyuj1B7001AJ3CBh"; $resp = recaptcha_check_answer($privatekey, $_SERVER["REMOTE_ADDR"], $_POST["recaptcha_challenge_field"], $_POST["recaptcha_response_field"]); if (!$resp->is_valid) { $validacion_catcha = false; $datos['errores']['validacion'] = 'Error de intruducción del captcha.'; // \core\Distribuidor::cargar_controlador("usuarios", "form_login", $datos); } } if (self::enviar_mail_validar($datos) && $validacion_catcha) { $_SESSION["mensaje"] = "Su mensaje ha sido enviado."; // Envío del email $to = \core\Configuracion::$email_info; $subject = \core\Array_Datos::contenido("asunto", $_REQUEST); $from = \core\Configuracion::$email_noreply; $mensaje = \core\Array_Datos::contenido("mensaje", $_REQUEST); $nombre = $datos["values"]["nombre"]; $responder_a = $datos["values"]["email"]; $login = \core\Usuario::$login; if ($login != 'anonimo') { $tabla_users = \core\Modelo_SQL::get_prefix_tabla('usuarios'); $sql = 'select * from ' . $tabla_users . ' where login = "******"'; $email_BD = \core\Modelo_SQL::execute($sql); $email_BD = $email_BD[0]['email']; } else { $email_BD = 'No disponible'; } $message = "\n<html>\n<head>\n<title>{$subject}</title>\n</head>\n<body>\n<div style='text-align:left;'>\n<h4>Mensaje de:</h4>\n<ul>\n <li>Nombre: {$nombre}</li>\n <li>Email de contacto dado: {$responder_a}</li>\n <li>Mensaje enviado por usuario: {$login}</li>\n <li>Email que figura en la base de datos: {$email_BD}</li>\n</ul>\n<h4><span style='text-decoration:underline;'/>Asunto:</span> {$subject}</h4>\n<p>{$mensaje}</p>\n</div>\n</body>\n</html>"; $additional_headers = "From: " . \core\Configuracion::$email_noreply . "\r\n"; $additional_headers .= 'MIME-Version: 1.0' . "\r\n"; $additional_headers .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $additional_headers .= 'X-Mailer: PHP/' . phpversion(); if ($envio_email = mail($to, $subject, $message, $additional_headers)) { $datos["mensaje"] = "Su mensaje ha sido enviado con el siguiente texto:<br/>{$message}"; } else { // Si falla el envío del email $datos["mensaje"] .= "No se ha podido enviar el mensaje."; } $this->cargar_controlador('mensajes', 'mensaje', $datos); } else { if (!$validacion_catcha) { usset($datos["errores"]); $datos["errores"]["validacion"] = "Errores en el código catcha."; } \core\Distribuidor::cargar_controlador("contacto", "index", $datos); } }
/** * Elimina los ficheros guardados en nuestra aplicación. * @author Jorge Rodríguez <*****@*****.**> * @param array $datos */ private static function borrar_files(array $datos) { $id = $datos["values"]['id']; $sql = 'select * from ' . \core\Modelo_SQL::get_prefix_tabla(self::$tabla) . ' where id = ' . $id; $fila = \core\Modelo_SQL::execute($sql); $foto = $fila[0]['foto']; $manual = $fila[0]['manual']; self::borrar_foto($foto); self::borrar_manual($manual); }
/** * Elimina los ficheros guardados en nuestra aplicación. * @author Jorge Rodríguez <*****@*****.**> * @param array $datos */ private static function borrar_files(array $datos) { $id = $datos["values"]['id']; $sql = 'select * from ' . \core\Modelo_SQL::get_prefix_tabla(self::$tabla) . ' where id = ' . $id; $fila = \core\Modelo_SQL::execute($sql); $foto = $fila[0]['escudo']; //$plano = $fila[0]['plano']; self::borrar_foto($foto); //self::borrar_manual($plano); //Borramos la carpeta creada al crear el inmueble para meter las fotos de los detalles $ficherosBienes_path = PATH_APPLICATION . "recursos" . DS . "ficheros" . DS . "bienes"; $nombre_carpeta = \modelos\ficheros::getNombreCarpeta($id); //$nombre_carpeta = substr($foto, 0, stripos($foto, '.' ) ); No funciona cuanod no existe la foto //var_dump($nombre_carpeta); \modelos\ficheros::borrarCarpeta($ficherosBienes_path, $nombre_carpeta); }
/** * Elimina un comentario enviado mediante un formulario * @author Jorge Rodriguez "Jergo" <*****@*****.**> * @param array $datos */ public function validar_form_eliminar_comentario(array $datos = array()) { self::request_come_by_post(); //Si viene por POST sigue adelante $validaciones = array("id" => "errores_requerido && errores_texto && errores_numero_entero_positivo && errores_referencia:id/" . self::$tabla2 . "/id", "usuario_login" => "errores_requerido && errores_texto", "comentario" => "errores_requerido && errores_texto"); if (!($validacion = !\core\Validaciones::errores_validacion_request($validaciones, $datos))) { //validaciones en PHP $datos["errores"]["errores_validacion"] = "Corrija los errores, por favor."; } else { //Cogemos el nombre del articulo antes de borrarlo, para luego poder mostrar la misma página $where = ' id = ' . $datos['values']['id']; $sql = 'select * from ' . \core\Modelo_SQL::get_prefix_tabla(self::$tabla2) . ' where ' . $where; $fila = \core\Modelo_SQL::execute($sql); $articulo_id = $fila[0]['articulo_id']; if (!($validacion = \modelos\Modelo_SQL::delete($datos["values"], self::$tabla2))) { // Devuelve true o false $datos["errores"]["errores_validacion"] = "No se han podido grabar los datos en la bd."; } } if (!$validacion) { //Devolvemos el formulario para que lo intente corregir de nuevo \core\Distribuidor::cargar_controlador(self::$controlador, 'editar_comentario', $datos); } else { // Se ha grabado la modificación. Devolvemos el control al la situacion anterior a la petición del form_modificar //$datos = array("alerta" => "Se han grabado correctamente los detalles"); // Definir el controlador que responderá después de la inserción //\core\Distribuidor::cargar_controlador(self::$tabla, 'index', $datos); $_SESSION["alerta"] = "El comentario ha sido eliminado"; //header("Location: ".\core\URL::generar("self::$controlador/index")); $articulo_nombre = str_replace(" ", "-", $datos['values']['articulo_nombre']); $clausulas['where'] = " id = {$articulo_id} "; $filas = \modelos\Datos_SQL::select($clausulas, self::$tabla); $articulo_nombre = $filas[0]['nombre']; $articulo_nombre = str_replace(" ", "-", $articulo_nombre); \core\HTTP_Respuesta::set_header_line("location", \core\URL::generar(self::$controlador . "/juego/" . $articulo_id . "/" . $articulo_nombre)); \core\HTTP_Respuesta::enviar(); } }