Skip to content
Extraits de code Groupes Projets
Valider e25f3b47 rédigé par esj's avatar esj
Parcourir les fichiers

La restauration des archives à ancien format ne marchait plus.

parent 0cdc58d6
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
......@@ -113,12 +113,12 @@ $tables_trans = array(
);
// http://doc.spip.org/@import_init_tables
function import_init_tables()
function import_init_tables($request)
{
global $IMPORT_tables_noerase, $connect_id_auteur;
// grand menage
// on vide toutes les tables dont la restauration est demandee
$tables = import_table_choix();
$tables = import_table_choix($request);
foreach($tables as $table){
if (($table!='spip_auteurs')&&(!in_array($table,$IMPORT_tables_noerase)))
......@@ -126,6 +126,7 @@ function import_init_tables()
}
// Bidouille pour garder l'acces admin actuel pendant toute la restauration
spip_log("la bidouille");
spip_query("UPDATE spip_auteurs SET id_auteur=0, extra=$connect_id_auteur WHERE id_auteur=$connect_id_auteur");
spip_query("DELETE FROM spip_auteurs WHERE id_auteur!=0");
......@@ -236,8 +237,6 @@ function import_tables($request, $dir, $trans=array()) {
import_tables($request, $dir, $trans);
spip_query("DROP TABLE spip_translate");
}
detruit_restaurateur();
ecrire_acces(); // Mise a jour du fichier htpasswd
if ($charset = $GLOBALS['meta']['charset_restauration']) {
ecrire_meta('charset', $charset);
ecrire_metas();
......@@ -246,6 +245,8 @@ function import_tables($request, $dir, $trans=array()) {
calculer_rubriques();
$res = '';
}
detruit_restaurateur();
if (!$res) ecrire_acces(); // Mise a jour du fichier htpasswd
return $res . "</body></html>\n";;
}
......@@ -304,7 +305,7 @@ function affiche_progression_javascript($abs_pos,$size, $table="") {
// http://doc.spip.org/@import_table_choix
function import_table_choix()
function import_table_choix($request)
{
// construction de la liste des tables pour le dump :
// toutes les tables principales
......
......@@ -16,10 +16,11 @@ if (!defined("_ECRIRE_INC_VERSION")) return;
// pff ou vous l'avez trouve ce dump ?
// http://doc.spip.org/@inc_import_0_0_dist
function inc_import_0_0_dist($f, $request, $gz=false, $t='') {
global $import_ok, $abs_pos, $my_pos;
global $import_ok;
// detruire les tables a restaurer
$tables = (!$my_pos) ? import_init_tables() : import_table_choix();
$init = $request['init'];
$tables = $init($request);
$import_ok = false;
$b = '';
......
......@@ -39,14 +39,14 @@ function description_table($nom){
// pour le support des vieux dump
// http://doc.spip.org/@inc_import_1_2_dist
function inc_import_1_2_dist($f, $request, $gz=false, $t='') {
global $import_ok, $abs_pos, $my_pos;
global $import_ok;
static $field_desc = array ();
// detruire les tables a restaurer
if (!$my_pos) import_init_tables();
static $tables;
if (!$tables) $tables = array(
if (!$tables) {
$init = $request['init'];
$init($request);
$tables = array(
'article' => 'spip_articles',
'auteur' => 'spip_auteurs',
'breve' => 'spip_breves',
......@@ -61,8 +61,8 @@ function inc_import_1_2_dist($f, $request, $gz=false, $t='') {
'syndic' => 'spip_syndic',
'syndic_article' => 'spip_syndic_articles',
'type_document' => 'spip_types_documents'
);
);
}
$import_ok = false;
$b = '';
// Lire le type d'objet
......@@ -75,6 +75,7 @@ function inc_import_1_2_dist($f, $request, $gz=false, $t='') {
if (!isset($field_desc[$table])){
// recuperer la description de la table pour connaitre ses champs valides
list($nom,$desc) = description_table($table);
if (isset($desc['field']))
$field_desc[$table] = $desc['field'];
else
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter