SystèmeFichiers => Système_fichiers Pour éviter un potentiel conflit avec un ModuleSousmodule

This commit is contained in:
Georges Dupéron 2010-08-03 02:28:53 +02:00
parent 17257ac647
commit 8479ee3e8d
3 changed files with 11 additions and 12 deletions

View File

@ -1,6 +1,5 @@
Sécurité : les noms de propriétés passés à stockage ne doivent pas
contenir de '/' (doivent valider "nettoyer_segment()".
Renomer SystèmeFichiers : seuls les modules ont deux bosses dans leur CamelCase
Actions pouvant être effectuées par get (pas d'effets de bord) et ne
pouvant pas être effectuées par get (seulement POST, effets de
bord).

View File

@ -9,7 +9,7 @@ class Stockage {
public static function nouvelle_page($chemin, $nom, $type) {
if (Permissions::vérifier_permission($chemin, "nouvelle_page")) {
$enfant = $chemin->enfant($nom);
SystemeFichiers::créer_dossier($enfant->get_fs_stockage());
Système_fichiers::créer_dossier($enfant->get_fs_stockage());
self::set_prop($enfant, "type", $type);
self::activer_réécriture($enfant);
return $enfant;
@ -26,11 +26,11 @@ class Stockage {
$php_str .= "require_once(\"" . Path::combine($config_chemin_base, "cms.php") . "\");\n\n";
$php_str .= "CMS::page(\"" . $chemin_vers->get() . "\");\n\n";
$php_str .= "?>";
return SystemeFichiers::écrire($chemin_vers->get_fs_public(), $php_str);
return Système_fichiers::écrire($chemin_vers->get_fs_public(), $php_str);
}
public static function désactiver_réécriture($chemin_vers) {
return SystemeFichiers::supprimer($chemin_vers->get_fs_public());
return Système_fichiers::supprimer($chemin_vers->get_fs_public());
}
private static function fichier_prop($chemin, $prop) {
@ -39,7 +39,7 @@ class Stockage {
public static function set_prop($chemin, $prop, $valeur) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::écrire(self::fichier_prop($chemin, $prop), $valeur);
return Système_fichiers::écrire(self::fichier_prop($chemin, $prop), $valeur);
} else {
return false;
}
@ -48,7 +48,7 @@ class Stockage {
// Stocke le contenu de $fichier dans $prop, et supprime $fichier.
public static function set_prop_fichier($chemin, $prop, $fichier) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::déplacer($fichier, self::fichier_prop($chemin, $prop));
return Système_fichiers::déplacer($fichier, self::fichier_prop($chemin, $prop));
} else {
return false;
}
@ -57,7 +57,7 @@ class Stockage {
// Comme pour set_prop_fichier, mais pour un fichier reçu (uploadé).
public static function set_prop_fichier_reçu($chemin, $prop, $fichier) {
if (Permissions::vérifier_permission($chemin, "set_prop")) {
return SystemeFichiers::déplacer_fichier_téléchargé($fichier, self::fichier_prop($chemin, $prop));
return Système_fichiers::déplacer_fichier_téléchargé($fichier, self::fichier_prop($chemin, $prop));
} else {
return false;
}
@ -68,7 +68,7 @@ class Stockage {
// dépendances get_regles() et get_groupe() de faire des get_prop
// même si l'utilisateur courant n'en a pas le droit.
if ($forcer_permissions || Permissions::vérifier_permission($chemin, "get_prop")) {
return SystèmeFichiers::lire(self::fichier_prop($chemin, $prop));
return Système_fichiers::lire(self::fichier_prop($chemin, $prop));
} else {
return false;
}
@ -78,7 +78,7 @@ class Stockage {
// Envoie tout le conctenu de $prop sur le réseau.
// Équivalent à appeller sendfile sur le fichier qui contient $prop.
if (Permissions::vérifier_permission($chemin, "get_prop")) {
return SystemeFichiers::envoyer_fichier_directement(self::fichier_prop($chemin, $prop));
return Système_fichiers::envoyer_fichier_directement(self::fichier_prop($chemin, $prop));
} else {
return false;
}
@ -101,7 +101,7 @@ class Stockage {
// TODO : SECURITE : vérifier la permission. Mais pour quelle action ?
// get_prop ? ou une nouvelle (?) : liste_enfants ?
$enfants = Array();
foreach (SystèmeFichiers::liste_fichiers($chemin->get_fs_stockage()) as $k => $v) {
foreach (Système_fichiers::liste_fichiers($chemin->get_fs_stockage()) as $k => $v) {
if (strpos($v, "__prop__") !== 0 && is_dir($chemin->enfant($v)->get_fs_stockage()) && $v != "." && $v != "..") {
$enfants[] = $chemin->enfant($v);
}
@ -117,7 +117,7 @@ class Stockage {
if (Permissions::vérifier_permission($chemin->parent(), "nouvelle_page") && vérifier_permission($chemin, "supprimer")) {
// TODO : désactiver_réécriture($chemin) récursivement
// TODO : puis activer_réécriture($chemin) récursivement
return SystemeFichiers::déplacer($chemin->get_fs_stockage(), $chemin->renomer($nouveau_nom)->get_fs_stockage());
return Système_fichiers::déplacer($chemin->get_fs_stockage(), $chemin->renomer($nouveau_nom)->get_fs_stockage());
} else {
return false;
}

View File

@ -2,7 +2,7 @@
// NOTE : Cette abstraction a l'air assez innutile à part supprimer...
class SystèmeFichiers {
class Système_fichiers {
public static function créer_dossier($chemin_fs) {
mkdir($chemin_fs);
}