[SPIP Zone] CFG : #CONFIG dans une boucle

Bonjour

En lisant la doc de spip, j'ai pu voir qu'on pouvait utiliser #ENV
dans le critère d'une boucle.
J'ai voulu faire de même avec #CONFIG, il semblerait que cela ne soit
pas possible.

Cette première boucle ne pose aucun pb, les documents sont bien filtré
par pdf et tiff
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN pdf,tiff}>

Or ces 2 solutions ne retournent rien :
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN
#CONFIG{doc2img/format_source}}>

<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN <?php echo
lire_config('doc2img/format_source') ?>}>

J'ai bien vérifier que #CONFIG{doc2img/format_source} possédait la
bonne information c'est à dire la chaine pdf,tiff

J'utilise spip192a (oui c'est mal je sais) et cfg 1.0.10

Est ce qu'il y a une solution pour contourner ce pb ?

Merci

Km

* cam.lafit@azerttyu.net tapuscrivait, le 12/10/2007 16:31:

Bonjour

En lisant la doc de spip, j'ai pu voir qu'on pouvait utiliser #ENV
dans le critère d'une boucle.
J'ai voulu faire de même avec #CONFIG, il semblerait que cela ne soit
pas possible.

Cette première boucle ne pose aucun pb, les documents sont bien filtré
par pdf et tiff
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN pdf,tiff}>

Or ces 2 solutions ne retournent rien :
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN
#CONFIG{doc2img/format_source}}>

<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN <?php echo
lire_config('doc2img/format_source') ?>}>

J'ai bien vérifier que #CONFIG{doc2img/format_source} possédait la
bonne information c'est à dire la chaine pdf,tiff

J'utilise spip192a (oui c'est mal je sais) et cfg 1.0.10

Est ce qu'il y a une solution pour contourner ce pb ?

La doc pour un IN #ENV dit qu'il faut utiliser #ENV**
Tu as essayé #CONFIG** ?

--
RealET

cam.lafit@azerttyu.net a écrit :

Bonjour

En lisant la doc de spip, j'ai pu voir qu'on pouvait utiliser #ENV
dans le critère d'une boucle.
  

oui

J'ai voulu faire de même avec #CONFIG, il semblerait que cela ne soit
pas possible.
  

si

Cette première boucle ne pose aucun pb, les documents sont bien filtré
par pdf et tiff
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN pdf,tiff}>
  

bon

Or ces 2 solutions ne retournent rien :
<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN
#CONFIG{doc2img/format_source}}>
  

bon, SI #CONFIG{machin} est un array ! ! ! pas une chaine de caractere

<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN <?php echo
lire_config('doc2img/format_source') ?>}>
  

aaaaaarrrrrrrrrggggggggggghhhhhhhhhh
cela est IMPOSSIBLE
un skel SPIP c'est un langage d'abstraction de sql (les boucles et les balises) qui passe dans un compilateur, pour etre transformé en PHP.
<BOUCLE_xxx(DOCUMENTS){...}> est censé être évalué au moment de la compilation, alors que le php ne sera évalué qu'au rendu final. Et donc, vu du compilateur, ta balise php est un oscvur dialecte abscon sans signification qui casse la syntaxe de la boucle et la rend incompréhensible

J'ai bien vérifier que #CONFIG{doc2img/format_source} possédait la
bonne information c'est à dire la chaine pdf,tiff
  

donc une chaine, pas un array

J'utilise spip192a (oui c'est mal je sais) et cfg 1.0.10
  

ca change rien en la matiere

Est ce qu'il y a une solution pour contourner ce pb ?
  

deja discuté sur cette liste il me semble suite à une question de franz ou paolo.
il faut transformer la chaine en array, ce qui peut se faire par un explode(',',$texte), et compte tenu de l'ordre des arguments, necessite un filtre spip_explode

Merci
  

de rien

Km
  

Cédric

cedric.morin@yterium.com a écrit :

<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN <?php echo
lire_config('doc2img/format_source') ?>}>
  

aaaaaarrrrrrrrrggggggggggghhhhhhhhhh
cela est IMPOSSIBLE

c'est le vieux" SPIP D'ABORD" expliqué dans

qui a l'air toujours d'actualité.

un skel SPIP c'est un langage d'abstraction de sql (les boucles et les balises) qui passe dans un compilateur, pour etre transformé en PHP.
<BOUCLE_xxx(DOCUMENTS){...}> est censé être évalué au moment de la compilation, alors que le php ne sera évalué qu'au rendu final. Et donc, vu du compilateur, ta balise php est un oscvur dialecte abscon sans signification qui casse la syntaxe de la boucle et la rend incompréhensible

J'ai bien vérifier que #CONFIG{doc2img/format_source} possédait la
bonne information c'est à dire la chaine pdf,tiff

JL

Bonjour

aaaaaarrrrrrrrrggggggggggghhhhhhhhhh

En effet j'ai donné mes test en sachant que la solution echo de php
était vouée à l'echec. Mais comme on dit qui ne tente rien n'a rien.

Cedric, tu proposes d'utiliser spip_explode, peut on l'utiliser en
filtre coté boucle spip ? C'est à dire :

<BOUCLE_doc2img(DOCUMENTS) {id_article} {extension IN
#CONFIG{doc2img/format_source}|spip_explode}>

Bon je teste ça lundi, car les we c'est sacré :slight_smile:

km

S'lt

Bon l'idée du #SET, #GET ne marche pas, c'est finalement la meme
problématique que #CONFIG

Cedric j'ai essayé de déduire une écriture de ce que tu as dit.
Résultat : Néant que dalle nada.
Je n'arrive pas à pondre un truc.

Ceci ne marche pas :

<BOUCLE_doc2img(DOCUMENTS) {id_article=815} {extension IN
#GET{format}|explode{','}}>

Le spip_explode je n'en trouve trace nulle part. Et si je teste ne
donne pas de meilleur résultat.
Et dans les log rien à propos d'une ancienne discussion sur un sujet similaire.

Une idée ?

spip_explode n'existe pas, il faut l'inventer

function spip_explode($texte,$separateur){
return explode($separateur,$texte);
}

cam.lafit@azerttyu.net a écrit :

S'lt

Bon l'idée du #SET, #GET ne marche pas, c'est finalement la meme
problématique que #CONFIG

Cedric j'ai essayé de déduire une écriture de ce que tu as dit.
Résultat : Néant que dalle nada.
Je n'arrive pas à pondre un truc.

Ceci ne marche pas :

<BOUCLE_doc2img(DOCUMENTS) {id_article=815} {extension IN
#GET{format}|explode{','}}>

Le spip_explode je n'en trouve trace nulle part. Et si je teste ne
donne pas de meilleur résultat.
Et dans les log rien à propos d'une ancienne discussion sur un sujet similaire.

Une idée ?
_______________________________________________
spip-zone@rezo.net - http://listes.rezo.net/mailman/listinfo/spip-zone
  

Bonjour

Et bien fallait le savoir :slight_smile:

Pourquoi le explode de php ne passe pas directement ?

Merci c'est en bonne voie maintenant

km

Le 15/10/07, cam.lafit@azerttyu.net <cam.lafit@azerttyu.net> a écrit :

Bonjour

Et bien fallait le savoir :slight_smile:

Pourquoi le explode de php ne passe pas directement ?

L’appel de filtre passe toujours le texte source en premier (c’est le compilateur qui fait ça tout seul)=> il faut inverser les paramètres d’explode qui elle attend le texte en second d’où spip_explode

A+

Arnaud