3 /***************************************************************************\
4 * SPIP, Systeme de publication pour l'internet *
6 * Copyright (c) 2001-2019 *
7 * Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James *
9 * Ce programme est un logiciel libre distribue sous licence GNU/GPL. *
10 * Pour plus de details voir le fichier COPYING.txt ou l'aide en ligne. *
11 \***************************************************************************/
14 * Ce fichier gère la balise dynamique `#MENU_LANG`
16 * @package SPIP\Core\Compilateur\Balises
19 if (!defined('_ECRIRE_INC_VERSION')) {
24 * Compile la balise dynamique `#MENU_LANG` qui affiche
25 * un sélecteur de langue pour l'espace public
27 * Affiche le menu des langues de l'espace public
28 * et présélectionne celle la globale `$lang`
29 * ou de l'arguemnt fourni: `#MENU_LANG{#ENV{malangue}}`
32 * @link http://www.spip.net/4626
35 * Pile au niveau de la balise
37 * Pile complétée du code compilé
39 function balise_MENU_LANG($p) {
40 return calculer_balise_dynamique($p, 'MENU_LANG', array('lang'));
44 * Calculs de paramètres de contexte automatiques pour la balise MENU_LANG
46 * S'il n'y a qu'une langue proposée, pas besoin du formulaire
47 * (éviter une balise ?php inutile)
50 * Liste des arguments demandés obtenus du contexte (lang)
51 * complétés de ceux fournis à la balise
52 * @param array $context_compil
53 * Tableau d'informations sur la compilation
55 * Liste (lang) des arguments collectés et fournis.
57 function balise_MENU_LANG_stat($args, $context_compil) {
58 if (strpos($GLOBALS['meta']['langues_multilingue'], ',') === false) {
66 * Exécution de la balise dynamique `#MENU_LANG`
68 * @uses menu_lang_pour_tous()
70 * Normalement `$opt` sera toujours non vide suite au test ci-dessus
75 * Liste : Chemin du squelette, durée du cache, contexte
77 function balise_MENU_LANG_dyn($opt) {
78 include_spip('balise/menu_lang_ecrire');
80 return menu_lang_pour_tous('var_lang', $opt);