Dotclear

Vous n'êtes pas identifié(e).

Annonce

#1 2008-03-18 23:53:02

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Nouveau plugin "Simple Website"

Au cas où ça intéresserait du monde, j'ai fait un plugin qui permet d'organiser un blog comme un site web relativement simple :
* définition d'une hiérarchie de sections
* association de billets à chaque section
* widget de navigation dans la hiérarchie
* page de plan de site présentant la hiérarchie

La caractéristique principale de ce plugin est que chaque section est en fait elle même un billet. Chaque section peut donc avoir un extrait, des commentaires, etc.

L'intégration au niveau des thèmes se fait par des nouveaux blocs sur le même modèle que <tpl:Entries> mais qui permettent de naviguer dans la hiérarchie des sections.
La mise en page peut être ajustée finement car ce plugin permet d'associer un fichier template à chaque section ou billet.

Plus de détails sur mon blog.

Hors ligne

#2 2008-03-19 07:36:37

adrian
Membre
Lieu : Pré saint gervais(93)
Inscription : 2005-12-26
Site Web

Re : Nouveau plugin "Simple Website"

Pour info, j'ai voulu l'integrer sur une version svn et j'ai ce résultat:

Strict Standards: Non-static method SimpleWebsiteTemplates::entryNext() cannot be called statically in /inc/clearbricks/template/class.template.php on line 114

Strict Standards: Non-static method SimpleWebsiteTemplates::entryPrevious() cannot be called statically in /inc/clearbricks/template/class.template.php on line 114

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in 
/inc/clearbricks/common/lib.http.php on line 213

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in 
/inc/clearbricks/common/lib.http.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in
/inc/clearbricks/common/lib.http.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in 
/inc/clearbricks/common/lib.http.php on line 215

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in /inc/public/lib.urlhandlers.php on line 71

Warning: Cannot modify header information - headers already sent by (output started at /inc/clearbricks/template/class.template.php:114) in 
/inc/clearbricks/common/lib.http.php on line 238

Hors ligne

#3 2008-03-19 07:49:19

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Nouveau plugin "Simple Website"

Bonne initiative.

Quelques remarques techniques, cependant :
* la syntaxe SQL utilisée dans _admin.php ne passe pas sous postgreSQL, il faut utiliser des SELECT champ AS alias,... plutôt que SELECT champ alias
ce qui donne la requête, ligne 93 :
    $allMenuItems = "SELECT P.post_title AS title, P.post_id AS id, P.post_url AS url, M.meta_id AS parent_id FROM ".$blog->prefix."post P, ".$blog->prefix."meta M WHERE P.post_id = M.post_id AND M.meta_type='swParentMenuItem' ORDER BY P.post_url";

* La méthode displayMenuHierarchy prend son premier argument en référence, et les appels à cette méthode ne passent pas tous une variable à cette place. Les versions récentes de php5 sont très pointilleuses à ce niveau. Il faut mieux stocker le retour de l'appel à la fonction dans une variable, et passer cette variable en argument.
Exemple, ligne 96 de _admin.php : remplacer
remplacer :

    $menuView .= self::displayMenuItemInHierarchy( 'home', __('Home'), $currentParent, true, self::displayMenuHierarchy($blog->con->select($allMenuItems)->rows(),'home',$currentParent,$post->post_id,true) );

Par :

    $rows=$blog->con->select($allMenuItems)->rows();
    $menuView .= self::displayMenuItemInHierarchy( 'home', __('Home'), $currentParent, true, self::displayMenuHierarchy($rows,'home',$currentParent,$post->post_id,true) );

Et idem aux lignes 174,177,180,183,186...


Dyslexics have more fnu!

Hors ligne

#4 2008-03-19 07:55:43

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Nouveau plugin "Simple Website"

Ah, et les méthodes entryNext et entryPrevious doivent être déclarées static :)


Dyslexics have more fnu!

Hors ligne

