From bfd1f67c4bf7cab4f4da4f5af97046e5ee2a1c61 Mon Sep 17 00:00:00 2001 From: Fil <fil@rezo.net> Date: Wed, 20 Sep 2006 20:03:39 +0000 Subject: [PATCH] un lang_select() qui n'avait pas son copain lang_dselect() => changement de langue dans l'espace prive des qu'il y avait un modele dans un article ecrit dans une autre langue que celle du redacteur --- ecrire/public/assembler.php | 5 ++--- ecrire/public/parametrer.php | 13 +++++++++++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/ecrire/public/assembler.php b/ecrire/public/assembler.php index 8d27c05822..833f623d36 100644 --- a/ecrire/public/assembler.php +++ b/ecrire/public/assembler.php @@ -366,7 +366,6 @@ function recuperer_fond($fond, $contexte=array()) { $contexte['fond'] = $fond; // necessaire pour calculer correctement le cache $page = inclure_page($fond, $contexte); - if ($GLOBALS['flag_ob'] AND ($page['process_ins'] != 'html')) { ob_start(); eval('?' . '>' . $page['texte']); @@ -465,11 +464,11 @@ function inclure_modele($type, $id, $params, $lien) { $contexte['lien'] = str_replace(""",'"', $lien[0]); $contexte['lien_class'] = $lien[1]; } - + // Traiter les parametres // par exemple : <img1|center>, <emb12|autostart=true> ou <doc1|lang=en> $contexte = array_merge($contexte, - creer_contexte_de_modele($params)); + creer_contexte_de_modele($params)); // On cree un marqueur de notes unique lie a ce modele // et on enregistre l'etat courant des globales de notes... diff --git a/ecrire/public/parametrer.php b/ecrire/public/parametrer.php index b2accec21c..bb53c0e27b 100644 --- a/ecrire/public/parametrer.php +++ b/ecrire/public/parametrer.php @@ -291,11 +291,16 @@ function public_parametrer_dist($fond, $local='', $cache='') { if (!isset($lang)) $lang = $GLOBALS['meta']['langue_site']; - if (!$GLOBALS['forcer_lang']) + if (!$GLOBALS['forcer_lang'] + AND $lang <> $GLOBALS['spip_lang'] + ) { lang_select($lang); + $lang_select = true; + } $f = charger_fonction('styliser', 'public'); - list($skel,$mime_type, $gram, $sourcefile) = $f($fond, $id_rubrique_fond,$GLOBALS['spip_lang']); + list($skel,$mime_type, $gram, $sourcefile) = + $f($fond, $id_rubrique_fond, $GLOBALS['spip_lang']); // Charger le squelette en specifiant les langages cibles et source // au cas il faudrait le compiler (source posterieure au resultat) @@ -332,6 +337,10 @@ function public_parametrer_dist($fond, $local='', $cache='') { debug_dumpfile ($page['texte'], $fonc, 'resultat'); } $page['contexte'] = $local; + + if ($lang_select) + lang_dselect(); + return $page; } -- GitLab