error)) return; return $o->dest; } function sendImagem($nomedapasta, $foto, $i, $largura1, $largura2, $nomefoto = null, $normal = null) { //abre função // Prepara a variável do arquivo $arquivo = isset($_FILES[$foto]) ? $_FILES[$foto] : FALSE; //renomeia a foto original caso haja prefixo if(!empty($nomefoto)){ //explode para mostrar o nome original da foto if(preg_match("/,/", $nomefoto)){ $explode = explode(",", $nomefoto); $nomearquivoNovo = $explode[1]; }else{ $nomearquivoNovo = $nomefoto; } rename($nomedapasta."/".$nomefoto, $nomedapasta."/".PREFIXO.$nomearquivoNovo); $nomefoto = PREFIXO.$nomearquivoNovo; } if(empty($arquivo['name'])) return $nomefoto; // Pega extensão do arquivo preg_match("/\.(gif|png|jpg|jpeg){1}$/i", $arquivo["name"], $ext); $extAntes = formato($nomefoto); $ponto = empty($nomefoto) && empty($arquivo['name']) ? "" : "."; if(!empty($ext[1]) && $ext[1] != $extAntes){ deleta($nomedapasta."/".$nomefoto); deleta($nomedapasta."/".foto_mini($nomefoto)); $novaExt = $ponto.$ext[1]; }else{ $novaExt = $ponto.$extAntes; } // Gera um nome único para a imagem $imagem_nome = empty($nomefoto) && !empty($arquivo['name']) ? substr(strtolower(preg_replace("/_/", "-", PREFIXO.titulo_url(semFormato($arquivo["name"])))), 0, 100)."-".date('dmHis')."F0".$i."_normal".$novaExt : semFormato($nomefoto).$novaExt; if(empty($imagem_nome)) return $nomefoto; // Caminho de onde a imagem ficará $imagem_dir = $nomedapasta."/".$imagem_nome; //imagem nova $imagem_nova = empty($nomefoto) ? $imagem_dir : $nomedapasta."/".semFormato($imagem_nome); // Faz o upload da imagem _normal if(move_uploaded_file($arquivo["tmp_name"], $imagem_dir)); // VERIFICA A EXTENSÃO DA IMAGEM _NORMAL $ext = strtolower(formato($imagem_nome)); // CASO A IMAGEM SEJA JPG if($ext == "jpg" OR $ext == "jpeg"){ //abre if //NOME DO ARQUIVO DA MINI $imagem_gerada_mini = explode("_", $imagem_nova); $imagem_gerada_mini = $imagem_gerada_mini[0]."_mini.jpg"; //NOME DO ARQUIVO DA MEDIA $imagem_gerada_media = explode("_", $imagem_nova); $imagem_gerada_media = $imagem_gerada_media[0].".jpg"; //CRIA UMA NOVA IMAGEM $imagem_orig = imagecreatefromjpeg($imagem_dir); }elseif($ext == "gif"){ // CASO A IMAGEM SEJA GIF //NOME DO ARQUIVO DA MINIATURA $imagem_gerada_mini = explode("_", $imagem_nova); $imagem_gerada_mini = $imagem_gerada_mini[0]."_mini.gif"; //NOME DO ARQUIVO DA MEDIA $imagem_gerada_media = explode("_", $imagem_nova); $imagem_gerada_media = $imagem_gerada_media[0].".gif"; //CRIA UMA NOVA IMAGEM $imagem_orig = imagecreatefromgif($imagem_dir); }elseif($ext == "png"){ //NOME DO ARQUIVO DA MINIATURA $imagem_gerada_mini = explode("_", $imagem_nova); $imagem_gerada_mini = $imagem_gerada_mini[0]."_mini.png"; //NOME DO ARQUIVO DA MEDIA $imagem_gerada_media = explode("_", $imagem_nova); $imagem_gerada_media = $imagem_gerada_media[0].".png"; //CRIA UMA NOVA IMAGEM $imagem_orig = imagecreatefrompng($imagem_dir); }//fecha if //LARGURA $pontoX = imagesx($imagem_orig); //ALTURA $pontoY = imagesy($imagem_orig); // $manter_imagem = FALSE; if($pontoX <= $largura2) $manter_imagem = TRUE; // //se a largura for maior q a altura if($pontoX >= $pontoY){ // DEFINE AS MEDIDAS DA MINI $largura_mini = $largura1; $altura_mini = $pontoY * $largura1 / $pontoX; // DEFINE AS MEDIDAS DA MEDIA if($pontoX > $largura2){ $largura_media = $largura2; $altura_media = $pontoY * $largura2 / $pontoX; }else{ $largura_media = $pontoX; $altura_media = $pontoY; } }else{ $largura1 = $largura1;// - $largura1 / 100 * 20; $largura2 = $largura2 - $largura2 / 100 * 20; // DEFINE AS MEDIDAS DA MINI $largura_mini = $largura1; $altura_mini = $pontoY * $largura1 / $pontoX; // DEFINE AS MEDIDAS DA MEDIA if($pontoY > $largura2){ $largura_media = $pontoX * $largura2 / $pontoY; $altura_media = $largura2; }else{ $largura_media = $pontoX; $altura_media = $pontoY; } } if(!empty($largura1)){ //CRIA O THUMBNAIL MINI $imagem_fin_mini = imagecreatetruecolor($largura_mini, $altura_mini); //COPIA A IMAGEM ORIGINAL PARA DENTRO (MINI) imagealphablending($imagem_fin_mini, true); $color = imagecolorallocatealpha($imagem_fin_mini, 0, 0, 0, 127); imagefill($imagem_fin_mini, 0, 0, $color); imagecopyresampled($imagem_fin_mini, $imagem_orig, 0, 0, 0, 0, $largura_mini+1, $altura_mini+1, $pontoX, $pontoY); imagealphablending($imagem_fin_mini, false); imagesavealpha($imagem_fin_mini, true); } if(!$manter_imagem){ //CRIA O THUMBNAIL MEDIA $imagem_fin_media = imagecreatetruecolor($largura_media, $altura_media); //COPIA A IMAGEM ORIGINAL PARA DENTRO (MEDIA) imagealphablending($imagem_fin_media, true); $color = imagecolorallocatealpha($imagem_fin_media, 0, 0, 0, 127); imagefill($imagem_fin_media, 0, 0, $color); imagecopyresampled($imagem_fin_media, $imagem_orig, 0, 0, 0, 0, $largura_media+1, $altura_media+1, $pontoX, $pontoY); imagealphablending($imagem_fin_media, false); imagesavealpha($imagem_fin_media, true); }else{ rename($imagem_dir, $imagem_gerada_media); } // CASO A IMAGEM SEJA JPG if($ext == "jpg" OR $ext == "jpeg"){ //abre if //SALVA A IMAGEM (MINI) if(!empty($largura1)) imagejpeg($imagem_fin_mini, $imagem_gerada_mini, 100); //SALVA A IMAGEM (MEDIA) if(!$manter_imagem) imagejpeg($imagem_fin_media, $imagem_gerada_media, 100); }elseif($ext == "gif"){ // CASO A IMAGEM SEJA GIF //SALVA A IMAGEM (mini) if(!empty($largura1)) imagegif($imagem_fin_mini, $imagem_gerada_mini); //SALVA A IMAGEM (média) if(!$manter_imagem) imagegif($imagem_fin_media, $imagem_gerada_media); }elseif($ext == "png"){ //SALVA A IMAGEM (MINI) if(!empty($largura1)) imagepng($imagem_fin_mini, $imagem_gerada_mini, 1); //SALVA A IMAGEM (MEDIA) if(!$manter_imagem) imagepng($imagem_fin_media, $imagem_gerada_media, 1); }//fecha if if(empty($normal) && preg_match("/normal/", $imagem_dir)){ //deleta a imagem original deleta($imagem_dir); }//fecha if*/ // $nome_da_foto = $nomefoto; //da o nome da foto normal $imagem_fi = explode("/", $imagem_gerada_media); $indice = count($imagem_fi) - 1; $foto01_nome = $imagem_fi[$indice]; if(!empty($arquivo["name"])) $nome_da_foto = $foto01_nome; $optmize = true; if($optmize){ $url = host($_SERVER['HTTP_HOST']).HOST; $nomedapasta_url = preg_replace("/\./", "", $nomedapasta); $caminho_url = $nomedapasta_url."/".$nome_da_foto; if($largura1 > 0){ $url_mini = $url.foto_mini($caminho_url); $optmized_image_mini = optmizeImage($url_mini); if($optmized_image_mini != "") copy($optmized_image_mini, $nomedapasta."/".foto_mini($nome_da_foto)); } $url_normal = $url.$caminho_url; $optmized_image_normal = optmizeImage($url_normal); if($optmized_image_normal != "") copy($optmized_image_normal, $nomedapasta."/".$nome_da_foto); } return $nome_da_foto; } //fecha função function sendArquivo($foto, $tipo, $pasta, $nomearquivo, $i, $optmize = true){ $i = empty($i) ? 1 : $i; $arquivo = isset($_FILES[$foto]) ? $_FILES[$foto] : FALSE; preg_match("/\.(".$tipo."){1}$/i", $arquivo["name"], $ext); //renomeia a foto original caso haja prefixo if(!empty($nomearquivo)){ //explode para mostrar o nome original da foto if(preg_match("/,/", $nomearquivo)){ $explode = explode(",", $nomearquivo); $nomearquivoNovo = $explode[1]; }else{ $nomearquivoNovo = $nomearquivo; } rename($pasta."/".$nomearquivo, $pasta."/".PREFIXO.$nomearquivoNovo); $nomearquivo = PREFIXO.$nomearquivoNovo; } $extAntes = formato($nomearquivo); $ponto = empty($nomearquivo) && empty($arquivo['name']) ? "" : "."; if(!empty($ext[1]) && $ext[1] != $extAntes){ deleta($pasta."/".$nomearquivo); $novaExt = $ponto.$ext[1]; }else{ $novaExt = $ponto.$extAntes; } $arquivo_nome = empty($nomearquivo) && !empty($arquivo['name']) ? substr(strtolower(preg_replace("/_/", "-", PREFIXO.titulo_url(semFormato($arquivo["name"])))), 0, 100)."-".date('dmHis')."F0".$i.$novaExt : semFormato($nomearquivo).$novaExt; $diretorio01 = $pasta ."/". $arquivo_nome; if(empty($arquivo_nome)) return FALSE; move_uploaded_file($arquivo["tmp_name"], $diretorio01); if($optmize && preg_match("/jpg|jpeg|png|gif/", $novaExt)){ $url = host($_SERVER['HTTP_HOST']).HOST; $caminho_url = $url.preg_replace("/\./", "", $pasta)."/".$arquivo_nome; $optmized = optmizeImage($caminho_url); if($optmized != "") copy($optmized, $diretorio01); } return $arquivo_nome; } function enviaZip($input, $destino, $bd = null){ $arquivo = isset($_FILES[$input]) ? $_FILES[$input] : FALSE; $arquivoNome = $arquivo['name']; $arqZip = $arquivo["tmp_name"]; if(formato($arquivoNome) != "zip"){ return FALSE; }else{ $fotos = array(); $zip = new ZipArchive(); $zip->open($arqZip); for($i = 0; $i < $zip->numFiles; $i++){ $entry = $zip->getNameIndex($i); //$fotos[] = $entry; if(formato(strtolower($entry)) == "jpg" || formato(strtolower($entry)) == "gif" || formato(strtolower($entry)) == "png"){ $foto = str_replace($entry, PREFIXO.date("YmdHis")."F".($i+1), $entry.".".formato(strtolower($entry))); //copia para o destino copy("zip://".$arqZip."#".$entry, $destino."/".$foto); if(preg_match("/fotos/", $_SERVER['REQUEST_URI'])){ //faz a foto com marca dagua @marcaDagua(ARQMARCA, $destino."/".$foto, POSMARCA); } //retorna os nomes em array para gravar no banco quando a variavel $bd for setada $fotos[] = $foto; } } //$zip->extractTo($destino); $zip->close(); if($bd){ header('Content-type: text/plain'); return $fotos; }else{ return TRUE; } } } function verificaFile($foto, $nomearquivo = null, $retorno = null){ $arquivo = isset($_FILES[$foto]) ? $_FILES[$foto] : FALSE; if(!empty($arquivo['name']) || !empty($nomearquivo)){ $retorno = $retorno == "" ? TRUE : $arquivo['name']; return $retorno; }else{ return FALSE; } } function validaFile($arquivo, $extensoes){ $file = $_FILES[$arquivo]; if(empty($file['name'])) return; $formato = formato($file['name']); if(!preg_match("/".$extensoes."/i", $formato)) die("Tipo de arquivo inválido!"); }