[SPIP] +2.1.12
[velocampus/web/www.git] / www / plugins / auto / Menu_langue_lien / Menu_langue_lien / formulaires / menu_lang.html
diff --git a/www/plugins/auto/Menu_langue_lien/Menu_langue_lien/formulaires/menu_lang.html b/www/plugins/auto/Menu_langue_lien/Menu_langue_lien/formulaires/menu_lang.html
new file mode 100644 (file)
index 0000000..34f2860
--- /dev/null
@@ -0,0 +1,63 @@
+[(#REM) 
+Stocker les traductions eventuelles de l'article en cours
+]
+<BOUCLE_article(ARTICLES){id_article}>
+#SET{ListeTraductions, #ARRAY{}}
+<BOUCLE_TraductionArticleCourant(ARTICLES){traduction}{lang !IN #CONFIG{menu_lang_liens/langues_invisibles,#ARRAY}}>
+       #SET_MERGE{ListeTraductions,#GET{ListeTraductions},#ARRAY{#LANG,#URL_ARTICLE}}
+</BOUCLE_TraductionArticleCourant>
+</BOUCLE_article>
+
+[(#REM) 
+Stocker les traductions eventuelles de la rubrique en cours si le plugin Tradrub est installe (permet l'utilisation du
+critere traduction sur les rubriques)
+]
+<BOUCLE_tradrub(CONDITION){si #PLUGIN{tradrub}}>
+    <BOUCLE_rubrique(RUBRIQUES){id_rubrique}>
+        #SET{ListeTraductions, #ARRAY{}}
+        <BOUCLE_TraductionRubriqueCourante(RUBRIQUES){traduction}{lang !IN #CONFIG{menu_lang_liens/langues_invisibles,#ARRAY}}>
+            #SET_MERGE{ListeTraductions,#GET{ListeTraductions},#ARRAY{#LANG,#URL_RUBRIQUE}}
+        </BOUCLE_TraductionRubriqueCourante>
+    </BOUCLE_rubrique>
+</BOUCLE_tradrub>
+
+[(#REM) 
+Y-a-t'il plus d'une langue reellement utilisee dans le site (moins les langues "invisibles") ?
+Si oui, on affiche le menu de langue
+Si non, rien
+
+Les langues "invisibles" sont les langues que le webmestre peut choisir de ne pas afficher dans le menu, 
+a partir du formulaire de configuration du plugin.
+
+Note : 'explode' est une fonction PHP : http://php.net/manual/fr/function.explode.php, utilisee ici pour renvoyer un tableau contenant 
+les langues utilisees, a partir de la variable meta 'langues_utilisees'. Ce tableau est compare avec le tableau des langues invisibles
+avec la fonction PHP 'array_diff' http://www.php.net/manual/fr/function.array-diff.php qui renvoie elle-meme un tableau. 
+
+]
+
+[(#SET{langues_a_afficher,[(#CONFIG{langues_utilisees}|explode{","}|array_diff{#CONFIG{menu_lang_liens/langues_invisibles, #ARRAY}})]})]
+
+<BOUCLE_PlusieursLanguesUtilisees(POUR){tableau #GET{langues_a_afficher}}{1,1}>
+<[(#CONFIG{menu_lang_liens/formatliste,bloc}|=={'bloc'}|?{div,ul})] id="menu_lang">
+[(#REM)
+On liste les langues utilisees dans le site
+]
+       <BOUCLE_ListeLangues(ARTICLES){par lang}{fusion lang}>
+               [(#REM)
+               Si la langue n'est pas celle en cours, on fait un lien qui fait 2 actions :
+               - fixer le cookie de langue sur la langue demandée
+               - rediriger sur l'article dans la langue demandée si opportun
+                 sinon, revenir sur la page en cours
+               ]
+               [(#LANG|=={#ENV{lang}}|non)
+                       [<a href="[(#URL_ACTION_AUTEUR{'converser', '', #GET{ListeTraductions}|table_valeur{#LANG}|sinon{#SELF}}|parametre_url{var_lang,#LANG})]" rel="alternate" title="[(#LANG|traduire_nom_langue|ucfirst|attribut_html)]"><div id="#LANG"></div><div id="hidden">(#LANG{langues}|ucfirst)</div></a>]
+               ]
+               [(#REM)
+               Si la langue est celle en cours, afficher celle-ci en gras, sans lien
+               ]
+               [(#LANG|=={#ENV{lang}}|oui)
+                       [<div id="#LANG"></div><div id="hidden">(#LANG{langues}|ucfirst)</div>]
+               ]
+       </BOUCLE_ListeLangues>
+</[(#CONFIG{menu_lang_liens/formatliste,bloc}|=={'bloc'}|?{div,ul})]>
+</BOUCLE_PlusieursLanguesUtilisees>
\ No newline at end of file