#5 2008-03-19 08:50:12

olivier
Administrator
Inscription : 2004-10-11

Re : Nouveau plugin "Simple Website"

Ce plugin a l'air effectivement très intéressant :)

Une remarque supplémentaire, pour ce qui est de coder un plugin, il n'est pas inutile de configurer son PHP comme suit (et suivre aussi les quelques recommandation):
http://doc.dotclear.net/2.0/resources/coding-standards

Note que si on te fait toutes ces remarques c'est que ton travail est intéressant :)


La seule difference entre un fou et moi, c'est que je ne suis pas fou. (Dali)

Hors ligne

#6 2008-03-19 09:01:28

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Nouveau plugin "Simple Website"

Je continue dans mes explorations :
* La syntaxe "REGEXP" ne marche qu'avec MySQL. Sous PostgreSQL, il faut utiliser "~".
* Comme l'indique olivier, avec les traces à fond, on a quelques notices résiduels, notamment dans tools.php. Ajouter, au début de la méthode AddMenuEntriesSelection:

    if (!isset($params['sql']))
            $params['sql'] = '';
    if (!isset($params['from']))
            $params['from'] = '';

* La fonction GetNextPost de tools.php doit être déclarée static


Dyslexics have more fnu!

Hors ligne

#7 2008-03-19 09:04:24

Dsls
Modérateur couteau-suisse
Inscription : 2004-11-18
Site Web

Re : Nouveau plugin "Simple Website"

Et dans les pages "section", j'ai l'erreur suivante, juste après les commentaires  :

Fatal error: Call to a member function commentsActive() on a non-object in /tmp/cbtpl/ba/bc/babc0960431541e2f2686218d044b3b3.php


Dyslexics have more fnu!

Hors ligne

#8 2008-03-19 11:15:18

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

Merci pour cet accueil et pour toutes ces remarques.
Je sens qu'il va falloir que je trouve où activer le bon niveau d'erreur php dans mon xampp et peut être même trouver comment y rajouter une base postgresql.

olivier a écrit :

Note que si on te fait toutes ces remarques c'est que ton travail est intéressant :)

Merci ! C'est bien comme cela que je l'avais compris. "Tout mais pas l'indifférence" comme dirait l'autre.

Hors ligne

#9 2008-03-19 13:25:44

RenardBlanc
Membre
Lieu : Souillac
Inscription : 2008-02-16
Site Web

Re : Nouveau plugin "Simple Website"

Salut Oaz, j'ai plein d'idées a la con pour ton plugins Nabaztag si tu veux après avoir régler celui la ;) mais je vais déjà tester website sur un blog de test ;)

Cordialement


http://www.tititortue.net/le_blog_de_titi/  (Dc2 V2.1.6) le Blog de madame
http://www.tititortue.net/le_blog_de_doudou/  (Dc2 V2.1.6) Mon blog
http://www.tititortue.net/le_blog_de_test/   (Dc2 V2.1.6) le Blog de création, Plugins et thèmes

Hors ligne

#10 2008-03-21 19:58:40

RenardBlanc
Membre
Lieu : Souillac
Inscription : 2008-02-16
Site Web

Re : Nouveau plugin "Simple Website"

bon j'ai plein d'erreur dés que je clique sur les section sous sections. a mon niveau la doc est non compréhensible,  bon la je suis crever mais demain je mets une tartines. je le test sur le second lien

et c'est surtout cette partie que je comprend pas trop

* Il faut insérer un block <tpl:swCustomPostContent> autour du contenu de la zone <div id="main">. Ce block permet de, simultanément, conserver l'affichage d'un billet standard ou de le remplacer par le contenu du fichier de template personnalisé de chaque billet lorsqu'un tel fichier est défini dans la boite "Site web simple" du billet.

Il faut ensuite définir au minimum un fichier template pour l'affichage des sections. Ce fichiers ne contient bien évidemment que la partie intérieure à la zone <div id="main">.

