CVS: spip inc-public-global.php3, 1.94, 1.95 spip_cookie.php3, 1.61, 1.62

Update of /home/spip-cvs/spip
In directory alan:/tmp/cvs-serv13342

Modified Files:
  inc-public-global.php3 spip_cookie.php3
Log Message:
multilinguisme public
suite (et fin?)

Index: inc-public-global.php3

RCS file: /home/spip-cvs/spip/inc-public-global.php3,v
retrieving revision 1.94
retrieving revision 1.95
diff -u -d -r1.94 -r1.95
--- a/inc-public-global.php3 28 Apr 2004 22:58:00 -0000 1.94
+++ b/inc-public-global.php3 29 Apr 2004 00:49:20 -0000 1.95
@@ -18,9 +18,8 @@
}*/

//
-// Inclusions de squelettes
+// Gestion de la langue du visiteur
//
-
function chercher_langue_squelette ($fichier_cache, $contexte='') {
   global $lang, $multilang, $spip_lang;

@@ -39,6 +38,17 @@
   return array($fichier_cache, $lang_squel, $contexte);
}

+// securite
+if ($lang) {
+ if (!ereg("^[a-z_]+$", $lang)) unset($lang);
+ if (!ereg(",$lang,", ",".lire_meta('langues_utilisees').",")) unset($lang);
+}
+
+
+//
+// Inclusions de squelettes
+//
+
function inclure_fichier($fond, $delais, $contexte_inclus = "") {
   global $fichier_cache;
   $fichier_requete = $fond;
@@ -83,21 +93,6 @@

//
-// Gerer modif langue visiteur
-//
-if ($HTTP_COOKIE_VARS['spip_lang']) {
- include_ecrire('inc_lang.php3');
- utiliser_langue_visiteur();
-}
-$menu_lang = $GLOBALS['spip_lang'];
-
-// securite lang
-if ($lang) {
- if (!ereg("^[a-z_]+$", $lang)) unset($lang);
- if (!ereg(",$lang,", ",".lire_meta('langues_utilisees').",")) unset($lang);
-}
-
-//
// Gestion du cache et calcul de la page
//

@@ -109,7 +104,11 @@
$fichier_cache = generer_nom_fichier_cache($fichier_requete);

list ($fichier_cache, $lang_squel) = chercher_langue_squelette($fichier_cache, $contexte);
+
if ($multilang AND !$lang) $lang = $lang_squel;
+if ($multilang) $spip_lang = $lang;
+$menu_lang = $spip_lang;
+
$chemin_cache = "CACHE/$fichier_cache";

$use_cache = utiliser_cache($chemin_cache, $delais);
@@ -222,7 +221,6 @@
   @Header("Content-Type: text/html; charset=".lire_meta('charset'));
}

-
// Envoyer la page
if (@file_exists($chemin_cache)) {
   if (!$headers_only) include($chemin_cache);

Index: spip_cookie.php3

RCS file: /home/spip-cvs/spip/spip_cookie.php3,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -d -r1.61 -r1.62
--- a/spip_cookie.php3 28 Apr 2004 23:49:13 -0000 1.61
+++ b/spip_cookie.php3 29 Apr 2004 00:49:20 -0000 1.62
@@ -179,8 +179,11 @@
if ($var_lang) {
   include_ecrire('inc_lang.php3');

- if (changer_langue($var_lang))
+ if (changer_langue($var_lang)) {
     spip_setcookie('spip_lang', $var_lang, time() + 365 * 24 * 3600);
+ $cible->delvar('lang');
+ $cible->addvar('lang', $var_lang);
+ }
}

// changer de langue espace prive (ou login)