diff --git a/__cms__/TODO b/__cms__/TODO index 4af3eae..341ab2d 100644 --- a/__cms__/TODO +++ b/__cms__/TODO @@ -7,3 +7,32 @@ Mettre le css dans une page (dossier) qui s'appelle "style.css", comme ça ça d c'est le index.php de cette page qui le génère). Si on ne peut lire la propriété __prop_type, afficher un "Access Denied" au lieu de dire qu'on n'a pas pu lire la propriété. Ajouter une petite horloge sur nouvel_evenement.jpg et un petit calendrier sur nouvelle_periode.jpg +Pour les "Nouveau xx", mettre un numéro pour éviter que deux personnes créent la même page mais l'éditent différemment. + +Pour la gestion d'erreurs : +public static function foo() { + enter("Création d'un fou :-p ."); + if (!Permission::vérifier_truc()) { return fail("Accès interdit"); } + $x = nofail(Stockage::créer_foo()); // Si Stockage::créer_foo() fait un fail, nous aussi. + $y = fatal_fail(truc_machin($x)); // Si truc_machin fait un fail, on affiche une erreur et on quite. + leave(); +} + + += API = +L'API fournie aux modules est trop verbeuse et n'a pas tout à fait les bonnes abstractions. Il faudrait refactoriser tout ça un de ces + jours. Nottemment, il faut pouvoir indiquer les éléments de la page de manière plus déclarative. Leur partie éditable et leur partie + affichage et la modification des propriétés associées et les valeurs par défaut doivent être gérées plus ou moins automatiquement. Ex : + +// Crée un <textarea> ou un <p>, dont la source / destination est le champ "description", et dont la valeur par défaut lors de la création +// de la page est "Description de la page." . +champ("description", "Description de la page.", "texte-long"); + +// Crée un bouton Appliquer, qui soumet le formulaire en cours. +// À étudier... +action("Appliquer", "submit"); + +// Crée un champ titre avec les trucs spéciaux du titre (renomage de la page + redirect). +// champ-special-titre est une fonction de rappel ? +// À étudier. +champ("titre", "Nouvelle page", "texte-court", "champ-special-titre"); \ No newline at end of file diff --git a/__cms__/code/cms/cms.php b/__cms__/code/cms/cms.php index 5c66724..2f761be 100644 --- a/__cms__/code/cms/cms.php +++ b/__cms__/code/cms/cms.php @@ -33,7 +33,7 @@ class CMS { $ret = Modules::action($chemin, $action, $paramètres); if (!Page::is_page($ret)) { - Erreur::fatale("Le module de " . $chemin->get() . " n'a pas renvoyé une page mais à la place : " . var_export($ret, true)); + Erreur::fatale("Le module de " . htmlspecialchars($chemin->get()) . " n'a pas renvoyé une page mais à la place : <pre><code>" . htmlspecialchars(var_export($ret, true)) . "</code></pre>", true); } else { $ret->envoyer(); } diff --git a/__cms__/code/cms/page.php b/__cms__/code/cms/page.php index 9d1ef46..c5f848b 100644 --- a/__cms__/code/cms/page.php +++ b/__cms__/code/cms/page.php @@ -73,7 +73,7 @@ class Page { } public static function is_page($obj) { - return get_class($obj) === __CLASS__; + return is_object($obj) && get_class($obj) === __CLASS__; } } diff --git a/__cms__/code/modules/forum/forum-index.php b/__cms__/code/modules/forum/forum-index.php index 0c5a0d3..1fa2513 100644 --- a/__cms__/code/modules/forum/forum-index.php +++ b/__cms__/code/modules/forum/forum-index.php @@ -5,37 +5,80 @@ class ForumIndex { if ($action == "anuler") { return new Page($chemin, '', "redirect"); } else if ($action == "nouvelle_page") { - // TODO : faut-il demander à avoir directement le nom du nouveau sujet ? - // TODO : quel est le propriétaire du nouveau sujet ? $np = Stockage::nouvelle_page($chemin, "Nouveau sujet", "forum-sujet"); Stockage::set_prop($np, "proprietaire", Authentification::get_utilisateur()); + Stockage::set_prop($np, "titre", "Nouveau sujet"); + Stockage::set_prop($np, "dernier_numero", 0); return new Page($np, '', "redirect"); } else { + if (isset($paramètres["description"])) { + Stockage::set_prop($chemin, "description", $paramètres["description"]); + } + + if (isset($paramètres["titre"])) { + Stockage::set_prop($chemin, "titre", $paramètres["titre"]); + } + if (isset($paramètres["vue"])) { - self::vue($chemin, $paramètres["vue"]); + return self::vue($chemin, $paramètres["vue"]); } else { - self::vue($chemin); + return self::vue($chemin); } } } public static function vue($chemin, $vue = "normal") { if ($vue == "normal") { - $ret = ''; - $ret .= "<h2>Forum</h2>"; - if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) { - // afficher le lien "Nouveau sujet" + $ret = ''; + + if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { + $ret .= '<form class="forum infos" method="post" action="' . $chemin->get_url() . '">'; + $ret .= '<h2><input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" /></h2>'; + $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "description"), "description"); + $ret .= '<p><input type="submit" value="appliquer" /></p>'; + $ret .= '</form>'; + } else { + $ret .= '<h2>' . Stockage::get_prop($chemin, "titre") . '</h2>'; + $ret .= '<p class="forum index description affichage">' . Stockage::get_prop($chemin, "description") . '</p>'; } - $ret .= '<ul class="forum index">'; - foreach (stockage::liste_enfants($chemin) as $k) { - $ret .= '<li><a href="' . chemin::vers_url($k) . '">' . modules::vue($k, 'miniature') . '</a></li>'; // TODO : escape l'url ! - } - $ret .= '</ul>'; - return $ret; + + $ret .= '<div class="forum sujets index">'; + $ret .= '<ul>'; + + if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) { + $ret .= '<li>'; + $ret .= '<div class="titre">'; + + $ret .= '<form class="galerie nouvelle_page" method="post" action="' . $chemin->get_url() . '">'; + $ret .= '<p>'; + $ret .= '<input type="hidden" name="action" value="nouvelle_page"/>'; + $ret .= '<input type="submit" value="Nouveau sujet de discussion"/>'; + $ret .= '</p>'; + $ret .= '</form>'; + + $ret .= '</div>'; + $ret .= '</li>'; + } + + foreach (Stockage::liste_enfants($chemin) as $k) { // TODO : trier par numéro ! + $mini = Modules::vue($k, 'miniature'); + $ret .= '<li>'; + // TODO : mettre une ancre "#message<numéro>" + $ret .= '<a href="' . $k->get_url() . '">'; // TODO : escape l'url ! + $ret .= '<span class="titre">'; + $ret .= $mini->titre; + $ret .= '</span>'; + $ret .= '</a>'; + $ret .= '</li>'; + } + + $ret .= '</ul>'; + + return new Page($ret, Stockage::get_prop($chemin, "titre")); } } } -Modules::enregister_module("ForumIndex", "forum-index", "vue"); +Modules::enregister_module("ForumIndex", "forum-index", "vue", "titre description"); -?> \ No newline at end of file +?> diff --git a/__cms__/code/modules/forum/forum-message.php b/__cms__/code/modules/forum/forum-message.php index fa29b71..c967db6 100644 --- a/__cms__/code/modules/forum/forum-message.php +++ b/__cms__/code/modules/forum/forum-message.php @@ -1,38 +1,41 @@ <?php -function action($chemin, $action, $paramètres) { - if ($action == "anuler") { - return new Page($chemin, '', "redirect"); - } else if ($action == "supprimer") { - Stockage::supprimer($chemin); - return new Page($chemin->parent(), '', "redirect"); - } else { - if (isset($paramètres["message"])) { - Stockage::set_prop($chemin, "message", $paramètres["message"]); - } - - // TODO ... Quelles sont les interactions entre l'utilisateur et le message, dans quel ordre, ... - if (isset($paramètres["vue"])) { - Modules::vue($chemin->parent(), $paramètres["vue"]); +class ForumMessage { + public static function action($chemin, $action, $paramètres) { + if ($action == "anuler") { + return new Page($chemin, '', "redirect"); + } else if ($action == "supprimer") { + Stockage::supprimer($chemin, true); // TODO ! gérer correctement le récursif + return new Page($chemin->parent(), '', "redirect"); } else { - Modules::vue($chemin->parent()); + if (isset($paramètres["message"])) { + Stockage::set_prop($chemin, "message", $paramètres["message"]); + } + + return new Page($chemin->parent(), '', "redirect"); } } -} - -function vue($chemin, $vue = "normal") { - if ($vue == "normal") { - $ret = ''; - if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { - $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "message"), "message"); - } else { - $ret .= affichage_texte_enrichi(Stockage::get_prop($chemin, "message")); + + public static function vue($chemin, $vue = "normal") { + if ($vue == "normal") { + $ret = ''; + + if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { + $ret .= '<form class="forum message edition" enctype="multipart/form-data" method="post" action="' . $chemin->get_url() . '">'; + $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "message"), "message"); + $ret .= '<p><input type="submit" value="appliquer" /></p>'; + $ret .= '</form>'; + } else { + $ret .= affichage_texte_enrichi(Stockage::get_prop($chemin, "message")); + } + if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) { + // peut-être afficher le bouton "Supprimer" ??? ou est-ce trop d'options ? + } + + // Peut-être afficher le bouton "citer" ? ou est-ce trop d'options ? + + return new Page($ret, Stockage::get_prop($chemin, "titre")); } - if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) { - // peut-être afficher le bouton "Supprimer" ??? ou est-ce trop d'options ? - } - // Peut-être afficher le bouton "citer" ? ou est-ce trop d'options ? - return $ret; } } diff --git a/__cms__/code/modules/forum/forum-sujet.php b/__cms__/code/modules/forum/forum-sujet.php index 60012d6..d8c78ab 100644 --- a/__cms__/code/modules/forum/forum-sujet.php +++ b/__cms__/code/modules/forum/forum-sujet.php @@ -10,33 +10,37 @@ class ForumSujet { Stockage::set_prop($chemin, "dernier_numero", $numéro_message); $np = Stockage::nouvelle_page($chemin, "" . $numéro_message, "forum-message"); Stockage::set_prop($np, "proprietaire", Authentification::get_utilisateur()); - + Stockage::set_prop($np, "message", ""); + return new Page($chemin, "#message" . $numéro_message, "redirect"); } else if ($action == "supprimer") { - Stockage::supprimer($chemin); + Stockage::supprimer($chemin, true); // TODO ! gérer correctement le récursif return new Page($chemin->parent(), '', "redirect"); } else { - if (isset($paramètres["titre"])) { + if (isset($paramètres["titre"]) && Stockage::prop_diff($chemin, "titre", $paramètres["titre"])) { + Stockage::set_prop($chemin, "titre", $paramètres["titre"]); Stockage::renomer($chemin, $paramètres["titre"]); $chemin = $chemin->renomer($paramètres["titre"]); - // TODO : peut-être new Page($chemin, '', "redirect") ? + // TODO : transmettre le paramètre "vue" + return new Page($chemin, '', "redirect"); } if (isset($paramètres["vue"])) { - self::vue($chemin, $paramètres["vue"]); + return self::vue($chemin, $paramètres["vue"]); } else { - self::vue($chemin); + return self::vue($chemin); } } } public static function vue($chemin, $vue = "normal") { if ($vue == "normal") { - $ret = ''; + $ret = ''; + if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) { - $ret .= '<form action="' . $chemin->get_url() . '">'; - $ret .= '<input type="text" name="titre" class="forum sujet titre edition" value="' . Stockage::get_prop($chemin, "titre") . '"/>'; - $ret .= '<input type="submit" value="renomer" />'; + $ret .= '<form class="forum sujet infos" method="post" action="' . $chemin->get_url() . '">'; + $ret .= '<h2><input type="text" name="titre" value="' . Stockage::get_prop($chemin, "titre") . '" /></h2>'; + $ret .= '<p><input type="submit" value="appliquer" /></p>'; $ret .= '</form>'; } else { $ret .= '<h2 class="forum sujet titre affichage">' . Stockage::get_prop($chemin, "titre") . '</h2>'; @@ -44,23 +48,31 @@ class ForumSujet { if (Permissions::vérifier_permission($chemin, "supprimer", Authentification::get_utilisateur())) { $ret .= '<form action="' . $chemin->get_url() . '">'; $ret .= '<input type="hidden" name="action" value="supprimer"/>'; - $ret .= '<input type="submit" value="Supprimer"/>'; + $ret .= '<input type="submit" value="Supprimer le sujet"/>'; $ret .= '</form>'; } $ret .= '<ul class="forum sujet">'; + foreach (stockage::liste_enfants($chemin) as $k) { - $ret .= '<li>' . Modules::vue($k) . '</li>'; + $ret .= '<li>' . Modules::vue($k)->contenu . '</li>'; } - $ret .= '</ul>'; + if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) { - $ret .= '<form action="' . $chemin->get_url() . '">'; + $ret .= '<li>'; + $ret .= '<form class="forum sujet nouvelle_page" method="post" action="' . $chemin->get_url() . '">'; + $ret .= '<p>'; $ret .= '<input type="hidden" name="action" value="nouvelle_page"/>'; - $ret .= '<input type="submit" value="Nouvelle page"/>'; + $ret .= '<input type="submit" value="Nouveau message"/>'; + $ret .= '</p>'; $ret .= '</form>'; + $ret .= '</li>'; } - return $ret; + + $ret .= '</ul>'; + + return new Page($ret, Stockage::get_prop($chemin, "titre")); } else if ($vue == "miniature") { - return Stockage::get_prop($chemin, "titre"); + return new Page("Sujet.", Stockage::get_prop($chemin, "titre")); } } } diff --git a/__cms__/code/modules/galerie/galerie-evenement.php b/__cms__/code/modules/galerie/galerie-evenement.php index 4cc0b71..1af0fac 100644 --- a/__cms__/code/modules/galerie/galerie-evenement.php +++ b/__cms__/code/modules/galerie/galerie-evenement.php @@ -46,7 +46,7 @@ class GalerieÉvènement { $ret .= '<p><input type="submit" value="appliquer" /></p>'; $ret .= '</form>'; } else { - $ret .= '<h2>' . Stockage::get_prop($chemin, "titre") . '</h2>'; + $ret .= '<h2 class="galerie evenement titre affichage">' . Stockage::get_prop($chemin, "titre") . '</h2>'; $ret .= '<p class="galerie evenement description affichage">' . Stockage::get_prop($chemin, "description") . '</p>'; } diff --git a/__cms__/code/securite/erreur.php b/__cms__/code/securite/erreur.php index a5498f0..2da0ab8 100644 --- a/__cms__/code/securite/erreur.php +++ b/__cms__/code/securite/erreur.php @@ -5,7 +5,7 @@ class Erreur { public $message = "erreur"; public $string = ""; - public static function fatale($message) { + public static function fatale($message, $html = false) { echo '<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> @@ -20,7 +20,7 @@ class Erreur { . htmlspecialchars(rawurlencode("Code de l'erreur : " . $message)) . '">' . htmlspecialchars(Config::get('courriel_admin')) . '</a>. Indiquez l\'erreur ci-dessous dans votre courriel.</p> - <p><strong>' . htmlspecialchars($message) . '</strong></p> + <p><strong>' . ($html ? $message : htmlspecialchars($message)) . '</strong></p> </body> </html>'; //echo "\n"; debug_print_backtrace(); diff --git a/__cms__/code/site/squelette.php b/__cms__/code/site/squelette.php index b549de7..b14259c 100644 --- a/__cms__/code/site/squelette.php +++ b/__cms__/code/site/squelette.php @@ -39,6 +39,7 @@ class Squelette { $ret .= ' <ul>' . $nl; $ret .= ' <li><a href="' . $racine->get_url() . '">Accueil</a></li>' . $nl; $ret .= ' <li><a href="' . $racine->enfant("galerie")->get_url() . '">Galerie</a></li>' . $nl; + $ret .= ' <li><a href="' . $racine->enfant("forum")->get_url() . '">Forum</a></li>' . $nl; if (Permissions::vérifier_permission($racine->enfant("admin"), "set_prop", Authentification::get_utilisateur())) { $ret .= '<li><a href="' . $racine->enfant("admin")->get_url() . '">Administration</a></li>' . $nl; } diff --git a/__cms__/donnees/forum/Un sujet de discussion/1/__prop__message b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__message new file mode 100644 index 0000000..c9d3a27 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__message @@ -0,0 +1 @@ +Un ptit message ! \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/1/__prop__proprietaire b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/1/__prop__type b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__type new file mode 100644 index 0000000..7f45162 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/1/__prop__type @@ -0,0 +1 @@ +forum-message \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/__prop__dernier_numero b/__cms__/donnees/forum/Un sujet de discussion/__prop__dernier_numero new file mode 100644 index 0000000..56a6051 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/__prop__dernier_numero @@ -0,0 +1 @@ +1 \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/__prop__proprietaire b/__cms__/donnees/forum/Un sujet de discussion/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/__prop__titre b/__cms__/donnees/forum/Un sujet de discussion/__prop__titre new file mode 100644 index 0000000..618d894 --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/__prop__titre @@ -0,0 +1 @@ +Un sujet de discussion \ No newline at end of file diff --git a/__cms__/donnees/forum/Un sujet de discussion/__prop__type b/__cms__/donnees/forum/Un sujet de discussion/__prop__type new file mode 100644 index 0000000..2901a6c --- /dev/null +++ b/__cms__/donnees/forum/Un sujet de discussion/__prop__type @@ -0,0 +1 @@ +forum-sujet \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/1/__prop__message b/__cms__/donnees/forum/Une autre discussion/1/__prop__message new file mode 100644 index 0000000..5cf1d44 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/1/__prop__message @@ -0,0 +1 @@ +Bla bla bla... \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/1/__prop__proprietaire b/__cms__/donnees/forum/Une autre discussion/1/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/1/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/1/__prop__type b/__cms__/donnees/forum/Une autre discussion/1/__prop__type new file mode 100644 index 0000000..7f45162 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/1/__prop__type @@ -0,0 +1 @@ +forum-message \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/2/__prop__message b/__cms__/donnees/forum/Une autre discussion/2/__prop__message new file mode 100644 index 0000000..a51aca6 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/2/__prop__message @@ -0,0 +1 @@ +Plop \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/2/__prop__proprietaire b/__cms__/donnees/forum/Une autre discussion/2/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/2/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/2/__prop__type b/__cms__/donnees/forum/Une autre discussion/2/__prop__type new file mode 100644 index 0000000..7f45162 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/2/__prop__type @@ -0,0 +1 @@ +forum-message \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/3/__prop__message b/__cms__/donnees/forum/Une autre discussion/3/__prop__message new file mode 100644 index 0000000..43a62ae --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/3/__prop__message @@ -0,0 +1 @@ +Truc \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/3/__prop__proprietaire b/__cms__/donnees/forum/Une autre discussion/3/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/3/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/3/__prop__type b/__cms__/donnees/forum/Une autre discussion/3/__prop__type new file mode 100644 index 0000000..7f45162 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/3/__prop__type @@ -0,0 +1 @@ +forum-message \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/__prop__dernier_numero b/__cms__/donnees/forum/Une autre discussion/__prop__dernier_numero new file mode 100644 index 0000000..e440e5c --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/__prop__dernier_numero @@ -0,0 +1 @@ +3 \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/__prop__proprietaire b/__cms__/donnees/forum/Une autre discussion/__prop__proprietaire new file mode 100644 index 0000000..f77b004 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/__prop__proprietaire @@ -0,0 +1 @@ +admin \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/__prop__titre b/__cms__/donnees/forum/Une autre discussion/__prop__titre new file mode 100644 index 0000000..bda4227 --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/__prop__titre @@ -0,0 +1 @@ +Une autre discussion \ No newline at end of file diff --git a/__cms__/donnees/forum/Une autre discussion/__prop__type b/__cms__/donnees/forum/Une autre discussion/__prop__type new file mode 100644 index 0000000..2901a6c --- /dev/null +++ b/__cms__/donnees/forum/Une autre discussion/__prop__type @@ -0,0 +1 @@ +forum-sujet \ No newline at end of file diff --git a/__cms__/donnees/forum/__prop__description b/__cms__/donnees/forum/__prop__description new file mode 100644 index 0000000..321eedd --- /dev/null +++ b/__cms__/donnees/forum/__prop__description @@ -0,0 +1 @@ +Description du forum. \ No newline at end of file diff --git a/__cms__/donnees/forum/__prop__titre b/__cms__/donnees/forum/__prop__titre new file mode 100644 index 0000000..f50eaff --- /dev/null +++ b/__cms__/donnees/forum/__prop__titre @@ -0,0 +1 @@ +Forum \ No newline at end of file diff --git a/__cms__/donnees/forum/__prop__type b/__cms__/donnees/forum/__prop__type new file mode 100644 index 0000000..5ff82de --- /dev/null +++ b/__cms__/donnees/forum/__prop__type @@ -0,0 +1 @@ +forum-index \ No newline at end of file diff --git a/forum/Nouveau sujet/1/index.php b/forum/Nouveau sujet/1/index.php new file mode 100644 index 0000000..3d0b852 --- /dev/null +++ b/forum/Nouveau sujet/1/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../../__cms__/cms.php"); + +CMS::page("/forum/Nouveau sujet/1"); + +?> \ No newline at end of file diff --git a/forum/Nouveau sujet/index.php b/forum/Nouveau sujet/index.php new file mode 100644 index 0000000..252d514 --- /dev/null +++ b/forum/Nouveau sujet/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../__cms__/cms.php"); + +CMS::page("/forum/Nouveau sujet"); + +?> \ No newline at end of file diff --git a/forum/Un sujet de discussion/index.php b/forum/Un sujet de discussion/index.php new file mode 100644 index 0000000..1b23ec4 --- /dev/null +++ b/forum/Un sujet de discussion/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../__cms__/cms.php"); + +CMS::page("/forum/Un sujet de discussion"); + +?> \ No newline at end of file diff --git a/forum/Une autre discussion/1/index.php b/forum/Une autre discussion/1/index.php new file mode 100644 index 0000000..60e365d --- /dev/null +++ b/forum/Une autre discussion/1/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../../__cms__/cms.php"); + +CMS::page("/forum/Une autre discussion/1"); + +?> \ No newline at end of file diff --git a/forum/Une autre discussion/2/index.php b/forum/Une autre discussion/2/index.php new file mode 100644 index 0000000..5fa1f61 --- /dev/null +++ b/forum/Une autre discussion/2/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../../__cms__/cms.php"); + +CMS::page("/forum/Une autre discussion/2"); + +?> \ No newline at end of file diff --git a/forum/Une autre discussion/3/index.php b/forum/Une autre discussion/3/index.php new file mode 100644 index 0000000..cfdfcb7 --- /dev/null +++ b/forum/Une autre discussion/3/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../../__cms__/cms.php"); + +CMS::page("/forum/Une autre discussion/3"); + +?> \ No newline at end of file diff --git a/forum/Une autre discussion/index.php b/forum/Une autre discussion/index.php new file mode 100644 index 0000000..016d14d --- /dev/null +++ b/forum/Une autre discussion/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE__) . "/./../../__cms__/cms.php"); + +CMS::page("/forum/Une autre discussion"); + +?> \ No newline at end of file diff --git a/forum/index.php b/forum/index.php new file mode 100644 index 0000000..ec4e7ab --- /dev/null +++ b/forum/index.php @@ -0,0 +1,7 @@ +<?php + +require_once(dirname(__FILE) . "/./../__cms__/cms.php"); + +CMS::page("/forum"); + +?> diff --git a/permissions.sh b/permissions.sh index e982dd2..9d9ef23 100644 --- a/permissions.sh +++ b/permissions.sh @@ -1,6 +1,6 @@ #!/bin/sh -fichiers="index.php galerie admin __cms__/donnees" +fichiers="index.php galerie forum admin __cms__/donnees" chgrp -R www-data $fichiers chmod -R 664 $fichiers