Les éléments de templates utilisables pour mettre en forme les pages de section sont :

    * Block <tpl:swMenuHierarchyEntries> : c'est un block qui fonctionne comme <tpl:Entries> mais qui itère sur les sections constituant le chemin hiérarchique permettant d'atteindre la section courante.
    * Block <tpl:swMenuLevelEntries> : c'est également un block qui fonctionne comme <tpl:Entries> mais celui-ci itère sur les sous-sections de la section courante.

L'affichage du plan de site est réalisé à travers un fichier dédié "sitemap.html" qui, lui-aussi, ne contient que la partie de template intérieure à la zone <div id="main">.

Un fichier par défaut est intégré au plugin mais il est tout à fait possible de le rédéfinir dans le thème utilisé. Des éléments de templates additionnels sont nécessaires pour mettre en forme le plan de site :

    * Valeur tpl:swSitemapURL : c'est l'URL de la page qui affiche le plan de site.
    * Block <tpl:swDefineBlock name="XXX"> : c'est un élément générique qui définit un block réutilisable en plusieurs endroits. En pratique, il définit une fonction PHP qui affiche le contenu du block.
    * Valeur tpl:swReuseBlock name="XXX" : c'est le pendant de l'élement précédent. Les blocks définis peuvent être inséré à divers endroits avec cet élément.

L'affichage du plan de site sans limitation de la profondeur de l'arbre est réalisé par un swDefineBlock/swReuseBlock récursif en bouclant à chaque niveau sur les section via un swMenuLevelEntries.

ah si le fichier sitmap livrer plante chez moi

a demain


http://www.tititortue.net/le_blog_de_titi/  (Dc2 V2.1.6) le Blog de madame
http://www.tititortue.net/le_blog_de_doudou/  (Dc2 V2.1.6) Mon blog
http://www.tititortue.net/le_blog_de_test/   (Dc2 V2.1.6) le Blog de création, Plugins et thèmes

Hors ligne

#11 2008-03-22 17:48:16

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

Merci pour toutes ces infos.
J'ai fait une version 1.1 où je pense avoir tout corrigé : http://barrejadis.azeau.com/post/2008/0 … Dotclear-2

Par ailleurs, le package du plugin contient désormais 2 fichiers template (post.html et section.html) à mettre directement dans un thème pour une utilisation immédiate sans autre configuration.

Pour le fichier sitemap qui "plante", il me faudra un peu plus d'info...

Hors ligne

#12 2008-03-24 02:04:29

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

Un "détail" que je signale avant de l'oublier : La présence d'un formulaire de saisie de commentaires au niveau des pages de section nécessite le behavior "templateAfterBlock" introduit dans le changeset 1499

Hors ligne

#13 2008-03-27 06:18:30

ptilou72
Membre
Inscription : 2006-07-29

Re : Nouveau plugin "Simple Website"

bonjour j'ai installé ta version1.1 , mis post.html et section.html dans le repertoire du theme (default)et j'ai cette erreur :

Warning: array_walk() [function.array-walk]: Unable to call SimpleWebsiteTemplates::makeArrayCallback() in /home/Web/domaine/path/plugins/simpleWebsite/_public.php on line 88

en home c'est en haut de page, en post c'est au niveau du widget

je suis en dc2b7

une idée d'où cela peut provenir ?


ma seule gloire webienne c'est d'avoir mon pseudo inscrit dans le marbre d'un obscur module de phpnuke ... ca ne fait pas de moi une star loin de là, mais c'est toujours mieux que mon nom dans Voilà . Non ? ah bon... désolé...

Hors ligne

#14 2008-03-27 07:39:22

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

ptilou72 a écrit :

Warning: array_walk() [function.array-walk]: Unable to call SimpleWebsiteTemplates::makeArrayCallback() in /home/Web/domaine/path/plugins/simpleWebsite/_public.php on line 88

