www

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit 7be81c959e094dba4c468296c3c23e3267111dcb
parent 88476240e5091c7d8dda5cf29f8d6faffb30c0a4
Author: Georges Dupéron <jahvascriptmaniac+github@free.fr>
Date:   Sun,  1 Aug 2010 22:38:48 +0200

Génération des fichiers "index.php" dans la partie publique.

Diffstat:
M__cms__/cms.php | 4++--
M__cms__/stockage/stockage.php | 15++++++++++++---
2 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/__cms__/cms.php b/__cms__/cms.php @@ -4,10 +4,10 @@ require_once(dirname(__FILE__) . "/config.php"); require_once(dirname(__FILE__) . "/include.php"); class CMS { - public static function cms() { + public static function cms($chemin_str) { // TODO : appeller Modules::action($chemin, $action, $paramètres); - $chemin = Chemin::depuis_url($_SERVER["request_uri"]); // TODO : vérifier nom variables etc. + $chemin = new Chemin($chemin_str); $noms_params = Modules::liste_paramètres(); $noms_params[] = "action"; // récupérer $noms_params dans $_GET, $_POST et $_FILE diff --git a/__cms__/stockage/stockage.php b/__cms__/stockage/stockage.php @@ -9,15 +9,24 @@ class Stockage { public function nouvelle_page($chemin, $nom) { if (vérifier_permission($chemin, "nouvelle_page")) { $enfant = $chemin->enfant($nom); - SystemeFichiers::créer_dossier($config_chemin_base_stockage . '/' . $enfant->get()); - // Imitation de l'url rewriting - SystemeFichiers::écrire($config_chemin_base_public . '/' . $enfant->get(), "<?php require_once(" . $config_chemin_base_php . "/cms.php);"); // TODO : séparer dans une autre fonction (rewriting.php ?) + SystemeFichiers::créer_dossier($enfant->get_fs_stockage()); + self::activer_réécriture($enfant); return $enfant; } else { return false; } } + // Imitation de l'url rewriting lorsque ce n'est pas disponible sur + // le serveur. + public function activer_réécriture($chemin_vers) { + $php_str = "<?php\n" + $php_str .= "require_once(" . Path::combine($config_chemin_base, "cms.php") . ");\n" + $php_str .= "CMS::cms(" . $chemin_vers->get() . ");\n" + $php_str .= "?>\n" + SystemeFichiers::écrire($chemin_vers->get_fs_public(), $php_str); + } + public function set_prop($chemin, $prop, $valeur) { if (vérifier_permission($chemin, "set_prop")) { return SystemeFichiers::écrire(Path::combine($chemin->get_fs_stockage(), $prop), $valeur)