4 |
david |
1 |
<?php
|
|
|
2 |
|
|
|
3 |
if (!defined("_ECRIRE_INC_VERSION")) return; #securite
|
|
|
4 |
|
|
|
5 |
// Ce "menu_lang" collecte dans le contexte permet de forcer la langue
|
|
|
6 |
// par defaut proposee dans le menu ; mais a quoi ca sert concretement ?
|
|
|
7 |
global $balise_MENU_LANG_ECRIRE_collecte;
|
|
|
8 |
$balise_MENU_LANG_ECRIRE_collecte = array('menu_lang');
|
|
|
9 |
|
|
|
10 |
// s'il n'y a qu'une langue proposee eviter definitivement la balise ?php
|
|
|
11 |
function balise_MENU_LANG_ECRIRE_stat ($args, $filtres) {
|
|
|
12 |
global $all_langs;
|
|
|
13 |
include_ecrire('inc_lang.php3');
|
|
|
14 |
if (strpos($all_langs,',') === false) return '';
|
|
|
15 |
return $args;
|
|
|
16 |
}
|
|
|
17 |
|
|
|
18 |
|
|
|
19 |
// normalement $opt sera toujours non vide suite au test ci-dessus
|
|
|
20 |
function balise_MENU_LANG_ECRIRE_dyn($default) {
|
|
|
21 |
return menu_lang_pour_tous('var_lang_ecrire', $opt);
|
|
|
22 |
}
|
|
|
23 |
|
|
|
24 |
function menu_lang_pour_tous($nom, $opt) {
|
|
|
25 |
include_ecrire("inc_lang.php3");
|
|
|
26 |
|
|
|
27 |
// Voir s'il y a une langue demandee par _request,
|
|
|
28 |
// ou une langue par defaut dans le contexte {menu_lang=xx}
|
|
|
29 |
$default = _request('lang');
|
|
|
30 |
lang_select($default);
|
|
|
31 |
if ($GLOBALS['spip_lang'] <> $default) {
|
|
|
32 |
$default = $menu_lang;
|
|
|
33 |
lang_select($default); # et remplace
|
|
|
34 |
if ($GLOBALS['spip_lang'] <> $default)
|
|
|
35 |
unset ($default); # annule tout choix par defaut
|
|
|
36 |
lang_dselect(); #annule la selection
|
|
|
37 |
}
|
|
|
38 |
lang_dselect();
|
|
|
39 |
|
|
|
40 |
$opt = liste_options_langues($nom, $default);
|
|
|
41 |
if (!$opt)
|
|
|
42 |
return '';
|
|
|
43 |
|
|
|
44 |
$site = lire_meta("adresse_site");
|
|
|
45 |
$post = ($site ? $site : '..') . "/spip_cookie.php3";
|
|
|
46 |
$cible = new Link('', /* racine */ true); # lien a partir de /
|
|
|
47 |
$cible->delVar('lang');
|
|
|
48 |
$cible = $cible->getUrl();
|
|
|
49 |
$postcomplet = new Link($post);
|
|
|
50 |
$postcomplet->addvar('url', $cible);
|
|
|
51 |
|
|
|
52 |
return array('formulaire_menu_lang',
|
|
|
53 |
3600,
|
|
|
54 |
array('nom' => $nom,
|
|
|
55 |
'url' => $post,
|
|
|
56 |
'cible' => $cible,
|
|
|
57 |
'retour' => $postcomplet->getUrl(),
|
|
|
58 |
'langues' => $opt
|
|
|
59 |
)
|
|
|
60 |
);
|
|
|
61 |
}
|
|
|
62 |
|
|
|
63 |
?>
|