Changeset 10034 in spip-zone


Ignore:
Timestamp:
Mar 1, 2007, 11:13:44 PM (14 years ago)
Author:
fil@…
Message:

import correct des revisions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • _contribs_/_wiki_/spikini/importer.php

    r10030 r10034  
    5555
    5656
    57 # inserer les articles & nettoyer la table des versions
    58 $s = spip_query("select DISTINCT(tag) from ".wikini."pages");
     57# insertion initiale des articles (pour avoir les liens)
     58# & nettoyage de la table des versions
     59$tags = array();
     60$s = spip_query("select * from ".wikini."pages ORDER BY time ASC");
    5961while ($t = spip_fetch_array($s)) {
    60         $id_article = inserer_version_spikini($t);
    61         spip_query("DELETE FROM spip_versions WHERE id_article=$id_article");
    62         spip_query("DELETE FROM spip_versions_fragments WHERE id_article=$id_article");
     62        if (!in_array($t['tag'], $tags)) {
     63                $id_article = inserer_version_spikini($t, true);
     64                $tags[] = $t['tag'];
     65        }
    6366}
    6467
    6568
     69$tags = array();
    6670$s = spip_query("select * from ".wikini."pages order by time ASC");
    67 
    6871while ($t = spip_fetch_array($s)) {
    69         inserer_version_spikini($t);
     72        if (in_array($t['tag'], $tags)) {
     73                inserer_version_spikini($t);
     74        } else {
     75                $tags[] = $t['tag'];
     76        }
    7077}
    7178
    7279
    73 function inserer_version_spikini($spik) {
     80function inserer_version_spikini($spik, $purger_versions = false) {
    7481
    7582        $s = spip_query("SELECT id_article FROM spip_articles
     
    8188        } else {
    8289                $id_article = spip_abstract_insert('spip_articles',
    83                 '(id_rubrique, id_secteur, lang, statut, titre)',
    84                 '('.import_id_rubrique.','.import_id_secteur.','._q(import_lang).','._q(import_statut).','
    85                 ._q($spik['tag']).')');
     90                '(id_rubrique, id_secteur, lang, statut)',
     91                '('.import_id_rubrique.','.import_id_secteur.','._q(import_lang).','._q(import_statut).')');
    8692        }
    8793
     
    96102        );
    97103
    98         // regler la date de la revision a la date de son entree dans spikini
    99         // et son auteur a celui du modificateur de l'epoque
    100         $auteur = substr(couper(importer_charset($spik['user'],'iso-8859-1'),23), 0, 23);
    101         spip_query("UPDATE spip_versions SET date="._q($spik['time']).", id_auteur="._q($auteur)." WHERE id_article=$id_article ORDER BY id_version DESC LIMIT 1");
     104        if ($purger_versions) {
     105                spip_query("DELETE FROM spip_versions WHERE id_article=$id_article");
     106                spip_query("DELETE FROM spip_versions_fragments WHERE id_article=$id_article");
     107        } else {
    102108
    103         echo "<br />importe <b>".$spik['tag']."</b> dans l'article $id_article\n";
     109                // regler la date de la revision a la date de son entree dans spikini
     110                // et son auteur a celui du modificateur de l'epoque
     111                $auteur = substr(couper(importer_charset($spik['user'],'iso-8859-1'),23), 0, 23);
     112                spip_query("UPDATE spip_versions SET date="._q($spik['time']).", id_auteur="._q($auteur)." WHERE id_article=$id_article ORDER BY id_version DESC LIMIT 1");
     113        }
     114
     115        echo "<br />importe <b>".$spik['tag']." ($spik[time], $purger_versions)</b> dans l'article $id_article\n";
    104116
    105117        return $id_article;
Note: See TracChangeset for help on using the changeset viewer.