extract(PCLZIP_OPT_PATH, "IMG/tmp", PCLZIP_OPT_REMOVE_ALL_PATH); $image_name = "IMG/tmp"; $effacer_tmp = true; } if (is_dir("$image_name")) { include_ecrire('inc_documents.php3'); $fichiers = fichiers_upload("$image_name"); while (list(,$f) = each($fichiers)) { if (ereg("\.([^.]+)$", $f, $match)) { $ext = strtolower($match[1]); if ($ext == 'jpeg') $ext = 'jpg'; $req = "SELECT extension FROM spip_types_documents WHERE extension='$ext'"; if ($inclus) $req .= " AND inclus='$inclus'"; if (@spip_fetch_array(spip_query($req))) $id_document = ajout_doc($f, $f, '', 'document', '','','','',false); } } } else { if ($forcer_document == 'oui') $id_document = ajout_doc($image_name, $image, $fichier, "document", $id_document); else $id_document = ajout_doc($image_name, $image, $fichier, $mode, $id_document); } if ($effacer_tmp) { $d = opendir("IMG/tmp"); while ($f = readdir($d)) { if (is_file("IMG/tmp/$f")) @unlink("IMG/tmp/$f"); } } } // joindre un document if ($joindre_doc == 'oui'){ $id_document = ajout_doc($image_name, $image, $fichier, "document", $id_document, $doc_vignette, $titre_vignette, $descriptif_vignette); } // // ajouter un logo // if ($ajout_logo == "oui") { ajout_image($image, $logo); } // // supprimer un logo // if ($image_supp) { // Securite if (strstr($image_supp, "..")) { exit; } if (!verifier_action_auteur("supp_image $image_supp", $hash, $hash_id_auteur)) { exit; } @unlink("IMG/$image_supp"); } // // Faire tourner une image // if ($doc_rotate) { // Securite if (!verifier_action_auteur("rotate $doc_rotate", $hash, $hash_id_auteur)) { exit; } if (!$var_rot) $var_rot = 0; $query = "SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$doc_rotate"; $result = spip_query($query); if ($row = spip_fetch_array($result)) { $id_vignette = $row['id_vignette']; $image = $row['fichier']; $process = lire_meta('image_process'); // imagick (php4-imagemagick) if ($process == 'imagick') { $handle = imagick_readimage($image); imagick_rotate($handle, $var_rot); imagick_write($handle, $image); if (!@file_exists($image)) return; // echec imagick } $size_image = @getimagesize($image); $largeur = $size_image[0]; $hauteur = $size_image[1]; if ($id_vignette > 0) { $query = "SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$id_vignette"; $result = spip_query($query); if ($row = spip_fetch_array($result)) { $fichier = $row['fichier']; @unlink($fichier); } spip_query("DELETE FROM spip_documents WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_articles WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_breves WHERE id_document=$id_vignette"); } spip_query("UPDATE spip_documents SET id_vignette=0, largeur=$largeur, hauteur=$hauteur WHERE id_document=$doc_rotate"); } } // // Supprimer un document // if ($doc_supp) { // Securite if (!verifier_action_auteur("supp_doc $doc_supp", $hash, $hash_id_auteur)) { exit; } $query = "SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$doc_supp"; $result = spip_query($query); if ($row = spip_fetch_array($result)) { $fichier = $row['fichier']; $id_vignette = $row['id_vignette']; spip_query("DELETE FROM spip_documents WHERE id_document=$doc_supp"); spip_query("UPDATE spip_documents SET id_vignette=0 WHERE id_vignette=$doc_supp"); spip_query("DELETE FROM spip_documents_articles WHERE id_document=$doc_supp"); spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$doc_supp"); spip_query("DELETE FROM spip_documents_breves WHERE id_document=$doc_supp"); @unlink($fichier); } if ($id_vignette > 0) { $query = "SELECT id_vignette, fichier FROM spip_documents WHERE id_document=$id_vignette"; $result = spip_query($query); if ($row = spip_fetch_array($result)) { $fichier = $row['fichier']; @unlink($fichier); } spip_query("DELETE FROM spip_documents WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_articles WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_rubriques WHERE id_document=$id_vignette"); spip_query("DELETE FROM spip_documents_breves WHERE id_document=$id_vignette"); } } // // Creation automatique de vignette new style // if ($vignette) { // securite $fichier_vignette = ''; if (eregi('^IMG/(.*/)?([^\./]+)\.([a-z0-9]+)$', $vignette, $regs)) { $source = $regs[0]; $format = $regs[3]; include_local('inc-cache.php3'); $destination = 'IMG/'.creer_repertoire('IMG','vignettes').$regs[2].'-s'; // adresse new style if (lire_meta("creer_preview") == 'oui') { $taille_preview = lire_meta("taille_preview"); if ($taille_preview < 10) $taille_preview = 120; include_ecrire('inc_logos.php3'); if ($preview = creer_vignette($source, $taille_preview, $taille_preview, $format, $destination)) $fichier_vignette = $preview['fichier']; } } if (!$fichier_vignette) { include_ecrire('inc_documents.php3'); list($fichier_vignette) = vignette_par_defaut($format); if (!$fichier_vignette) list($fichier_vignette) = vignette_par_defaut('txt'); } @header("Location: $fichier_vignette"); exit; } // // redirection // if ($HTTP_POST_VARS) $vars = $HTTP_POST_VARS; else $vars = $HTTP_GET_VARS; $redirect_url = "ecrire/" . $vars["redirect"]; $link = new Link($redirect_url); reset($vars); while (list ($key, $val) = each ($vars)) { if (!ereg("^(redirect|image.*|hash.*|ajout.*|doc.*|transformer.*|modifier_.*|ok|type|forcer_.*|var_rot)$", $key)) { $link->addVar($key, $val); } } if ($id_document) $link->addVar('id_document',$id_document); if ($type == 'rubrique') $link->delVar('id_article'); @header ("Location: ".$link->getUrl()); exit; ?>