From eddb292273bd3a4cfc35de408c76c47e0b1470ce Mon Sep 17 00:00:00 2001
From: Cerdic <cedric@yterium.com>
Date: Thu, 25 Jan 2007 09:48:29 +0000
Subject: [PATCH] inclure le nom du site dans le nom du fichier dump ca permet
 utilement de pas se melanger les dump quand on gere plusieurs sites on
 remplace par _ tous ce qui n'est pas [a-z] par precaution

---
 ecrire/exec/admin_tech.php | 8 +++++---
 ecrire/inc/export.php      | 4 +++-
 ecrire/inc/utils.php       | 2 +-
 3 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/ecrire/exec/admin_tech.php b/ecrire/exec/admin_tech.php
index c2a965347a..dba3810aae 100644
--- a/ecrire/exec/admin_tech.php
+++ b/ecrire/exec/admin_tech.php
@@ -102,7 +102,9 @@ echo "</table>";
 //
 
  if ($connect_toutes_rubriques) {
- 	$liste_dump = preg_files(_DIR_DUMP,str_replace("@stamp@","(_[0-9]{6,8}_[0-9]{1,3})?",_SPIP_DUMP)."(.gz)?$",50,false);
+ 	$pattern = str_replace("@nom_site@","([^.0-9]*)",_SPIP_DUMP);
+ 	$pattern = str_replace("@stamp@","(_[0-9]{6,8}_[0-9]{1,3})?",$pattern)."(.gz)?$";
+ 	$liste_dump = preg_files(_DIR_DUMP,$pattern,50,false);
  	$selected = end($liste_dump);
  	$liste_choix = "<ul>"; 
  	foreach($liste_dump as $key=>$fichier){
@@ -120,10 +122,10 @@ echo "</table>";
  	}
  	
 	if ($flag_gz) {
-		$fichier_defaut = str_replace("@stamp@","",_SPIP_DUMP) . '.gz';
+		$fichier_defaut = str_replace(array("@stamp@","@nom_site@"),array("",""),_SPIP_DUMP) . '.gz';
 		$texte_compresse = _T('texte_compresse_ou_non')."&nbsp;";
 	} else {
-		$fichier_defaut = str_replace("@stamp@","",_SPIP_DUMP);
+		$fichier_defaut = str_replace(array("@stamp@","@nom_site@"),array("",""),_SPIP_DUMP);
 		$texte_compresse = _T('texte_non_compresse')."&nbsp;";
 	}
 
diff --git a/ecrire/inc/export.php b/ecrire/inc/export.php
index 2a7ef74732..779ac66784 100644
--- a/ecrire/inc/export.php
+++ b/ecrire/inc/export.php
@@ -16,7 +16,9 @@ $GLOBALS['version_archive'] = '1.3';
 
 // http://doc.spip.org/@export_nom_fichier_dump
 function export_nom_fichier_dump($dir,$gz=true){
-	$archive = _SPIP_DUMP;
+	$nom_site = isset($GLOBALS['meta']['nom_site'])?$GLOBALS['meta']['nom_site']:'';
+	$nom_site = preg_replace(",[^a-z],is","_",trim($nom_site));
+	$archive = str_replace('@nom_site@',"_{$nom_site}_",_SPIP_DUMP);
 	if ($gz) $archive .= '.gz';
 	$cpt=0;
 	$stamp = date('Ymd');
diff --git a/ecrire/inc/utils.php b/ecrire/inc/utils.php
index b65ddb108c..42a7baf246 100644
--- a/ecrire/inc/utils.php
+++ b/ecrire/inc/utils.php
@@ -990,7 +990,7 @@ function spip_initialisation($pi=NULL, $pa=NULL, $ti=NULL, $ta=NULL) {
 	// qq chaines standard
 	define('_ACCESS_FILE_NAME', '.htaccess');
 	define('_AUTH_USER_FILE', '.htpasswd');
-	define('_SPIP_DUMP', 'dump@stamp@.xml');
+	define('_SPIP_DUMP', 'dump@nom_site@@stamp@.xml');
 
 	define('_DOCTYPE_ECRIRE', 
 		// "<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>\n");
-- 
GitLab