diff --git a/inc-admin.php3 b/inc-admin.php3
index 3857a275455acbea7fcf067c7dfe0c92a6a7fd81..721da34819ccbd710da3532f4f91f4d61925e63b 100644
--- a/inc-admin.php3
+++ b/inc-admin.php3
@@ -105,4 +105,26 @@ function admin_dyn($id_article, $id_breve, $id_rubrique, $id_mot, $id_auteur, $d
 }
 
 
+// Inserer la feuille de style selon les normes, dans le <head>
+// Feuilles de style admin : d'abord la CSS officielle, puis la perso,
+function perso_admin($texte) {
+	$css = "<link rel='stylesheet' href='spip_admin.css' type='text/css' />\n";
+	if (@file_exists('spip_admin_perso.css'))
+		$css2 = "<link rel='stylesheet' href='spip_admin_perso.css' type='text/css' />\n";
+	else $css2 = '';
+	$x = strpos($texte,$css);
+	if ($x !== false) {
+		if ($css2) {
+			$x+=strlen($css);
+			return substr($texte,0,$x) . $css2 . substr($texte,$x+1);
+		} else 	return $texte;
+	} else {
+		if (eregi('<(/head|body)', $texte, $regs)) {
+			$texte = explode($regs[0], $texte, 2);
+			return $texte[0] . $css. $css2 . $regs[0] . $texte[1];
+		} else
+			return $css . $css2 . $texte;
+	}
+}
+
 ?>
diff --git a/inc-public-global.php3 b/inc-public-global.php3
index f62c680bbd5ec7f823b634fd90b23bc70a0bb5a0..0d5779333db12236e03ee4da06351804e7d0536f 100644
--- a/inc-public-global.php3
+++ b/inc-public-global.php3
@@ -248,41 +248,19 @@ function inclure_page($fond, $delais_inclus, $contexte_inclus, $cache_incluant='
 
 	// Retourner le contenu...
 	return $page;
-
 }
 
 function inclure_formulaire($r) {
 	if (is_string($r))
-	echo $r;
+		echo $r;	# ??? c'est du debug ou quoi ?
 	else {
 		list($fond, $delais, $contexte_inclus) = $r;
 		if ((!$contexte_inclus['lang']) AND
-		    ($GLOBALS['spip_lang'] != lire_meta('langue_site')))
+		($GLOBALS['spip_lang'] != lire_meta('langue_site')))
 			$contexte_inclus['lang'] = $GLOBALS['spip_lang']; 
 		include('inc-public.php3');
 	}
 }
 
 
-// Inserer la feuille de style selon les normes, dans le <head>
-// Feuilles de style admin : d'abord la CSS officielle, puis la perso,
-function perso_admin($texte) {
-	$css = "<link rel='stylesheet' href='spip_admin.css' type='text/css' />";
-	if (@file_exists('spip_admin_perso.css'))
-		$css2 = "<link rel='stylesheet' href='spip_admin_perso.css' type='text/css' />\n";
-	else $css2 = '';
-	$x = strpos($texte,$css);
-	if ($x !== false) {
-		if ($css2) {
-			$x+=strlen($css);
-			return substr($texte,0,$x) . $css2 . substr($texte,$x+1);
-		} else 	return $texte;
-	} else {
-		if (eregi('<(/head|body)', $texte, $regs)) {
-			$texte = explode($regs[0], $texte, 2);
-			return $texte[0].$css."\n" . $css2.$regs[0].$texte[1];
-		} else  return $texte . $css . "\n" . $css2;
-	}
-}
-
 ?>
diff --git a/inc-public.php3 b/inc-public.php3
index 8839e36180ef8f7796dcdd88a98819a82daba88f..5bcd5a07c53b222651e6ef60a69497dc70535fab 100644
--- a/inc-public.php3
+++ b/inc-public.php3
@@ -60,101 +60,103 @@ else {
 	}
 
 	include_local ('inc-public-global.php3');
-	include_local('inc-admin.php3');
 
 	//  refus du debug si pas dans les options generales ni admin connecte
 	if ($var_mode=='debug') {
-	  if (($code_activation_debug == 'oui')
-	      OR $auteur_session['statut'] == '0minirezo')
-	    spip_log('debug !');
-	  else
-	    $var_mode = false; 
+		if (($code_activation_debug == 'oui')
+		OR $auteur_session['statut'] == '0minirezo')
+			spip_log('debug !');
+		else
+			$var_mode = false; 
 	}
 
 	// est-on admin ?
-	$affiche_boutons_admin = (!$flag_preserver
-		AND ($HTTP_COOKIE_VARS['spip_admin']
-			OR $HTTP_COOKIE_VARS['spip_debug']));
+	if ($affiche_boutons_admin = (!$flag_preserver
+	AND ($HTTP_COOKIE_VARS['spip_admin']
+	OR $HTTP_COOKIE_VARS['spip_debug'])))
+		include_local('inc-admin.php3');
 
 	$tableau_des_erreurs = array();
 	$page = afficher_page_globale ($fond, $delais, $use_cache);
 
 	// Interdire au client de cacher un login, un admin ou un recalcul
