Transporter des balises a une boucle du niveau inferieur ou superieur

All contributions published for previous SPIP versions

Salut de l’Espagne et pardon pour mon français.

Il y a une manière pour transporter des balises a une boucle du niveau inferieur, n’importe pas le profundite deaux boucles, pour utiliser dans critères:

Dans mes_fonctions.php3 :

function set_var_contexte($texte, $var, &$contexte) {
    $contexte["$var"] = "$text" ;
    return ;
}

Dans le squelette(exemple):

<BOUCLE_forum(FORUMS) {id_article}...>
    ...
    [(#ID_FORUM|set_var_contexte{'monparam', $contexte})]
    ...
    <BOUCLE_discusion(FORUMS){id_enfant}...>
        #TITRE (c'est le parent)
        <BOUCLE_autre(FORUMS){id_forum=$monparam}...>
            #TITRE (c'est l'enfant exterieur encore)
        </BOUCLE_autre>
        ...
    </BOUCLE_discusion>
    ...
<BOUCLE_forum>

Mais pour enlever des variables d’une boucle du niveau inferieur a une boucle du niveau superieur, c’est ne marche pas pourquoi le changements du contexte inferieur sont perdus aux fin de boucle.

Ainsi c’est nécessaire:

Dans mes_fonctions.php3 :

function set_var_global($text, $var) {
    global $mon_contexte ;
    $mon_contexte["$var"] = "$text" ;
    return ;
}
function echo_var_global($void, $var) {
    global $mon_contexte ;
    return $mon_contexte["$var"] ;
}
function set_var_contexte($texte, $var, &$contexte) {
    $contexte["$var"] = "$text" ;
    return ;
}

Dans le squelette (ca marche aussi pour des boucles recursives) :

<BOUCLE_forum(FORUMS) {id_article}...>
    ...
    [(#ID_FORUM|set_var_global{'monparam'})]
    ...
    (recherche le message a la racine)
    <BOUCLE_top(FORUMS) {id_enfant}>
        [(#ID_FORUM|set_var_global{'monparam'})]
        <BOUCLE_ascendente(boucle_top)>
        </BOUCLE_ascendente>
    </BOUCLE_top>

    < !-- Ici, le #ID_FORUM il ne sert pas à n'importe quoi, seulement sert pour lancer le filtre -->
    [(#ID_FORUM|echo_var_global{'monparam'}|set_var_contexte{'monparam', $contexte})]
    ...
    <BOUCLE_discusion(FORUMS){id_forum=$monparam}...>
        #TITRE (le message a la racine)
        ...
    </BOUCLE_discusion>
    ...
<BOUCLE_forum>

C’est tout. C’est n’est pas très elegant mais...

Salut
Jose M. Sánchez
Sevilla
(España)

updated on 5 September 2004

Discussion

Aucune discussion

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom