// // This work is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike License. // // To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/1.0/ // // or send a letter to Creative Commons, 559 Nathan Abbott Way, Stanford, California 94305, USA. // // Francais (brouillon): http://creativecommons.org/projects/international/fr/translated-license // ////////////////////////////////////////////////////////////////////////////////////////////////////// // Gestion des fichiers // v0.2.1 $requiredFiles = array("fichiers"); include_once("head.php"); $base = "../datas/documents/".$journal->courant['id']; $squels = array("message.html","default.css","index_mois.html","forum_mois.html","ecrit.html"); if($_GET['editer']) $editer = $_GET['editer']; elseif($_POST['editer']) $editer = $_POST['editer']; elseif($_GET['supprimer']) $supprimer = $_GET['supprimer']; elseif($_POST['supprimer']) $supprimer = $_POST['supprimer']; elseif($_GET['dirsuppr']) $dirsuppr = $_GET['dirsuppr']; elseif($_POST['dirsuppr']) $dirsuppr = $_POST['dirsuppr']; elseif($_POST['mkdir'] && !empty($_POST['mkdir'])) { $fichiers->createDir($journal->courant['id'],$_POST['mkdir']); header("location: fichiers"); exit; } if($editer && $fichiers->verify($journal->courant['id'],$editer)) { if($_POST['editer']) { if($_POST['close']) { if(in_array($_POST['editer'],$squels)) header("location: visuel.php"); else header("location: fichiers.php"); } elseif($_POST['save_close']) { $fichiers->save($journal->courant['id'],$editer,$_POST['texte']); if(in_array($_POST['editer'],$squels)) header("location: visuel.php"); else header("location: fichiers.php"); } else { $fichiers->save($journal->courant['id'],$editer,$_POST['texte']); $page = '

Fichier enregistré. ('.date("d/m/Y à H:i").')

'; $content = stripslashes($_POST['texte']); } } else $content = $fichiers->read($journal->courant['id'],$editer); $page.= '

'; $titre = "Edition de ".$editer; } elseif($dirsuppr) { if($_POST['oui']) { if(!$fichiers->deleteDir($journal->courant['id'],$dirsuppr)) header("location: fichiers.php?err=".urlencode("Le répertoire doit être vide pour être supprimé.")); else header("location: fichiers"); exit; } $page = '
'; $page.= '

Êtes-vous sur de vouloir supprimer le répertoire '.$dirsuppr.'?

'; $titre = "Suppression"; } elseif($supprimer) { if(is_array($supprimer)) { foreach($supprimer as $file) if(!$fichiers->verify($journal->courant['id'],$file)) header("location: fichiers.php"); } elseif(!$fichiers->verify($journal->courant['id'],$supprimer)) header("location: fichiers.php"); if($_POST['oui']) { $fichiers->supprimer($journal->courant['id'],$supprimer); header("location: fichiers.php"); } elseif($_POST['non']) header("location: fichiers.php"); $page = '
'; if(is_array($supprimer)) { foreach($supprimer as $file) $page.= ''; $page.= '

Êtes-vous sur de vouloir supprimer les fichiers suivants?

'.implode(" - ",$supprimer).'

'; } else { $page.= '

Êtes-vous sur de vouloir supprimer le fichier '.$supprimer.'?

'; } $page.= '

'; $titre = "Suppression"; } else { $titre = "Fichiers rattachés au journal"; $used = $fichiers->get_quota($journal->courant['id']); $max = $mem->groupe['quota']; if($_FILES['fich']) { $fichiers->err['debug'] = FALSE; if($fichiers->upload($journal->courant['id'],$_FILES['fich'],$max,$_POST['dir'])) $err = "Le fichier a bien été ajouté."; else $err = $fichiers->erreur; $dir = $_POST['dir']; $page = '

'.$err.'

'; } if($_GET['err']) $page = '

'.urldecode($_GET['err']).'

'; $unite = "Mo"; $bar = round(($used/$max)*100); if($bar > (($max/10)*8*100)) $bar = $bar."%; background: red;"; else $bar = $bar."%"; $page.= '

Vous utilisez actuellement '.$used.$unite.' sur les '.$max.$unite.' autorisés.

'."

Vous allez pouvoir gérer ici les fichiers rattachés au journal courant. Attention ces fichiers sont librement accessibles aux visiteurs du net.

"; if(isset($_GET['dir']) && !empty($_GET['dir'])) $dir = $_GET['dir']; elseif(isset($_POST['dir']) && !empty($_POST['dir'])) $dir = $_POST['dir']; else $dir = ""; if (!preg_match('!^[a-z0-9_/-]+$!i', $dir)) $dir = ''; if(!empty($dir)) $page.= '

Chemin: '.$journal->courant['id'].' / '.$dir.'

'; $liste = $fichiers->liste($journal->courant['id'],$dir); if(count($liste) > 0) { $extensions = array("txt","css","html","rtf","smil","tex","rss","xml","svg","csv"); sort($liste); $page.= '
'; if(!empty($dir)) $page.= ''; foreach($liste as $rec) { if($rec['dir']) { if($rec['dir'] == "images") continue; $page.= ''; $page.= ''; } else { $fichier = $rec['file']; if(!empty($dir)) $path = $dir."/".$fichier; else $path = $fichier; $ext = substr($fichier,strrpos($fichier,".")+1); $page.= ''; $page.= ''; } $page.= ' '; if($odd) unset($odd); else $odd = TRUE; } $page.= '
Retour à la racine
'.$rec['dir'].' Supprimer
'.(in_array($ext,$extensions) ? ''.$fichier.'' : $fichier).' '.round($rec['size'] / 1000).'Ko '.date("d/m/Y H:i",$rec['date']).' Supprimer Télécharger

'; } elseif(!empty($dir)) { if(!empty($dir)) $page.= '
Retour à la racine
'; } $page.= '
'; if(empty($dir)) $page.= '

'; $max = ($max*1000) - 200; if($max >= 200) { $page.= '

Importer un fichier

Vous pouvez importer dans vos fichiers personnels des fichiers d\'une taille égale ou inférieure à 500Ko.

'; } $page.= '
'; } //if($err) $page = '

'.htmlentities(stripslashes(urldecode($err))).'

'; page($titre,$page); ?>