From 978cb6e23400ecef8a5444aab9b86b947a3f1f1d Mon Sep 17 00:00:00 2001
From: Fil <fil@rezo.net>
Date: Fri, 16 Jun 2006 09:52:56 +0000
Subject: [PATCH] =?UTF-8?q?il=20y=20avait=20un=20petit=20bug=20quand=20on?=
 =?UTF-8?q?=20visualisait=20une=20page=20en=20espagnol=20(par=20exemple)?=
 =?UTF-8?q?=20dans=20un=20site=20dont=20la=20langue=20de=20base=20=C3=A9ta?=
 =?UTF-8?q?it=20fran=C3=A7ais,=20et=20que=20la=20langue=20de=20l'admin=20?=
 =?UTF-8?q?=C3=A9tait=20aussi=20le=20fra=C3=A7ais=20:=20les=20boutons=20d'?=
 =?UTF-8?q?admin=20apparaissaient=20alors=20en=20espagnol?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ecrire/balise/formulaire_admin.php | 20 +++++++++++++++++++-
 ecrire/public/admin.php            | 11 -----------
 2 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/ecrire/balise/formulaire_admin.php b/ecrire/balise/formulaire_admin.php
index 4e0b5410ee..608100a114 100644
--- a/ecrire/balise/formulaire_admin.php
+++ b/ecrire/balise/formulaire_admin.php
@@ -130,7 +130,23 @@ function balise_FORMULAIRE_ADMIN_dyn($float='', $debug='') {
 		  $preview = spip_num_rows(spip_query("SELECT id_$objet_affiche FROM spip_".table_objet($objet_affiche)." WHERE ".id_table_objet($objet_affiche)."=".$$id_type." AND ((statut IN ('prop', 'prive')) " . (!$p ? '' : "OR (statut='publie' AND date>NOW())") .")"));
 	}
 
-	return array('formulaire_admin', 0, 
+	//
+	// Regler les boutons dans la langue de l'admin (sinon tant pis)
+	//
+	include_spip('inc/lang');
+	include_spip('base/abstract_sql');
+	$login = preg_replace(',^@,','',$GLOBALS['spip_admin']);
+	$alang = spip_abstract_fetsel(array('lang'), array('spip_auteurs'),
+		array("login=" . spip_abstract_quote($login)));
+	if ($alang['lang']) {
+		lang_select($alang['lang']);
+		$lang = $GLOBALS['spip_lang'];
+		lang_dselect();
+	} else
+		$lang = '';
+
+
+	return array('formulaire_admin', 0,
 		array(
 			'id_article' => $id_article,
 			'id_rubrique' => $id_rubrique,
@@ -154,8 +170,10 @@ function balise_FORMULAIRE_ADMIN_dyn($float='', $debug='') {
 			'use_cache' => ($use_cache ? '' : ' *'),
 			'divclass' => $float,
 			'analyser' => $analyser,
+			'lang' => $lang,
 			'xhtml_error' => isset($GLOBALS['xhtml_error']) ? $GLOBALS['xhtml_error'] : ''
 			)
 		     );
 }
+
 ?>
diff --git a/ecrire/public/admin.php b/ecrire/public/admin.php
index cff20cd0b8..855788aca0 100644
--- a/ecrire/public/admin.php
+++ b/ecrire/public/admin.php
@@ -35,22 +35,11 @@ function affiche_boutons_admin($contenu) {
 		$suite = $regs[0].$split[1];
 	} else $suite ='';
 
-	//
-	// Regler les boutons dans la langue de l'admin (sinon tant pis)
-	//
-	include_spip('inc/lang');
-	include_spip('base/abstract_sql');
-	$login = ereg_replace('^@','',$GLOBALS['spip_admin']);
-	$lang = spip_abstract_fetsel(array('lang'), array('spip_auteurs'), array("login=" . spip_abstract_quote($login)));
-	if ($lang['lang']) lang_select($lang['lang']);
-
 	// Recuperer sans l'afficher la balise #FORMULAIRE_ADMIN, en float
 	$boutons_admin = inclure_balise_dynamique(
 		balise_FORMULAIRE_ADMIN_dyn('spip-admin-float'),
 	false);
 
-	if ($lang['lang']) lang_dselect();
-
 	return $contenu.$boutons_admin.$suite;
 }
 
-- 
GitLab