-	if ($flag_dynamique OR $var_mode 
-			OR $HTTP_COOKIE_VARS['spip_admin']) {
-			@header("Cache-Control: no-cache,must-revalidate");
-			@header("Pragma: no-cache");
-		// Pour les autres donner l'heure de modif
+	if ($flag_dynamique OR $var_mode
+	OR $HTTP_COOKIE_VARS['spip_admin']) {
+		@header("Cache-Control: no-cache,must-revalidate");
+		@header("Pragma: no-cache");
+	// Pour les autres donner l'heure de modif
 	} else if ($lastmodified)
-			@Header ("Last-Modified: ".http_gmoddate($lastmodified)." GMT");
+		@Header ("Last-Modified: ".http_gmoddate($lastmodified)." GMT");
 
 	// si le squelette est nul se rabattre sur l'entete standard
 	if ($page['texte'])
 		@header("Content-Type: text/html; charset=".lire_meta('charset'));
-	else echo debut_entete($fond);
-		// Faudra-t-il post-traiter la page ?
+	else
+		echo debut_entete($fond);
 
 	define('spip_active_ob', $flag_ob AND
 		($var_mode == 'debug' OR $var_recherche OR $affiche_boutons_admin));
 
-		// Cas d'une page contenant uniquement du HTML :
-
+	// Cas d'une page contenant uniquement du HTML :
 	if ($page['process_ins'] == 'html') {
-			if (!spip_active_ob) {
-				echo $page['texte'];
-				$contenu = '';
-			} else
-				$contenu = $page['texte'];
-		}
+		if (!spip_active_ob) {
+			echo $page['texte'];
+			$contenu = '';
+		} else
+			$contenu = $page['texte'];
+	}
 
-		// Cas d'une page contenant du PHP :
+	// Cas d'une page contenant du PHP :
 	else {
-			// Evaluer la page
-
-			if (!spip_active_ob) {
-				eval('?' . '>' . $page['texte']);
-				$contenu = '';
-			} else {
-				ob_start(); 
-				$res = eval('?' . '>' . $page['texte']);
-				$contenu = ob_get_contents(); 
-				ob_end_clean();
-
-				// en cas d'erreur lors du eval, afficher un message
-				// et forcer les boutons de debug
-				if ($res === false AND $affiche_boutons_admin
-				    AND $auteur_session['statut'] == '0minirezo') {
-					include_ecrire('inc_debug_sql.php3');
-					erreur_squelette(_L('erreur d\'execution de la page'));
-				}
+		// Evaluer la page
+		if (!spip_active_ob) {
+			eval('?' . '>' . $page['texte']);
+			$contenu = '';
+		} else {
+			ob_start(); 
+			$res = eval('?' . '>' . $page['texte']);
+			$contenu = ob_get_contents(); 
+			ob_end_clean();
+
+			// en cas d'erreur lors du eval, afficher un message
+			// et forcer les boutons de debug
+			if ($res === false AND $affiche_boutons_admin
+			AND $auteur_session['statut'] == '0minirezo') {
+				include_ecrire('inc_debug_sql.php3');
+				erreur_squelette(_L('erreur d\'execution de la page'));
 			}
 		}
+	}
 
-		if ($affiche_boutons_admin) $contenu = perso_admin($contenu);
-
-		// Passer la main au debuggueur le cas echeant 
-		if ($var_mode == 'debug') {
-			include_ecrire("inc_debug_sql.php3");
-			debug_dumpfile('',$var_mode_objet,$var_mode_affiche);
-			exit;
-		} else if (count($tableau_des_erreurs) > 0
-		AND $affiche_boutons_admin)
-			affiche_erreurs_page ($tableau_des_erreurs);
-
-		// Traiter var_recherche pour surligner les mots
-		if ($var_recherche) {
-			include_ecrire("inc_surligne.php3");
-			$contenu = surligner_mots($contenu, $var_recherche);
-		}
+	// Passer la main au debuggueur le cas echeant 
+	if ($var_mode == 'debug') {
+		include_ecrire("inc_debug_sql.php3");
+		debug_dumpfile('',$var_mode_objet,$var_mode_affiche);
+		exit;
+	} else if (count($tableau_des_erreurs) > 0
+	AND $affiche_boutons_admin)
+		affiche_erreurs_page ($tableau_des_erreurs);
+
+	// Traiter var_recherche pour surligner les mots
+	if ($var_recherche) {
+		include_ecrire("inc_surligne.php3");
+		$contenu = surligner_mots($contenu, $var_recherche);
+	}
+
+	// Ajouter au besoin la CSS des boutons admins
+	if ($affiche_boutons_admin)
+		$contenu = perso_admin($contenu);
+
+	// Afficher le resultat final
+	echo $contenu;
 
-		echo $contenu;
+	// Afficher les boutons admin
+	if ($affiche_boutons_admin)
+		inclure_formulaire(
+		admin_dyn($id_article, $id_breve, $id_rubrique, $id_mot, $id_auteur));
 
-		// Ajouter les boutons admins (les normaux) si absents
-		// (ce sera apres la balise /html mais tant pis)
-		if ($affiche_boutons_admin) {
-			echo inclure_formulaire(admin_dyn($id_article, $id_breve, $id_rubrique, $id_mot, $id_auteur));
-		  } 
-		terminer_public_global();
+	// Taches de fin
+	terminer_public_global();
 }
 
 ?>