une idée d'où cela peut provenir ?

Pas le moins du monde. Il y a surement une subtilité qui m'échappe dans l'appel array_walk sur une fonction statique de classe.
Tu es en quelle version de php ?

Hors ligne

#15 2008-03-29 07:28:48

ptilou72
Membre
Inscription : 2006-07-29

Re : Nouveau plugin "Simple Website"

je suis en PHP 5.2.0-8+etch10, avec Apache 2.2.3 sur Debian Etch, si ça te parle :)


ma seule gloire webienne c'est d'avoir mon pseudo inscrit dans le marbre d'un obscur module de phpnuke ... ca ne fait pas de moi une star loin de là, mais c'est toujours mieux que mon nom dans Voilà . Non ? ah bon... désolé...

Hors ligne

#16 2008-03-29 17:51:00

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

Ca ne me parle pas plus que ça mais un php 5.2 ça ne devrait pas poser de pb...
Ce qui m'inquiète c'est que ton message d'erreur semble ne pas exister.
Quand on fait une recherche Google sur "Warning: array_walk() [function.array-walk]: Unable to call", on n'obtient que des réponses où le message d'erreur dit "function does not exist in ..." mais dans ton cas, la fonction existe et il n'arrive pas à l'appeler... Mystère...

Ce que je vais faire dans la prochaine version c'est ne plus utiliser "array_walk".

Hors ligne

#17 2008-03-29 19:54:03

ptilou72
Membre
Inscription : 2006-07-29

Re : Nouveau plugin "Simple Website"

j'ai un peu "avancé" sur le pb, sur la version svn, cela se produit aussi mais... 1 fois, le temps que le cache se créé apparemment. Ca doit etre lié, entre le cache du blog, celui de firefox, pas facile de s'en sortir...
je vais maintenant essayer de créer des sous-sections et voir comment cela se goupille, je vois plein d'interet a ton plugin, encore faut-il le mettre en oeuvre ;)


ma seule gloire webienne c'est d'avoir mon pseudo inscrit dans le marbre d'un obscur module de phpnuke ... ca ne fait pas de moi une star loin de là, mais c'est toujours mieux que mon nom dans Voilà . Non ? ah bon... désolé...

Hors ligne

#18 2008-04-02 11:04:48

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : Nouveau plugin "Simple Website"

Bonjour
J'ai mis ton plugin en test. Pour l'instant je me suis contenté de l'installer sans modifier mes fichiers .html avec tes templates.
L'installation c'est bien passé et j'ai crée un premier billet que j'ai parenté avec Accueil.
Je constate que si je clique sur voir le billet, le billet est visible sur l'url classique
http://domaine.fr/post/billet-test et également par le widget avec pour url
http://domaine.fr/section/billet-test
j'en déduis que le billet garde un post_type "post" mais là quelque chose m'intrigue : pourquoi il n'est pas affiché par la boucle normale des billets de la page d'accueil du blog.
Ma question est donc, pourquoi le billet est visible sur le mode post et pas le mode home ?


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#19 2008-04-02 11:27:19

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

adjaya a écrit :

Bonjour
J'ai mis ton plugin en test. Pour l'instant je me suis contenté de l'installer sans modifier mes fichiers .html avec tes templates.
L'installation c'est bien passé et j'ai crée un premier billet que j'ai parenté avec Accueil.
Je constate que si je clique sur voir le billet, le billet est visible sur l'url classique
http://domaine.fr/post/billet-test et également par le widget avec pour url
http://domaine.fr/section/billet-test
j'en déduis que le billet garde un post_type "post" mais là quelque chose m'intrigue : pourquoi il n'est pas affiché par la boucle normale des billets de la page d'accueil du blog.
Ma question est donc, pourquoi le billet est visible sur le mode post et pas le mode home ?

Réponse rapide : parce que j'ai un behavior "templateBeforeBlock" qui modifie la requête (tableau "params") utilisée par <tpl:Entries>.

