From fe200105beb1483dc87cac13104e7c03dbc5ae72 Mon Sep 17 00:00:00 2001
From: "Committo,Ergo:sum" <esj@rezo.net>
Date: Thu, 2 Nov 2006 16:18:13 +0000
Subject: [PATCH] =?UTF-8?q?Le=20brouteur-frame=20n'a=20pas=20besoin=20de?=
 =?UTF-8?q?=20pr=C3=A9parer=20les=20icones=20Ajax.=20Et=20centraliser=20d?=
 =?UTF-8?q?=C3=A9but=5Fpage=20dans=20les=20scripts=20de=20exec/.?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ecrire/exec/brouteur_frame.php | 13 ++++-
 ecrire/exec/import_all.php     | 89 +++++++++++++++++++++++++++++++++-
 ecrire/inc/import.php          | 87 ---------------------------------
 3 files changed, 100 insertions(+), 89 deletions(-)

diff --git a/ecrire/exec/brouteur_frame.php b/ecrire/exec/brouteur_frame.php
index 08634cec4d..b40619326f 100644
--- a/ecrire/exec/brouteur_frame.php
+++ b/ecrire/exec/brouteur_frame.php
@@ -21,7 +21,18 @@ function exec_brouteur_frame_dist() {
 
 	include_spip('inc/headers');
 	http_no_cache();
-	echo init_entete();
+
+	echo _DOCTYPE_ECRIRE
+	. html_lang_attributes()
+	. "<head>\n"
+	.  "<title>brouteur_frame</title>\n"
+	. "<meta http-equiv='Content-Type' content='text/html"
+	. (($c = $GLOBALS['meta']['charset']) ? "; charset=$c" : '')
+	. "' />\n"
+	. envoi_link(_T('info_mon_site_spip'))	
+	. pipeline('header_prive', $head)
+	. "</head>\n";
+
 
 	if ($spip_ecran == "large") {
 		$nb_col = 4;
diff --git a/ecrire/exec/import_all.php b/ecrire/exec/import_all.php
index 1d9b6f836f..b66b5d7291 100644
--- a/ecrire/exec/import_all.php
+++ b/ecrire/exec/import_all.php
@@ -107,9 +107,96 @@ function exec_import_all_dist()
 	}
 
 	// au rappel, on commence (voire on continue)
-	include_spip('inc/import');
 	import_all_continue();
 	include_spip('inc/rubriques');
 	calculer_rubriques();
 }
+
+
+// http://doc.spip.org/@import_all_continue
+function import_all_continue()
+{
+	global $meta, $flag_gz, $buf, $abs_pos, $my_pos, $connect_toutes_rubriques;
+	global $affiche_progression_pourcent;
+	@ini_set("zlib.output_compression","0"); // pour permettre l'affichage au fur et a mesure
+	// utiliser une version fraiche des metas (ie pas le cache)
+	include_spip('inc/meta');
+	lire_metas();
+	include_spip('inc/import');
+	@ignore_user_abort(1);
+
+	$request = unserialize($meta['request_restauration']);
+	if ($connect_toutes_rubriques) {
+		$dir = _DIR_DUMP;
+	} else {
+		$dir = _DIR_TRANSFERT . $connect_login . '/';
+	}
+	$archive = $dir . $request['archive'];
+	$affiche_progression_pourcent = @filesize($archive);
+
+	debut_page(_T('titre_page_index'), "accueil", "accueil");
+
+	debut_gauche();
+
+	debut_droite();
+
+	// attention : si $request['archive']=="", alors archive='data/' 
+	// le test is_readable n'est donc pas suffisant
+	if (!@is_readable($archive)||is_dir($archive) || !$affiche_progression_pourcent) {
+		$texte_boite = _T('info_erreur_restauration');
+		debut_boite_alerte();
+		echo "<font face='Verdana,Arial,Sans,sans-serif' size='4' color='black'><b>$texte_boite</b></font>";
+		fin_boite_alerte();
+
+		// faut faire quelque chose, sinon le site est mort :-)
+		// a priori on reset les meta de restauration car rien n'a encore commence
+		effacer_meta('request_restauration');
+		effacer_meta('fichier_restauration');
+		effacer_meta('version_archive_restauration');
+		effacer_meta('tag_archive_restauration');
+		effacer_meta('status_restauration');
+		effacer_meta('debut_restauration');
+		effacer_meta('charset_restauration');
+		ecrire_metas();
+		exit;
+	}
+
+	$my_pos = $meta["status_restauration"];
+
+	if (ereg("\.gz$", $archive)) {
+			$affiche_progression_pourcent = false;
+			$taille = taille_en_octets($my_pos);
+			$gz = true;
+	} else {
+			$taille = floor(100 * $my_pos / $affiche_progression_pourcent)." %";
+			$gz = false;
+		}
+	$texte_boite = _T('info_base_restauration')."<p>
+		<form name='progression'><center><input type='text' size=10 style='text-align:center;' name='taille' value='$taille'><br>
+		<input type='text' class='forml' name='recharge' value='"._T('info_recharger_page')."'></center></form>";
+
+	debut_boite_alerte();
+	echo "<font FACE='Verdana,Arial,Sans,sans-serif' SIZE=4 color='black'><B>$texte_boite</B></font>";
+	fin_boite_alerte();
+	$max_time = ini_get('max_execution_time')*1000;
+	echo ("<script language=\"JavaScript\" type=\"text/javascript\">window.setTimeout('location.href=\"".self()."\";',$max_time);</script>\n");
+
+	if ($GLOBALS['flag_ob_flush']) ob_flush();
+	flush();
+
+	$_fopen = ($gz) ? 'gzopen' : 'fopen';
+	$f = $_fopen($archive, "rb");
+	$buf = "";
+	$r = import_tables($f, $gz);
+	if ($r) {
+		spip_log("Erreur: $r");
+	}
+	else {
+		if ($charset = $GLOBALS['meta']['charset_restauration'])
+			ecrire_meta('charset', $charset);
+	}
+
+	import_fin();
+	echo "</body></html>\n";
+}
 ?>
