diff --git a/__cms__/code/modules/articles/articles-article.php b/__cms__/code/modules/articles/articles-article.php
new file mode 100644
index 0000000..d83a2de
--- /dev/null
+++ b/__cms__/code/modules/articles/articles-article.php
@@ -0,0 +1,60 @@
+parent(), '', "redirect");
+ } else {
+ if (isset($paramètres["contenu"])) {
+ Stockage::set_prop($chemin, "contenu", $paramètres["contenu"]);
+ }
+
+ // titre après les autres paramètres car il peut générer un redirect.
+ 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 : transmettre le paramètre "vue"
+ return new Page($chemin, '', "redirect");
+ }
+
+ if (isset($paramètres["vue"])) {
+ return self::vue($chemin, $paramètres["vue"]);
+ } else {
+ return self::vue($chemin);
+ }
+ }
+ }
+
+ public static function vue($chemin, $vue = "normal") {
+ if ($vue == "normal") {
+ $ret = '';
+
+ if (Permissions::vérifier_permission($chemin, "set_prop", Authentification::get_utilisateur())) {
+ $ret .= '
' . Stockage::get_prop($chemin, "description") . '
';
+ }
+
+ $ret .= '';
+ $ret .= '
';
+
+ return new Page($ret, Stockage::get_prop($chemin, "titre"));
+ }
+ }
+}
+
+Modules::enregister_module("ArticlesIndex", "articles-index", "vue", "titre description");
+
+?>
diff --git a/__cms__/code/modules/articles/articles-index.php~ b/__cms__/code/modules/articles/articles-index.php~
new file mode 100644
index 0000000..dac0b3b
--- /dev/null
+++ b/__cms__/code/modules/articles/articles-index.php~
@@ -0,0 +1,83 @@
+get_url() . '">';
+ $ret .= '
';
+ $ret .= formulaire_édition_texte_enrichi(Stockage::get_prop($chemin, "description"), "description");
+ $ret .= '
';
+ $ret .= '';
+ } else {
+ $ret .= '
' . Stockage::get_prop($chemin, "titre") . '
';
+ $ret .= '
' . Stockage::get_prop($chemin, "description") . '
';
+ }
+
+ $ret .= '
';
+ $ret .= '
';
+
+ if (Permissions::vérifier_permission($chemin, "nouvelle_page", Authentification::get_utilisateur())) {
+ $ret .= '- ';
+ $ret .= '
';
+
+ $ret .= '
';
+
+ $ret .= '
';
+ $ret .= ' ';
+ }
+
+ foreach (Stockage::liste_enfants($chemin) as $k) { // TODO : trier par numéro !
+ $mini = Modules::vue($k, 'miniature');
+ $ret .= '- ';
+ // TODO : mettre une ancre "#message"
+ $ret .= ''; // TODO : escape l'url !
+ $ret .= '';
+ $ret .= $mini->titre;
+ $ret .= '';
+ $ret .= '';
+ $ret .= '
';
+ }
+
+ $ret .= '
';
+
+ return new Page($ret, Stockage::get_prop($chemin, "titre"));
+ }
+ }
+}
+
+Modules::enregister_module("ArticlesIndex", "articles-index", "vue", "titre description");
+
+?>
diff --git a/__cms__/code/modules/articles/include.php b/__cms__/code/modules/articles/include.php
new file mode 100644
index 0000000..00e338f
--- /dev/null
+++ b/__cms__/code/modules/articles/include.php
@@ -0,0 +1,4 @@
+
\ No newline at end of file
diff --git a/__cms__/code/modules/articles/include.php~ b/__cms__/code/modules/articles/include.php~
new file mode 100644
index 0000000..eef384d
--- /dev/null
+++ b/__cms__/code/modules/articles/include.php~
@@ -0,0 +1,5 @@
+
\ No newline at end of file
diff --git a/__cms__/code/modules/forum/forum-index.php b/__cms__/code/modules/forum/forum-index.php
index 1fa2513..2b319ee 100644
--- a/__cms__/code/modules/forum/forum-index.php
+++ b/__cms__/code/modules/forum/forum-index.php
@@ -49,7 +49,7 @@ class ForumIndex {
$ret .= '
';
$ret .= '