/** * Sube el documento indicado en $this->_ArrayDoc al servidor via FTP * * Si es una imagen, la redimensiona se han establecido dimensiones * fijas en $this->_ArrayDoc['width'] y $this->_ArrayDoc['heigth'] * * @return boolean TRUE si se subió con éxito */ private function subeDocumento() { $pathInfo = pathinfo($this->PathName); $carpetaDestino = $this->_prePath . $pathInfo['dirname']; $ok = is_uploaded_file($this->_ArrayDoc['tmp_name']); if ($ok) { if (exif_imagetype($this->_ArrayDoc['tmp_name'])) { // Tratamiento de la imagen antes de subirla list($ancho, $alto) = getimagesize($this->_ArrayDoc['tmp_name']); if ($this->_ArrayDoc['maxWidth'] > 0 and $ancho > $this->_ArrayDoc['maxWidth']) { $ancho = $this->_ArrayDoc['maxWidth']; } if ($this->_ArrayDoc['maxHeight'] > 0 and $alto > $this->_ArrayDoc['maxHeight']) { $alto = $this->_ArrayDoc['maxHeight']; } $img = new Gd(); $img->loadImage($this->_ArrayDoc['tmp_name']); //$img->crop($ancho, $alto,$this->_ArrayDoc['modoRecortar']); $img->crop($this->_ArrayDoc['maxWidth'], $this->_ArrayDoc['maxHeight'], $this->_ArrayDoc['modoRecortar']); $imagenRecortada = "tmp/" . md5($this->_ArrayDoc['tmp_name']); $ok = $img->save($imagenRecortada); unset($img); $archivo = new Archivo($imagenRecortada); $this->setSize($archivo->getSize()); $this->setWidth($archivo->getImageWidth()); $this->setHeight($archivo->getImageHeight()); $this->setMimeType($archivo->getMimeType()); unset($archivo); $archivoSubir = $imagenRecortada; } else { $archivo = new Archivo($this->_ArrayDoc['tmp_name']); $this->setSize($archivo->getSize()); $this->setMimeType($archivo->getMimeType()); unset($archivo); $archivoSubir = $this->_ArrayDoc['tmp_name']; } $ftp = new Ftp($_SESSION['project']['ftp']); if ($ftp) { //echo $carpetaDestino," ",$archivoSubir; $ok = $ftp->upLoad($carpetaDestino, $archivoSubir, $this->Name); $this->_errores = $ftp->getErrores(); $ftp->close(); } else { echo "error ftp"; $this->_errores[] = "Fallo al conectar vía FTP"; } unset($ftp); $ok = count($this->_errores) == 0; if (file_exists($imagenRecortada)) { @unlink($imagenRecortada); } } return $ok; }