[spip-dev] Interaction #Expose, boucle optionnelle, boucle récursive difficile

Bonjour,

J'ai observé un comportement bizarre de la balise Expose lorsqu'elle est utilisé dans une partie optionnelle puis on reboucle avec une boucle récursive.
Afin de mettre en évidence le souci je vous propose deux squelettes
1)

<BOUCLE_rub(RUBRIQUES) {id_rubrique=2} >
<ul class="pde">
<BOUCLE_smenu1(RUBRIQUES){racine}>
   <li><a href="#URL_RUBRIQUE" title="#TITRE" >#TITRE</a>
<B_smenu2><ul> [class="(#EXPOSE{show,hide})"]
<BOUCLE_smenu2(RUBRIQUES){id_parent}>[class="(#EXPOSE{show,hide})"]
   <li><a href="#URL_RUBRIQUE"title="#TITRE" >#TITRE</a></li>
   </BOUCLE_smenu2></ul></B_smenu2>
</li></BOUCLE_smenu1>
</ul></BOUCLE_rub>

Chez moi rubrique 2 et une sous rubrique de la rubrique 1 voici le résultat
     * Calendrier
           o class="show" class="show" Saison 2004-2005
           o class="hide" Saison 2003-2004
     * Présentation
     * Galerie photos
           o class="hide" class="hide" Photos Saison 2003-2004
           o class="hide" Photos Saison 2004-2005

Tout marche parfaitement bien pour ce squelette
Maintenant on ajoute à ce squelette
  <BOUCLE_ssmenu(boucle_smenu2)></BOUCLE_ssmenu>
comme suit
<BOUCLE_rub(RUBRIQUES) {id_rubrique=2} >
<ul class="pde">
<BOUCLE_smenu1(RUBRIQUES){racine}>
   <li><a href="#URL_RUBRIQUE" title="#TITRE" >#TITRE</a>
<B_smenu2><ul> [class="(#EXPOSE{show,hide})"]
<BOUCLE_smenu2(RUBRIQUES){id_parent}>[class="(#EXPOSE{show,hide})"]
  <li><a href="#URL_RUBRIQUE"title="#TITRE" >#TITRE</a>
<BOUCLE_ssmenu(boucle_smenu2)></BOUCLE_ssmenu>
</li></BOUCLE_smenu2>
</ul></B_smenu2>
</li></BOUCLE_smenu1>
</ul></BOUCLE_rub>

Maintenant voici le résultat
     * Calendrier
           o class="on" class="show" Saison 2004-2005
           o class="hide" Saison 2003-2004
     * Présentation
     * Galerie photos
           o class="hide" Photos Saison 2003-2004
           o class="hide" Photos Saison 2004-2005

Vous pouvez contaster qu'un "show" s'est transformé en "on"
version SPIP 1.9.2 [8782]

Bon courage
Job

job a écrit :

Bonjour,

En relisant mon dernier post, je me suis aperçu que j'avais mal posé le problème.
Le souci rencontré est le suivant :
Lorsque la balise est utilisé dans la partie optionnelle d'une boucle et que l'on utilise une boucle récursive alors la balise Expose ne prend plus en compte les éléments entre accolades (c'est à dire dans mon cas show ou hide) pour donner comme réponse "on" ou ""
Je viens de tester avec SPIP 1.9.3 dev SVN [8907]
Meme comportement
La boucle que je donne en exemple dans la suite se trouve dans un fichier test.html.
Les résultats obtenus le sont avec l'url spip.php?page=test&id_rubrique=2

Amicalement
Job