L'idée derrière tout ça est que je voulais utiliser l'intégralité de la structure "post" pour définir mes sections. Je ne voulais pas créer une structure tierce dans laquelle j'aurais mis un titre, un résumé, un contenu, des images, des commentaires, etc.
Donc j'ai mis en place un filtrage : dans le <tpl:Entries> je ne laisse que les billets "normaux" et je fournis <tpl:swMenuHierarchyEntries> et <tpl:swMenuLevelEntries> pour naviguer dans la hiérarchie de sections.
Le mode "section" n'est donc qu'un alias du mode "post".
J'ai hésité à séparer un peu plus les choses en mettant un "section.html" qui soit une page à part entière mais j'ai toujours trouvé énervant d'avoir des répétitions entre les pages de thème des divers modes. J'ai préféré mettre en place un système où le design global est toujours le même, celui de post.html et, grace à <tpl:swCustomPostContent>, je peux définir au cas par cas l'affichage de la zone principale d'un billet ou d'une section. Je sais que cette façon de faire sort un peu de la logique des modes de dotclear mais je préfère...

Ceci étant dit, j'aurais du essayer d'empêcher l'affichage des sections sur le mode post pour ne pas avoir le même contenu avec 2 URLs différentes.

Hors ligne

#20 2008-04-02 12:47:31

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : Nouveau plugin "Simple Website"

Merci pour cette réponse très précise et documenté. Le choix que tu a fait pour filtrer me convient tout à fait et je trouve au contraire qu'il est bien dans la logique de dotclear.
En fait, je cherche même à ne pas filtrer les billets du flux du blog et garder le mode post pour l'affichage des billets affilié à ton plugin. ta réponse me permet de mieux comprendre ou agir pour obtenir ce comportement, quitte à surcharger ton behavior "templateBeforeBlock" et le widget d'affichage du menu pour qu'il renvoie sur des urls en mode post.


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#21 2008-04-02 19:23:47

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : Nouveau plugin "Simple Website"

Bon suite des tests :
J'ai reussi à faire tourner le plugin en mode post un peu comme un sauvage, (en attendant de faire plus propre :) ) je m'explique :
J'ai mis en commentaire la déclaration des behaviors beforeBlock et afterBlock dans _public.php
J'ai également mis en commentaire les lignes
$posts->extend("SimpleWebsiteExtMenuItemPost"); dans tools.php

Ensuite pour avoir le menu courrant sur un post, j'ai mis ce code dans la boucle des billets :

  <tpl:swDefineBlock name="SubMyEntry">
      <li>
        <tpl:swEntryIfHierarchy in="1"><a href="{{tpl:EntryURL}}"><span class="swCurrentItem">{{tpl:EntryTitle encode_html="1"}}</span></a>{{tpl:swReuseBlock name="SubMyEntriesList"}}</tpl:swEntryIfHierarchy>
        <tpl:swEntryIfHierarchy in="0"><a href="{{tpl:EntryURL}}">{{tpl:EntryTitle encode_html="1"}}</a></tpl:swEntryIfHierarchy>
      </li>
  </tpl:swDefineBlock>
  <tpl:swDefineBlock name="SubMyEntriesList">
     <ul>
      <tpl:swMenuLevelEntries>
          {{tpl:swReuseBlock name="SubMyEntry"}}
      </tpl:swMenuLevelEntries>
    </ul>         
  </tpl:swDefineBlock>
  <ul>
  <tpl:swSetHierarchyRef>
    <tpl:swMenuLevelEntries parent_id="home">
        {{tpl:swReuseBlock name="SubMyEntry"}}
    </tpl:swMenuLevelEntries>
  </tpl:swSetHierarchyRef>
  </ul>	
<hr id="nonav">

Le code fonctionne mais ce n'est pas exactement ce que j'attend.
J'aimerais que sur le billet n'aparraisssent que le lien parent s'il existe, et les liens enfants direct ( pas les enfants des enfants et pas les sections étrangères : Est-ce possible, et si oui comment ?

