3 if (!defined("_ECRIRE_INC_VERSION")) return; #securite
5 // #MENU_LANG affiche le menu des langues de l'espace public
6 // et preselectionne celle la globale $lang
7 // ou de l'argument fourni: #MENU_LANG{#ENV{malangue}}
9 // http://doc.spip.org/@balise_MENU_LANG
10 function balise_MENU_LANG ($p) {
11 $i_boucle = $p->nom_boucle ?
$p->nom_boucle
: ($p->id_boucle ?
$p->id_boucle
:'');
13 $_id_objet = $p->boucles
[$i_boucle]->primary
;
16 return calculer_balise_dynamique(
20 'LANG_TYPE_BOUCLE', // demande du type d'objet
26 // s'il n'y a qu'une langue eviter definitivement la balise ?php
27 // http://doc.spip.org/@balise_MENU_LANG_stat
28 function balise_MENU_LANG_stat ($args, $context_compil) {
29 if (strpos($GLOBALS['meta']['langues_multilingue'],',') === false) return '';
32 if ($objet == 'balise_hors_boucle') {
37 $objet = table_objet($objet);
38 $id_table_objet = id_table_objet($objet);
40 return array($objet, $id_objet,$id_table_objet);
43 // normalement $opt sera toujours non vide suite au test ci-dessus
44 // http://doc.spip.org/@balise_MENU_LANG_dyn
45 function balise_MENU_LANG_dyn($objet,$id_objet,$id_table_objet) {
46 include_spip('inc/lang');
48 $cible = parametre_url(self(), 'lang' , '', '&');
49 $post = generer_url_action('converser', 'redirect='. rawurlencode($cible), '&');
51 return array('formulaires/menu_lang',
55 'lang' => $GLOBALS['spip_lang'],
57 $id_table_objet => $id_objet
62 // balise type_boucle de Rastapopoulos dans le plugin etiquettes
63 // present aussi dans plugin ajaxforms...
64 // bref, a integrer dans le core ? :p
65 function balise_LANG_TYPE_BOUCLE($p) {
66 $type = $p->boucles
[$p->id_boucle
]->id_table
;
67 $p->code
= $type ?
$type : "balise_hors_boucle";