diff --git a/ecrire/inc/import.php b/ecrire/inc/import.php
index 7392ad5bba..6018be3369 100644
--- a/ecrire/inc/import.php
+++ b/ecrire/inc/import.php
@@ -324,91 +324,4 @@ function import_table_choix()
 }	
 
 
-// http://doc.spip.org/@import_all_continue
-function import_all_continue()
-{
-  global $meta, $flag_gz, $buf, $abs_pos, $my_pos, $connect_toutes_rubriques;
-	global $affiche_progression_pourcent;
-	@ini_set("zlib.output_compression","0"); // pour permettre l'affichage au fur et a mesure
-	// utiliser une version fraiche des metas (ie pas le cache)
-	include_spip('inc/meta');
-	lire_metas();
-
-	@ignore_user_abort(1);
-
-	$request = unserialize($meta['request_restauration']);
-	if ($connect_toutes_rubriques) {
-		$dir = _DIR_DUMP;
-	} else {
-		$dir = _DIR_TRANSFERT . $connect_login . '/';
-	}
-	$archive = $dir . $request['archive'];
-	$affiche_progression_pourcent = @filesize($archive);
-
-	debut_page(_T('titre_page_index'), "accueil", "accueil");
-
-	debut_gauche();
-
-	debut_droite();
-
-	// attention : si $request['archive']=="", alors archive='data/' 
-	// le test is_readable n'est donc pas suffisant
-	if (!@is_readable($archive)||is_dir($archive) || !$affiche_progression_pourcent) {
-		$texte_boite = _T('info_erreur_restauration');
-		debut_boite_alerte();
-		echo "<font face='Verdana,Arial,Sans,sans-serif' size='4' color='black'><b>$texte_boite</b></font>";
-		fin_boite_alerte();
-
-		// faut faire quelque chose, sinon le site est mort :-)
-		// a priori on reset les meta de restauration car rien n'a encore commence
-		effacer_meta('request_restauration');
-		effacer_meta('fichier_restauration');
-		effacer_meta('version_archive_restauration');
-		effacer_meta('tag_archive_restauration');
-		effacer_meta('status_restauration');
-		effacer_meta('debut_restauration');
-		effacer_meta('charset_restauration');
-		ecrire_metas();
-		exit;
-	}
-
-	$my_pos = $meta["status_restauration"];
-
-	if (ereg("\.gz$", $archive)) {
-			$affiche_progression_pourcent = false;
-			$taille = taille_en_octets($my_pos);
-			$gz = true;
-	} else {
-			$taille = floor(100 * $my_pos / $affiche_progression_pourcent)." %";
-			$gz = false;
-		}
-	$texte_boite = _T('info_base_restauration')."<p>
-		<form name='progression'><center><input type='text' size=10 style='text-align:center;' name='taille' value='$taille'><br>
-		<input type='text' class='forml' name='recharge' value='"._T('info_recharger_page')."'></center></form>";
-
-	debut_boite_alerte();
-	echo "<font FACE='Verdana,Arial,Sans,sans-serif' SIZE=4 color='black'><B>$texte_boite</B></font>";
-	fin_boite_alerte();
-	$max_time = ini_get('max_execution_time')*1000;
-	echo ("<script language=\"JavaScript\" type=\"text/javascript\">window.setTimeout('location.href=\"".self()."\";',$max_time);</script>\n");
-
-	if ($GLOBALS['flag_ob_flush']) ob_flush();
-	flush();
-
-	$_fopen = ($gz) ? 'gzopen' : 'fopen';
-	$f = $_fopen($archive, "rb");
-	$buf = "";
-	$r = import_tables($f, $gz);
-	if ($r) {
-		spip_log("Erreur: $r");
-	}
-	else {
-		if ($charset = $GLOBALS['meta']['charset_restauration'])
-			ecrire_meta('charset', $charset);
-	}
-
-	import_fin();
-	echo "</body></html>\n";
-}
-
 ?>
-- 
GitLab