D'autre par j'ai une erreur fatale en cliquant sur le lien plan du site :

Fatal error: Call to undefined method SimpleWebsiteSitemapPost::trackbacksActive() in /homepages/24/d207761221/htdocs/dotclear/cache/cbtpl/4d/b7/4db711b3be1afc4fe69e418d37095e6f.php on line 41


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#22 2008-04-02 19:27:30

adjaya
Membre
Lieu : Provence - Luberon
Inscription : 2006-09-05
Site Web

Re : Nouveau plugin "Simple Website"

Ah, et d'autre part je sais pas comment faire pour que le menu courant n'apparaisse pas sur les billets non affiliés au plugin.


Photo, Art et Création Numérique : http://benoit-grelier.photo7.fr/

Hors ligne

#23 2008-04-02 19:40:13

Avorathol
Membre
Inscription : 2008-04-02

Re : Nouveau plugin "Simple Website"

Hello,
Ce plugin a l'air d'être exactement ce que je recherche, mais je n'arrive pas à l'installer correctement.

J'ai bien essayé de créer les différentes pages qu'il faut, mais ça ne doit même pas venir de là puisque c'est dès l'interace d'admin que ça marche pas.

Je me retrouve avec ces erreurs en haut des pages d'admin :


Warning: Invalid argument supplied for foreach() in /mnt/112/free.fr/f/a/avo.lepetitmonde/blog/plugins/simpleWebsite/_admin.php on line 196

Warning: Cannot modify header information - headers already sent by (output started at /mnt/112/free.fr/f/a/avo.lepetitmonde/blog/plugins/simpleWebsite/_admin.php:196) in /mnt/112/free.fr/f/a/avo.lepetitmonde/blog/inc/admin/lib.dc.page.php on line 90

Une idée sur la question ? Merci d'avance.

Hors ligne

#24 2008-04-02 22:44:32

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

adjaya a écrit :

J'aimerais que sur le billet n'aparraisssent que le lien parent s'il existe, et les liens enfants direct ( pas les enfants des enfants et pas les sections étrangères : Est-ce possible, et si oui comment ?

Je ne suis pas sur de comprendre.
Qu'entends-tu par lien parent d'un "billet" ?

Peut-être avec un exemple ?


adjaya a écrit :

D'autre par j'ai une erreur fatale en cliquant sur le lien plan du site :

Fatal error: Call to undefined method SimpleWebsiteSitemapPost::trackbacksActive() in /homepages/24/d207761221/htdocs/dotclear/cache/cbtpl/4d/b7/4db711b3be1afc4fe69e418d37095e6f.php on line 41

Tu dois avoir un {{tpl:EntryTrackbackData}} qui traine à l'extérieur de <tpl:swCustomPostContent> dans post.html. Il faut le ramener à l'intérieur.

Hors ligne

#25 2008-04-02 22:48:48

Oaz
Membre
Lieu : Toulouse
Inscription : 2007-08-05
Site Web

Re : Nouveau plugin "Simple Website"

Avorathol a écrit :

Je me retrouve avec ces erreurs en haut des pages d'admin :

Warning: Invalid argument supplied for foreach() in /mnt/112/free.fr/f/a/avo.lepetitmonde/blog/plugins/simpleWebsite/_admin.php on line 196

Oui. Quelqu'un a déjà rencontré ce problème : la fonction "glob" ne semble pas arriver à trouver les fichiers "*.menu.html"
J'ai saisi un ticket pour ne pas lever d'erreur dans un tel cas mais je ne connais pas la source du problème.

Pour info, les tickets de bug ou évolutions sur ce plugin sont là :
http://code.google.com/p/dcplugins/issu … pleWebsite

Hors ligne

Vous n'êtes pas identifié(e).

Pied de page des forums

Sites map