SI/SINON en spip

Re,

Je voudrais savoir s'il est possible de faire un test (si/sinon) sans utiliser PHP

Par exemple dans la boucle de composition de ma liste input donnée dans le mail précédent, je souhaite tester si l'établissement en cours est celui passé en GET
J'ai pensé à faire [(#ENV{etablissement}=#ID|?{'selected',''})] mais le débuggeur spip n'apprécie pas (il dit que =#ID n'existe pas).
Comment faire un tel test en language SPIP ?

Pour l'instant, je fais ce test en PHP et je suis sûr que je peux faire plus propre !

Merci pour votre aide

Note : voici la boucle en question, j'y ai mis le bout de code (mon test) qui ne marche pas :
      <select name='etablissement' onchange="document.forms['liste_candidats'].submit();">
         <OPTION VALUE=''>-=[&Eacute;tablissements]=-</OPTION>
         <BOUCLE_departement(ODB_REF_DEPARTEMENT){par departement}>
            <optgroup label='#DEPARTEMENT'>
            <BOUCLE_etablissement(ODB_REF_ETABLISSEMENT){id_departement=#ID}{par etablissement}>
               <OPTION VALUE='#ID' [(#ENV{etablissement}=#ID|?{'selected',''})] >#ETABLISSEMENT</OPTION>
            </BOUCLE_etablissement>
            </optgroup>
         </BOUCLE_departement>
      </select>

Regardes Les filtres de SPIP - SPIP tout y est expliqué.

Xavier BUROT

Selon Cédric PROTIERE <cedric.protiere@auf.org>:

Re,

Je voudrais savoir s'il est possible de faire un test (si/sinon) sans
utiliser PHP

Par exemple dans la boucle de composition de ma liste input donnée dans
le mail précédent, je souhaite tester si l'établissement en cours est
celui passé en GET
J'ai pensé à faire [(#ENV{etablissement}=#ID|?{'selected',''})] mais le
débuggeur spip n'apprécie pas (il dit que =#ID n'existe pas).
Comment faire un tel test en language SPIP ?

Pour l'instant, je fais ce test en PHP et je suis sûr que je peux faire
plus propre !

Merci pour votre aide

Note : voici la boucle en question, j'y ai mis le bout de code (mon
test) qui ne marche pas :
      <select name='etablissement'
onchange="document.forms['liste_candidats'].submit();">
         <OPTION VALUE=''>-=[&Eacute;tablissements]=-</OPTION>
         <BOUCLE_departement(ODB_REF_DEPARTEMENT){par departement}>
            <optgroup label='#DEPARTEMENT'>

<BOUCLE_etablissement(ODB_REF_ETABLISSEMENT){id_departement=#ID}{par
etablissement}>
               <OPTION VALUE='#ID'
[(#ENV{etablissement}=#ID|?{'selected',''})] >#ETABLISSEMENT</OPTION>
            </BOUCLE_etablissement>
            </optgroup>
         </BOUCLE_departement>
      </select>
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

Merci pour la rapidité de la réponse

Effectivement, c'était le filtre |== que j'aurai dû utiliser, avec son
exemple : |[(#TITRE|=={édito}|?{'id="edito"',''})]

|et ça marche sans problème. Pour ce que cela intéresse, voici la
solution :
[(#ENV{etablissement}|=={#ID}|?{'selected',''})]

Merci encore
Cédric

Xavier BUROT a écrit :

Regardes Les filtres de SPIP - SPIP tout y est expliqué.

Xavier BUROT
http://xebiaut.free.fr

Selon Cédric PROTIERE <cedric.protiere@auf.org>:

Re,

Je voudrais savoir s'il est possible de faire un test (si/sinon) sans
utiliser PHP

Par exemple dans la boucle de composition de ma liste input donnée dans
le mail précédent, je souhaite tester si l'établissement en cours est
celui passé en GET
J'ai pensé à faire [(#ENV{etablissement}=#ID|?{'selected',''})] mais le
débuggeur spip n'apprécie pas (il dit que =#ID n'existe pas).
Comment faire un tel test en language SPIP ?

Pour l'instant, je fais ce test en PHP et je suis sûr que je peux faire
plus propre !

Merci pour votre aide

Note : voici la boucle en question, j'y ai mis le bout de code (mon
test) qui ne marche pas :
      <select name='etablissement'
onchange="document.forms['liste_candidats'].submit();">
         <OPTION VALUE=''>-=[&Eacute;tablissements]=-</OPTION>
         <BOUCLE_departement(ODB_REF_DEPARTEMENT){par departement}>
            <optgroup label='#DEPARTEMENT'>

<BOUCLE_etablissement(ODB_REF_ETABLISSEMENT){id_departement=#ID}{par
etablissement}>
               <OPTION VALUE='#ID'
[(#ENV{etablissement}=#ID|?{'selected',''})] >#ETABLISSEMENT</OPTION>
            </BOUCLE_etablissement>
            </optgroup>
         </BOUCLE_departement>
      </select>
_______________________________________________
liste spip
spip@rezo.net - désabonnement : spip-off@rezo.net
Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
Documentation de SPIP : http://www.spip.net/
irc://irc.freenode.net/spip
FAQ : http://www.spip-contrib.net/spikini/FaQ

* Cedric PROTIERE tapotait, le 12/05/2007 16:18:

Merci pour la rapidité de la réponse

Effectivement, c'était le filtre |== que j'aurai dû utiliser, avec son
exemple : |[(#TITRE|=={édito}|?{'id="edito"',''})]

|et ça marche sans problème. Pour ce que cela intéresse, voici la
solution :
[(#ENV{etablissement}|=={#ID}|?{'selected',''})]

Attention, là, tu écrit du HTML 4
Pour ceux qui voudraient écrire du xHTML, il faudrait :
[(#ENV{etablissement}|=={#ID}|?{'selected="selected"',''})]

--
RealET