pas de #ENV dans le head ?

salut à touTEs,

j'essaie de mettre en place un switcher de styles avec 2 feuilles css différentes mais je bute sur un truc agaçant

j'ai deux appels de ce genre dans la page (je simplifie)

<a href="[(#SELF|parametre_url{'style',''})]">A</a>
<a href="[(#SELF|parametre_url{'style','1'})]">B</a>

avec en head

<link href="[(#ENV{style}|=={''}|?{#CHEMIN{A.css},#CHEMIN{B.css}})]" />

qui ne me renvoie jamais que le premier argument, comme s'il n'y avait rien dans l'url... mais le paramètre passe bien.

il doit y avoir une bonne raison et une solution qui m'ont échappées mais je donne ma langue au chat.

fred

Le 18 octobre 2008 23:31, fred a écrit :

salut à touTEs,

j'essaie de mettre en place un switcher de styles avec 2 feuilles css
différentes mais je bute sur un truc agaçant

j'ai deux appels de ce genre dans la page (je simplifie)

<a href="[(#SELF|parametre_url{'style',''})]">A</a>
<a href="[(#SELF|parametre_url{'style','1'})]">B</a>

avec en head

<link href="[(#ENV{style}|=={''}|?{#CHEMIN{A.css},#CHEMIN{B.css}})]" />

qui ne me renvoie jamais que le premier argument, comme s'il n'y avait rien
dans l'url... mais le paramètre passe bien.

il doit y avoir une bonne raison et une solution qui m'ont échappées mais je
donne ma langue au chat.

Si tu testes une valeur numérique, il te faudrait une valeur numérique dans =={}
Tu devrait essayer 1 et 2 pour la valeur de style.

--
@plus

Jacques

Pour les lyonnais++ spip-lyon@rezo.net http://spip-party.net/-Lyon-

Le 18/10/08 23:47, Jacques J. a écrit :

Le 18 octobre 2008 23:31, fred a écrit :

j'ai deux appels de ce genre dans la page (je simplifie)

<a href="[(#SELF|parametre_url{'style',''})]">A</a>
<a href="[(#SELF|parametre_url{'style','1'})]">B</a>

avec en head

<link href="[(#ENV{style}|=={''}|?{#CHEMIN{A.css},#CHEMIN{B.css}})]" />

qui ne me renvoie jamais que le premier argument, comme s'il n'y avait rien
dans l'url... mais le paramètre passe bien.

Si tu testes une valeur numérique, il te faudrait une valeur numérique dans =={}
Tu devrait essayer 1 et 2 pour la valeur de style.
Les filtres de SPIP - SPIP

bien que [(#ENV{style}|=={''}|?...)] soit correct, j'ai essayé avec deux valeurs et c'est pas mieux.

placée dans le body, la balise renvoie ce qu'il faut;

dans le head, elle ne voit plus rien.

soit c'est un comportement normal dont je ne comprends pas la raison et que je ne sais pas contourner (à part avec du php ou des noisettes partout, ce que je souhaite éviter).
soit c'est un bug, mais ça m'étonnerait (précision: le site est en 1.9.2d).

fred

Le 18/10/08 23:47, Jacques J. a écrit :

Le 18 octobre 2008 23:31, fred a écrit :

salut à touTEs,

j'essaie de mettre en place un switcher de styles avec 2 feuilles css
différentes mais je bute sur un truc agaçant

j'ai deux appels de ce genre dans la page (je simplifie)

<a href="[(#SELF|parametre_url{'style',''})]">A</a>
<a href="[(#SELF|parametre_url{'style','1'})]">B</a>

avec en head

<link href="[(#ENV{style}|=={''}|?{#CHEMIN{A.css},#CHEMIN{B.css}})]" />

qui ne me renvoie jamais que le premier argument, comme s'il n'y avait rien
dans l'url... mais le paramètre passe bien.

il doit y avoir une bonne raison et une solution qui m'ont échappées mais je
donne ma langue au chat.

Si tu testes une valeur numérique, il te faudrait une valeur numérique dans =={}
Tu devrait essayer 1 et 2 pour la valeur de style.
Les filtres de SPIP - SPIP

oula...

il était tard, il semblerait que le bug c'était moi...

je ne sais pas où je me suis troué mais ça marche très bien en fait...

désolé pour le bruit.

enfin ça donnera au moins un petit truc au passage pour réaliser un switcher de styles tout simple et 100% spip :-p

fred

C'est un comportement normal, #ENV dans un fichier inclus ne prend en compte
que les paramètres transmis à ce fichier.

Si tu veux avoir accès à un paramètre passé dans la barre url, je te
conseille d'utiliser }}{#EVAL{_request('style'), A}} en lieu et place de ton
#ENV{style}

-----Message d'origine-----
De : spip-bounces@rezo.net [mailto:spip-bounces@rezo.net] De la part de fred
Envoyé : dimanche 19 octobre 2008 13:10
À : spip@rezo.net
Objet : Re: [Spip] pas de #ENV dans le head ?

Le 18/10/08 23:47, Jacques J. a écrit :

Le 18 octobre 2008 23:31, fred a écrit :

j'ai deux appels de ce genre dans la page (je simplifie)

<a href="[(#SELF|parametre_url{'style',''})]">A</a>
<a href="[(#SELF|parametre_url{'style','1'})]">B</a>

avec en head

<link href="[(#ENV{style}|=={''}|?{#CHEMIN{A.css},#CHEMIN{B.css}})]" />

qui ne me renvoie jamais que le premier argument, comme s'il n'y avait

rien

dans l'url... mais le paramètre passe bien.

Si tu testes une valeur numérique, il te faudrait une valeur numérique

dans =={}

Tu devrait essayer 1 et 2 pour la valeur de style.
Les filtres de SPIP - SPIP

bien que [(#ENV{style}|=={''}|?...)] soit correct, j'ai essayé avec deux
valeurs et c'est pas mieux.

placée dans le body, la balise renvoie ce qu'il faut;

dans le head, elle ne voit plus rien.

soit c'est un comportement normal dont je ne comprends pas la raison et
que je ne sais pas contourner (à part avec du php ou des noisettes
partout, ce que je souhaite éviter).
soit c'est un bug, mais ça m'étonnerait (précision: le site est en 1.9.2d).

fred

_______________________________________________
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 ou
http://embed.mibbit.com/?server=irc.freenode.net&channel=%23spip