public function __construct($ruta) { $this->rutaTemporal = 'public/pacientesFotografiasTemp/'; $this->rutaAGuardar = 'public/pacientesFotografias/'; parent::__construct($ruta); list($ancho, $alto, $tipo) = getimagesize($this->ruta); if ($tipo !== IMAGETYPE_JPEG) { throw new \Exception("No es imagen JPG"); } // inicializar $this->imgOrigen = imagecreatefromjpeg($this->ruta); $this->ancho = $ancho; $this->alto = $alto; $this->tipo = $tipo; $this->haSidoRecortada = false; }
// Guardamos la miniatura de la imagen. $rutaFinalMiniatura = $carpetaUsuario . "/miniaturas/" . $nombreFichero; if (!redimensionar($ficheroOriginalTemp, $rutaFinalMiniatura, 50, 50, 'mini')) { $ficherosGuardados = false; } // Guardamos la imagen original en su carpeta definitiva. $rutaFinalOriginal = $carpetaUsuario . "/originales/" . $nombreFichero; if (!copy($ficheroOriginalTemp, $rutaFinalOriginal)) { $ficherosGuardados = false; } // y borramos los ficheros temporales. unlink($ficheroOriginalTemp); unlink($ficheroMuestraTemp); if ($ficherosGuardados) { // Se crea una nueva fotografía. $foto = new Fotografia(0, $idUsuario, $nombreUsuario, $nombreFichero, $titulo, $descripcion, $categoria, ' ', $fechaTomada, $latitud, $longitud, $camara, $lente, $distanciaFocal, $velocidad, $apertura, $iso, $etiquetas, 0, 0, 0, 0, $descarga); // y se inserta en la base de datos. if ($foto->insertarFotografia()) { unset($_SESSION['ficheroOriginalTemp']); unset($_SESSION['ficheroMuestraTemp']); } else { unlink($rutaFinalMuestra); unlink($rutaFinalMiniatura); unlink($rutaFinalOriginal); } } include_once '../clases/colFotografia.php'; $camposCriterio = array('idUsuario' => $idUsuario); $criterioOrdenacion = 'fechasubida'; $comienzo = 0; $limite = 1;
$camposValores = array('descarga' => $permiso); $resultado = false; if ($foto->modificarFotografia($camposValores)) { $resultado = true; } echo $resultado; break; case 'descargarFoto': $idFoto = $_POST['idFoto']; $idUsuario = $_POST['idUsuario']; $nombreUsuarioPropietarioFoto = $_POST['nombreUsuarioPropietarioFoto']; require_once '../clases/descarga.php'; $descarga = new Descarga(0, $idFoto, $idUsuario); $descarga->InsertarDescarga(); require_once '../clases/fotografia.php'; $foto = new Fotografia($idFoto); $camposCriterio = array("idFoto" => $idFoto); $foto->leerFotografia($camposCriterio); $nombreFicheroFoto = $foto->getNombreFichero(); $foto->sumaDescarga(); $respuesta = array('fichero' => $nombreFicheroFoto, 'usuario' => $nombreUsuarioPropietarioFoto); echo json_encode($respuesta); break; case 'modificarUsuario': $idUsuario = $_POST['idUsuario']; $nombreUsuario = $_POST['nombreUsuario']; $camposValores = array(); $camposModificables = array('nombre', 'apellidos', 'email', 'url', 'acerca', 'contrasena'); foreach ($camposModificables as $campo) { if ($campo != 'contrasena') { $camposValores[$campo] = $_POST[$campo];
require_once '../clases/fotografia.php'; include_once '../clases/usuario.php'; include '../includes/header.php'; // Recuperamos la colección de fotografías desde la variable de sesión. if (isset($_SESSION['colFotografias'])) { $colFotografias = $_SESSION['colFotografias']; $existeColFotografias = true; } // Recuperamos el id de la foto. if (isset($_GET['idFoto'])) { $idFoto = $_GET['idFoto']; } elseif (isset($_POST['idFoto'])) { $idFoto = $_POST['idFoto']; } $_SESSION['idFoto'] = $idFoto; $foto = new Fotografia($idFoto); // Sumamos una visita más al contador de visitas. $camposCriterio = array("idFoto" => $idFoto); $foto->leerFotografia($camposCriterio); $sesionUsuarioActiva = false; if (isset($_SESSION['idUsuario'])) { $sesionUsuarioActiva = true; $idUsuario = $_SESSION['idUsuario']; } // Si hay una sesión de usuario activa y el usuario activo es diferente del usuario propietario de la foto // se suma una visita. Impedimos que las visitas del propietario se sumen para evitar que adultere el // contador de visitas. if ($sesionUsuarioActiva && $idUsuario != $foto->getIdUsuario()) { $foto->sumaVisita(); } // Si el usuario activo es el mismo que el propietario de la foto y ya ha dado permiso de descarga de la foto