Ejemplo n.º 1
0
function fma_filter($type, $filename, $Extension)
{
    $autorise = false;
    $error = "";
    if ($type == "f") {
        $filename = removeHack($filename);
    }
    $filename = preg_replace('#[/\\\\:\\*\\?"<>|]#i', '', rawurldecode($filename));
    $filename = str_replace("..", "", $filename);
    // Liste des extensions autorisées
    $suffix = strtoLower(substr(strrchr($filename, '.'), 1));
    if ($suffix != "" or $type == "d") {
        if (in_array($suffix, $Extension) or $Extension[0] == "*" or $type == "d") {
            // Fichiers interdits en fonction de qui est connecté
            if (fma_autorise($type, $filename)) {
                $autorise = true;
            } else {
                $error = fma_translate("Fichier interdit");
            }
        } else {
            $error = fma_translate("Type de fichier interdit");
        }
    } else {
        $error = fma_translate("Fichier interdit");
    }
    $tab[] = $autorise;
    $tab[] = $error;
    $tab[] = $filename;
    return $tab;
}
Ejemplo n.º 2
0
 function RemoveDir($dir)
 {
     if ($handle = @opendir($dir)) {
         closedir($handle);
         if (!@rmdir($dir)) {
             $this->Errors = fma_translate("Impossible de supprimer") . " : " . basename($dir);
         }
     }
     if ($this->Errors != "") {
         return false;
     } else {
         return true;
     }
 }