Changeset 54503 in spip-zone


Ignore:
Timestamp:
Nov 15, 2011, 7:42:27 PM (8 years ago)
Author:
jean-baptiste.pressac@…
Message:

Ajout des liens vers les traductions de la rubrique courante (nécessite le plugin Tradrub de Matthieu Marcillaud). Utilisation de la variable meta 'langues_utilisees' pour connaitre la liste des langues utilisées au lieu d'une boucle sur les articles (puisque l'on tient maintenant compte des rubriques). La variable meta est placée dans un ARRAY et comparée à la liste des langues "invisibles" avant d'être traitée.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/menu_langues_liens/formulaires/menu_lang.html

    r47470 r54503  
    88</BOUCLE_TraductionArticleCourant>
    99</BOUCLE_article>
     10
    1011[(#REM)
    11 Y-a-t'il plusieurs langues reellement utilisees dans le site ?
     12Stocker les traductions eventuelles de la rubrique en cours
     13]
     14<BOUCLE_rubrique(RUBRIQUES){id_rubrique}>
     15#SET{ListeTraductions, #ARRAY{}}
     16<BOUCLE_TraductionRubriqueCourante(RUBRIQUES){traduction}{lang !IN #CONFIG{menu_lang_liens/langues_invisibles,#ARRAY}}>
     17        #SET_MERGE{ListeTraductions,#GET{ListeTraductions},#ARRAY{#LANG,#URL_RUBRIQUE}}
     18</BOUCLE_TraductionRubriqueCourante>
     19</BOUCLE_rubrique>
     20
     21[(#REM)
     22Y-a-t'il plus d'une langue reellement utilisee dans le site (- les langues invisibles) ?
    1223Si oui, on affiche le menu de langue
    1324Si non, rien
     25
     26Note : 'explode' est une fonction PHP : http://php.net/manual/fr/function.explode.php, utilisŽe ici pour renvoyer un tableau contenant
     27les langues utilisŽes, ˆ partir de la variable meta 'langues_utilisees'. Ce tableau est comparŽ avec le tableau des langues invisibles
     28avec la fonction PHP 'array_diff' http://www.php.net/manual/fr/function.array-diff.php qui renvoie elle-meme un tableau.
     29
     30Un formulaire CFG permet de dŽfinir la liste des langues invisibles (qui ne doivent pas apparaitre dans le menu de langue).
    1431]
    15 <BOUCLE_PlusieursLanguesUtilisees(ARTICLES){par lang}{fusion lang}{lang !IN #CONFIG{menu_lang_liens/langues_invisibles,#ARRAY}}{1,1}>
     32
     33[(#SET{langues_a_afficher,[(#CONFIG{langues_utilisees}|explode{","}|array_diff{#CONFIG{menu_lang_liens/langues_invisibles}})]})]
     34
     35<BOUCLE_PlusieursLanguesUtilisees(POUR){tableau #GET{langues_a_afficher}}{1,1}>
    1636<div id="menu_lang">
    1737[(#REM)
    1838On liste les langues utilisees dans le site
    1939]
    20 
    21         <BOUCLE_ListeLangues(ARTICLES){par lang}{fusion lang}{lang!=}{lang !IN #CONFIG{menu_lang_liens/langues_invisibles,#ARRAY}}>
     40        <BOUCLE_ListeLangues(POUR){tableau #GET{langues_a_afficher}}>
    2241                [(#REM)
    2342                Si la langue n'est pas celle en cours, on fait un lien qui fait 2 actions :
     
    2645                  sinon, revenir sur la page en cours
    2746                ]
    28                 [(#LANG|=={#ENV{lang}}|non)
    29                         [<a href="[(#URL_ACTION_AUTEUR{'converser', '', #GET{ListeTraductions}|table_valeur{#LANG}|sinon{#SELF}}|parametre_url{var_lang,#LANG})]" rel="alternate" lang="#LANG" title="[(#LANG|traduire_nom_langue|ucfirst|attribut_html)]" class="langue_#LANG">(#LANG{langues}|ucfirst)</a>]
     47                [(#VALEUR|=={#ENV{lang}}|non)
     48                        [<a href="[(#URL_ACTION_AUTEUR{'converser', '', #GET{ListeTraductions}|table_valeur{#VALEUR}|sinon{#SELF}}|parametre_url{var_lang,#VALEUR})]" rel="alternate" lang="#VALEUR" title="[(#VALEUR|traduire_nom_langue|ucfirst|attribut_html)]" class="langue_#VALEUR">(#VALEUR|ucfirst)</a>]
    3049                ]
    3150                [(#REM)
    3251                Si la langue est celle en cours, afficher celle-ci en gras, sans lien
    3352                ]
    34                 [(#LANG|=={#ENV{lang}}|oui)
    35                         [<strong class="langue_#LANG" lang="#LANG" title="[(#LANG|traduire_nom_langue|ucfirst|attribut_html)]">(#LANG|ucfirst)</strong>]
     53                [(#VALEUR|=={#ENV{lang}}|oui)
     54                        [<strong class="langue_#VALEUR" lang="#VALEUR" title="[(#VALEUR|traduire_nom_langue|ucfirst|attribut_html)]">(#VALEUR|ucfirst)</strong>]
    3655                ]
    3756        </BOUCLE_ListeLangues>
Note: See TracChangeset for help on using the changeset viewer.