"; } else if ($fichier != ".." && $fichier != "." && is_dir("$racine/$dest/$fichier")) { $liste_dir[] = $fichier; } } closedir($handle); if (is_array($liste_dir)) { asort($liste_dir); while (list($cle,$val) = each($liste_dir)) { $lien = "?action=copier&dest="; if ($dest != "") { $lien .= "$dest/"; } $lien .= "$val&rep=$rep&ordre=$ordre&sens=$sens&fic=$fic"; $liste_rep .= html_image("$baseurl/images/files/dossier.gif") . "  " . html_lien("$lien","_top","$val","textepetit") . "
\n"; } } $champs["libelle"] = array("Copier un fichier","Fichier","Copier dans","Ou choisir un autre répertoire","",""); $champs["type"] = array("","afftext","afftext","libre","submit","cancel"); $champs["taille"] = array("","","","","",""); $champs["lgmax"] = array("","","","","",""); $champs["nomvar"] = array("","","","","",""); $champs["valeur"] = array("","$fic","$dest","$liste_rep"," Copier ","?rep=$rep&ordre=$ordre&sens=$sens"); $champs["aide"] = array("","","","","",""); echo saisir_enregistrement($champs,"?action=conf_copier&rep=$rep&ordre=$ordre&sens=$sens&fic=$fic&dest=$dest","formcopierfic","100","20","2","2",false); break; case "conf_copier": $destination = "$racine/"; if ($dest != "") $destination.="$dest/"; $destination .= basename($fic); if (file_exists("$racine/$fic") && "$racine/$fic" != $destination) copy("$racine/$fic",$destination); echo afficher_message_info("Le fichier $fic a bien été copié dans $dest."); afficher_index_fichiers($nom_rep); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $fic copié dans $dest"); break; case "voir": echo afficher_message_info("Fichier : " . html_image("$baseurl/images/files/" . mimetype("$racine/$rep/$fichier","image")) . $fichier); echo html_centre(html_lien("?sens=$sens&ordre=$ordre&rep=$rep","_top","Retour au répertoire $rep","textenormal")) . "
"; if (!is_image($rep . ($rep != "" ? "/" : ""). $fichier)) { $fp = @fopen("$racine/$rep","r"); if ($fp) { $buffer_txt = ""; while(!feof($fp)) { $buffer = fgets($fp,4096); $buffer = txt_vers_html($buffer); $buffer = str_replace("\t","     ",$buffer); $buffer_txt .= $buffer . "
"; } fclose($fp); echo html_span_class($buffer_txt,"textenormal"); } else { echo afficher_message_erreur("Impossible d'ouvrir le fichier \"$fichier\" !"); } } else { echo html_centre(html_image("../photos/affimage.php?image=$rep" . ($rep != "" ? "/" : "") . $fichier)); } echo "
" . html_centre(html_lien("?sens=$sens&ordre=$ordre&rep=$rep","_top","Retour au répertoire $rep","textenormal")); $reponse = @mysqli_query($mysqli, "select nomfic from $tb_fichiers where nomfic='$fichier' and nomrep='$rep'"); if (mysqli_num_rows($reponse) != 0) { @mysqli_query($mysqli, "update $tb_fichiers set hits=hits+1 where nomfic='$fichier' and nomrep='$rep'"); } else { @mysqli_query($mysqli, "insert into $tb_fichiers (nomfic,nomrep,hits) values ('$fichier','$rep','1')"); } break; case "deplacer": $liste_rep = ""; $handle = opendir("$racine/$dest"); while ($fichier = readdir($handle)) { if ($fichier == "..") { $up = dirname($dest); if ($up == $dest || $up == ".") { $up = ""; } if ($up != $dest) $liste_rep .= html_image("$baseurl/images/files/parent.gif") . "  " . html_lien("?ordre=$ordre&sens=$sens&action=deplacer&dest=$up&fic=$fic&rep=$rep","_top","Dossier parent") . "
"; } else if ($fichier != ".." && $fichier != "." && is_dir("$racine/$dest/$fichier")) { $liste_dir[] = $fichier; } } closedir($handle); if (is_array($liste_dir)) { asort($liste_dir); while (list($cle,$val) = each($liste_dir)) { $lien = "?action=deplacer&dest="; if ($dest != "") { $lien .= "$dest/"; } $lien .= "$val&rep=$rep&ordre=$ordre&sens=$sens&fic=$fic"; $liste_rep .= html_image("$baseurl/images/files/dossier.gif") . "  " . html_lien("$lien","_top","$val","textepetit") . "
\n"; } } $champs["libelle"] = array("Déplacer un fichier","Fichier","Déplacer dans","Ou choisir un autre répertoire","",""); $champs["type"] = array("","afftext","afftext","libre","submit","cancel"); $champs["taille"] = array("","","","","",""); $champs["lgmax"] = array("","","","","",""); $champs["nomvar"] = array("","","","","",""); $champs["valeur"] = array("","$fic","$dest","$liste_rep"," Déplacer ","?rep=$rep&ordre=$ordre&sens=$sens"); $champs["aide"] = array("","","","","",""); echo saisir_enregistrement($champs,"?action=conf_deplacer&fic=$fic&dest=$dest&rep=$rep&ordre=$ordre&sens=$sens","formcopierfic","100","20","2","2",false); break; case "conf_deplacer": $destination = "$racine/"; if ($dest != "") $destination .= "$dest/"; $destination .= basename($fic); if (file_exists("$racine/$fic") && "$racine/$fic" != $destination) copy("$racine/$fic",$destination); if ("$racine/$fic" != $destination && file_exists("$racine/$fic")) unlink("$racine/$fic"); echo afficher_message_info("Le fichier $fic a bien été déplacé vers $dest."); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $fic déplacé vers $dest"); afficher_index_fichiers($nom_rep); break; case "supprimer": if (is_dir("$racine/$fic")) { echo afficher_message_erreur("Impossible de supprimer un répertoire !"); afficher_index_fichiers($nom_rep); } else { $champs["libelle"] = array("Supprimer le fichier " . $fic,"Nom","",""); $champs["type"] = array("","afftext","submit","cancel"); $champs["taille"] = array("","","",""); $champs["lgmax"] = array("","","",""); $champs["nomvar"] = array("","","",""); $champs["valeur"] = array("","$fic"," Confirmer ","?rep=$rep&ordre=$ordre&sens=$sens"); $champs["aide"] = array("","","",""); echo saisir_enregistrement($champs,"?action=conf_supprimer&rep=$rep&fic=$fic&ordre=$ordre&sens=$sens","formsupprfic","100","20","2","2",false); } break; case "conf_supprimer": $a_effacer="$racine/$fic"; if (file_exists($a_effacer)) { if (is_dir($a_effacer)) { echo afficher_message_erreur("Impossible de supprimer un répertoire !"); } else { unlink($a_effacer); echo afficher_message_info("Le fichier $fic a été effacé."); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $fic supprimé"); } } else { echo afficher_message_erreur("Ce fichier n'existe pas !"); } afficher_index_fichiers($nom_rep); break; case "renommer": $nom_fic = basename($fic); $champs["libelle"] = array("Renommer le fichier " . $nom_fic,"Nouveau nom",""); $champs["type"] = array("","text","submit"); $champs["taille"] = array("","70",""); $champs["lgmax"] = array("","100",""); $champs["nomvar"] = array("","fic_new",""); $champs["valeur"] = array("","$nom_fic"," Renommer "); $champs["aide"] = array("","",""); echo saisir_enregistrement($champs,"?action=conf_renommer&rep=$rep&fic=$fic&ordre=$ordre&sens=$sens","formrenommerfic","100","20","2","2",false); break; case "conf_renommer": $nom_fic = basename($fic); $fic_new = traite_nom_fichier($fic_new); $old = "$racine/$fic"; $new = dirname($old) . "/" . $fic_new; if (!isset($fic_new) || $fic_new == "") { echo afficher_message_erreur("Vous devez saisir un nom de fichier valide !"); } else if (file_exists($new)) { echo afficher_message_erreur("Le fichier $fic_new existe déjà !"); } else { if (file_exists($old)) { rename($old,$new); } echo afficher_message_info("Le fichier $fic a été renommé en $fic_new"); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $old renommé en $new"); } afficher_index_fichiers($nom_rep); break; case "creer_rep": $nomdir = traite_nom_fichier($nomdir); if (!isset($nomdir) || $nomdir == "") { echo afficher_message_erreur("Vous devez saisir un nom de répertoire valide !"); } else if (file_exists("$racine/$rep/$nomdir")) { echo afficher_message_erreur("Ce répertoire existe déjà !"); } else { mkdir("$racine/$rep/$nomdir",0775); $messtmp = "Le sous-répertoire $nomdir a été créé dans le répertoire "; if ($rep == "") { $messtmp .= "/";} else { $messtmp .= "$rep";} echo afficher_message_info("$messtmp"); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Répertoire $nomdir créé dans $rep"); } afficher_index_fichiers($nom_rep); break; case "creer_fic": $nomfic = traite_nom_fichier($nomfic); if (!isset($nomfic) || $nomfic == "") { echo afficher_message_erreur("Vous devez saisir un nom de fichier valide !"); } else if (file_exists("$racine/$rep/$nomfic")) { echo afficher_message_erreur("Ce fichier existe déjà !"); } else { $fp = fopen("$racine/$rep/$nomfic","w"); if (eregi("\.html$",$nomfic) || eregi("\.htm$",$nomfic)) { fputs($fp,"\n\nDocument sans titre\n\n\n\n\n\n\n"); } fclose($fp); echo afficher_message_info("Le fichier $nomfic a été créé dans le répertoire " . ($rep == "" ? "/" : "$rep")); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $nomfic créé dans le répertoire " . ($rep == "" ? "/" : "$rep")); } afficher_index_fichiers($nom_rep); break; case "charger": $erreur = false; if ($rep != "") { $rep_source="/$rep"; } $destination = $racine.$rep_source; $userfile = $_FILES['userfile']['tmp_name']; $userfile_type = $_FILES['userfile']['type']; $userfile_size = $_FILES['userfile']['size']; $userfile_name = $_FILES['userfile']['name']; if ($userfile_size != 0) { $taille_ko = $userfile_size/1024; } else { $taille_ko = 0; } if ($userfile == "none") { echo afficher_message_erreur("Vous n'avez pas sélectionné de fichier !"); } else if ($userfile != "none" && $userfile_size != 0) { $userfile_name = traite_nom_fichier($userfile_name); if ($userfile_type == "image/pjpeg" || $userfile_type == "image/jpeg") { if (!$src_img = imagecreatefromjpeg($userfile)) { echo afficher_message_erreur("Problème lors de l'ouverture du fichier image !"); $erreur = true; } else { $old_width = imagesx($src_img); $old_height = imagesy($src_img); if ($old_width > $old_height) { if ($old_width > 640) { $new_w = 640; $new_h = ($old_height / $old_width) * 640; } else { $new_w = $old_width; $new_h = $old_height; } } else { if ($old_height > 640) { $new_h = 640; $new_w = ($old_width / $old_height) * 640; } else { $new_w = $old_width; $new_h = $old_height; } } $dst_img = @imagecreatetruecolor($new_w, $new_h); if (!$dst_img) $dst_img = imageCreate($new_w, $new_h); if ($new_w == $old_width && $new_h == $old_height) { imagecopy($dst_img,$src_img,0,0,0,0,$old_width,$old_height); echo afficher_message_info("L'image a été enregistrée telle quelle dans le fichier $userfile_name."); } else { imagecopyresized($dst_img,$src_img,0,0,0,0,$new_w,$new_h,$old_width,$old_height); echo afficher_message_info("L'image a été redimensionnée en $new_w * $new_h. dans le fichier $userfile_name"); } imagejpeg($dst_img,"$destination/$userfile_name"); ImageDestroy($dst_img); } } else if (!copy($userfile, "$destination/$userfile_name")) { echo afficher_message_erreur("Erreur de transfert : $userfile_name !"); $erreur = true; } if (is_editable($userfile_name) && !$erreur) enlever_controlM("$destination/$userfile_name"); if (!$erreur) { echo afficher_message_info("Le fichier $userfile_name a été enregistré dans le répertoire $rep"); ecrire_log($_SESSION["valid_user"],"[FICHIERS] Fichier $userfile_name enregistré dans le répertoire $rep"); $idutil = $_SESSION["valid_id"]; if ($avertir == "oui") { $utilisateur = retrouver_util($idutil); $texte = "\n\nLe fichier suivant vient d'être ajouté à l'espace fichiers sur $g_nom_site :\n\n"; $texte .= "$baseurl/prive/files/index.php?action=telecharger&rep=$rep&fichier=$userfile_name\n\n"; $texte .= "par : " . $utilisateur["nom"] . " " . $utilisateur["prenom"] . " (" . $utilisateur["username"] . ")\n"; $res = email("fichiers","ducati_st@framalistes.org","Nouveau fichier sur $g_nom_site","$texte"); } @mysqli_query($mysqli, "insert into $tb_fichiers (nomfic,nomrep,titre,description,idutil,dateheure) values ('$userfile_name','$rep','$titre','$description','$idutil',now())"); } } else { echo afficher_message_erreur("Le fichier transféré est vide !"); } afficher_index_fichiers($nom_rep); break; default: afficher_index_fichiers($nom_rep); break; endswitch; if ($action != "telecharger") require("std_footer.php"); ?>