Changeset 31388 in spip-zone


Ignore:
Timestamp:
Sep 7, 2009, 3:54:14 PM (10 years ago)
Author:
cy_altern@…
Message:

tout al'air de fonctionner: passage en test

Location:
_plugins_/csv2spip/2_0
Files:
1 added
4 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/csv2spip/2_0/exec/csv2spip.php

    r31375 r31388  
    528528                }
    529529*/         
    530        
    531         // 4.4 : gestion des suppressions
    532        
    533         // VERSION 2.3 de effacer les absents
    534             $ch_maj = 0;
    535             $eff_absv = 0;
    536             $eff_absr = 0;
    537             $eff_absa = 0;
    538                 if ($_POST['eff_visit'] == 1) {
    539         //                                       $ch_maj = 1;
    540                 $eff_absv = 1;
    541             }
    542             if ($_POST['eff_redac'] == 1) {
    543                 $ch_maj = 1;
    544                     $eff_absr = 1;
    545             }
    546             if ($_POST['eff_admin'] == 1) {
    547                 $ch_maj = 1;
    548                     $eff_absa = 1;
    549             }
    550        
    551         // paramétrage auteur et dossier d'archive
    552                 if ($ch_maj !== 0) {
    553                           // si auteurs supprimés (pas de poubelle), récupérer l'id du rédacteur affecté aux archives + si nécessaire, créer cet auteur (groupe = poubelle)
    554                     if ($_POST['auteurs_poubelle'] != 1) {
    555                             $nom_auteur_archives = $_POST['nom_auteur_archives'];
    556                                 $sql615 = sql_query("SELECT id_auteur FROM $Tauteurs WHERE login = '$nom_auteur_archives' LIMIT 1");
    557                                 if (mysql_num_rows($sql615) > 0) {
    558                                     $data615 = mysql_fetch_array($sql615);
    559                                         $id_auteur_archives = $data615['id_auteur'];
    560                                 }
    561                                 else {
    562                                     sql_query("INSERT INTO $Tauteurs (id_auteur, nom, login, pass, statut) VALUES ('', '$nom_auteur_archives', '$nom_auteur_archives', '$nom_auteur_archives', '5poubelle')");
    563                                         $id_auteur_archives = mysql_insert_id();
    564                                 }
    565                                 $nom_rub_archivesR = $nom_auteur_archives;
    566                                 $id_rub_parent_archivesA = $nom_auteur_archives;
    567                                 $id_rub_parent_archivesR = $id_auteur_archives;
    568                                 $nom_rub_archivesA = $nom_auteur_archives;
    569                                 $id_auteur_archivesA = $id_auteur_archives;
    570                                 $nom_auteur_archivesR = $nom_auteur_archives;
    571                                 $id_auteur_archivesR = $id_auteur_archives;
    572                                        
    573                         // si archivage, récup de l'id de la rubrique archive + si nécessaire, créer la rubrique                                               
    574                                 if ($_POST['supprimer_articles'] != 1 AND $_POST['archivage'] != 0) {
    575                                     $supprimer_articlesr = 0;
    576                                         $supprimer_articlesa = 0;
    577                                         $archivager =1;
    578                                         $archivagea = 1;
    579                                                  
    580                                         $nom_rub_archives = $_POST['rub_archivage'];
    581                                 // $_POST['rub_parent_archivage'] de la forme : "id_rubrique,id_secteur"
    582                                         $Tids_parent_rub_archives = explode(',', $_POST['rub_parent_archivage']);
    583                                         $id_rub_parent_archives = $Tids_parent_rub_archives[0];
    584                                         $id_sect_parent_archives = $Tids_parent_rub_archives[1];
    585                                         $date_rub_archives = date("Y-m-j H:i:s");
    586                                         $sql613 = sql_query("SELECT id_rubrique, id_secteur FROM $Trubriques WHERE titre = '$nom_rub_archives' AND id_parent = '$id_rub_parent_archives' LIMIT 1");
    587                                         if (mysql_num_rows($sql613) > 0) {
    588                                             $data613 = mysql_fetch_array($sql613);
    589                                                 $id_rub_archives = $data613['id_rubrique'];
     530        }  // fin du while traitant les comptes 1 à 1
     531       
     532    // 4.4 : gestion des suppressions
     533    // VERSION 2.3 de effacer les absents
     534        $ch_maj = 0;
     535        $eff_absv = 0;
     536        $eff_absr = 0;
     537        $eff_absa = 0;
     538        if ($_POST['eff_visit'] == 1) {
     539    //                                   $ch_maj = 1;
     540            $eff_absv = 1;
     541        }
     542        if ($_POST['eff_redac'] == 1) {
     543            $ch_maj = 1;
     544            $eff_absr = 1;
     545        }
     546        if ($_POST['eff_admin'] == 1) {
     547            $ch_maj = 1;
     548            $eff_absa = 1;
     549        }
     550
     551    // paramétrage auteur et dossier d'archive
     552        if ($ch_maj !== 0) {
     553                  // si auteurs supprimés (pas de poubelle), récupérer l'id du rédacteur affecté aux archives + si nécessaire, créer cet auteur (groupe = poubelle)
     554            if ($_POST['auteurs_poubelle'] != 1) {
     555                    $nom_auteur_archives = $_POST['nom_auteur_archives'];
     556                        $sql615 = sql_query("SELECT id_auteur FROM $Tauteurs WHERE login = '$nom_auteur_archives' LIMIT 1");
     557                        if (mysql_num_rows($sql615) > 0) {
     558                            $data615 = mysql_fetch_array($sql615);
     559                                $id_auteur_archives = $data615['id_auteur'];
     560                        }
     561                        else {
     562                            sql_query("INSERT INTO $Tauteurs (id_auteur, nom, login, pass, statut) VALUES ('', '$nom_auteur_archives', '$nom_auteur_archives', '$nom_auteur_archives', '5poubelle')");
     563                                $id_auteur_archives = mysql_insert_id();
     564                        }
     565                        $nom_rub_archivesR = $nom_auteur_archives;
     566                        $id_rub_parent_archivesA = $nom_auteur_archives;
     567                        $id_rub_parent_archivesR = $id_auteur_archives;
     568                        $nom_rub_archivesA = $nom_auteur_archives;
     569                        $id_auteur_archivesA = $id_auteur_archives;
     570                        $nom_auteur_archivesR = $nom_auteur_archives;
     571                        $id_auteur_archivesR = $id_auteur_archives;
     572                               
     573                // si archivage, récup de l'id de la rubrique archive + si nécessaire, créer la rubrique                                               
     574                        if ($_POST['supprimer_articles'] != 1 AND $_POST['archivage'] != 0) {
     575                            $supprimer_articlesr = 0;
     576                                $supprimer_articlesa = 0;
     577                                $archivager =1;
     578                                $archivagea = 1;
     579                                         
     580                                $nom_rub_archives = $_POST['rub_archivage'];
     581                        // $_POST['rub_parent_archivage'] de la forme : "id_rubrique,id_secteur"
     582                                $Tids_parent_rub_archives = explode(',', $_POST['rub_parent_archivage']);
     583                                $id_rub_parent_archives = $Tids_parent_rub_archives[0];
     584                                $id_sect_parent_archives = $Tids_parent_rub_archives[1];
     585                                $date_rub_archives = date("Y-m-j H:i:s");
     586                                $sql613 = sql_query("SELECT id_rubrique, id_secteur FROM $Trubriques WHERE titre = '$nom_rub_archives' AND id_parent = '$id_rub_parent_archives' LIMIT 1");
     587                                if (mysql_num_rows($sql613) > 0) {
     588                                    $data613 = mysql_fetch_array($sql613);
     589                                        $id_rub_archives = $data613['id_rubrique'];
     590                                }
     591                                else {
     592                                    sql_query("INSERT INTO $Trubriques (id_rubrique, id_parent, titre, id_secteur, statut, date) VALUES ('', '$id_rub_parent_archives', '$nom_rub_archives', '$id_sect_parent_archives', 'publie', '$date_rub_archives')" );
     593                                        $id_rub_archives = mysql_insert_id();
     594                                }
     595                        }
     596                }
     597        }
     598                                                                               
     599      // 4.4.1 : traitement des visiteurs actuels de la base spip_auteurs => si effacer les absV = OK
     600        if ($eff_absv == 1) {
     601            $sql1471 = sql_query("SELECT COUNT(*) AS nb_redacsV FROM $Tauteurs WHERE statut = '6forum'");
     602                $data1471 = mysql_fetch_array($sql1471);
     603                if ($data1471['nb_redacsV'] > 0) {
     604                  // pas de poubelle pour les visiteurs => suppression puisque pas d'articles
     605                        $sql1591 = sql_query("SELECT id_auteur, login FROM $Tauteurs WHERE statut = '6forum'");
     606                        while ($data1591 = mysql_fetch_array($sql1591)) {
     607                            $login_sp = strtolower($data1591['login']);
     608                                $id_auteur_ec = $data1591['id_auteur'];
     609                                $sql4561 = sql_query("SELECT COUNT(*) AS nb FROM spip_tmp_csv2spip WHERE LOWER(nom) = '$login_sp' LIMIT 1");
     610                                $data4561 = mysql_fetch_array($sql4561);
     611             // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
     612                                if ($data4561['nb'] == 0) {
     613                                  // traitement des visiteurs à effacer                                                                                         
     614                                        sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '6forum' LIMIT 1");
     615                                        if (mysql_error() == 0) {
     616                                            $TresV_eff[] = $login;
     617/*
     618// pas d'acces_groupe pour cette version                                                                                                         
     619                                  // effacer toutes les références à ce visiteur dans acces_groupes
     620                                            sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
     621                                            if (mysql_error() != '') {
     622                                                $TerrV_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     623                                            }
     624*/                           
     625                                }
     626                                else {
     627                                    $TerrV_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     628                                }
     629                                }
     630                        }
     631              // optimisation de la table après les effacements
     632                        sql_query("OPTIMIZE TABLE $Tauteurs, $Taccesgroupes_auteurs");
     633                }       
     634        }
     635       
     636      // 4.4.2 : traitement des rédacteurs actuels de la base spip_auteurs => si effacer les absents redac = OK
     637        if ($eff_absr == 1) {
     638            $sql147 = sql_query("SELECT COUNT(*) AS nb_redacsR FROM $Tauteurs WHERE statut = '1comite'");
     639                $data147 = mysql_fetch_array($sql147);
     640                if ($data147['nb_redacsR'] > 0) {
     641                  // si archivage, récup de l'id de la rubrique archive + si nécessaire, créer la rubrique                                             
     642                        if ($supprimer_articlesr != 1 AND $archivager != 0) {
     643                            $nom_rub_archivesR = $rub_archivager;
     644                                $sql613 = sql_query("SELECT id_rubrique, id_secteur FROM $Trubriques WHERE titre = '$nom_rub_archivesR' AND id_parent = '$id_rub_parent_archivesR' LIMIT 1");
     645                                if (mysql_num_rows($sql613) > 0) {
     646                                    $data613 = mysql_fetch_array($sql613);
     647                                        $id_rub_archivesR = $data613['id_rubrique'];
     648                                }
     649                                else {
     650                                    sql_query("INSERT INTO $Trubriques (id_rubrique, id_parent, titre, id_secteur, statut, date) VALUES ('', '$id_rub_parent_archivesR', '$nom_rub_archivesR', '$id_sect_parent_archivesR', 'publie', '$date_rub_archivesR')" );
     651                                    $id_rub_archivesR = mysql_insert_id();
     652                                }
     653                        }
     654                        $sql159 = sql_query("SELECT id_auteur, login FROM $Tauteurs WHERE statut = '1comite' AND bio != 'archive'");
     655                        $cteur_articles_deplacesR = 0;
     656                        $cteur_articles_supprimesR = 0;
     657                        $cteur_articles_modif_auteurR = 0;
     658                        while ($data159 = mysql_fetch_array($sql159)) {
     659                            $login_sp = strtolower($data159['login']);
     660                                $id_auteur_ec = $data159['id_auteur'];
     661                                $sql456 = sql_query("SELECT COUNT(*) AS nb FROM spip_tmp_csv2spip WHERE nom = '$login_sp' LIMIT 1");
     662                                $data456 = mysql_fetch_array($sql456);
     663                  // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
     664                        if ($data456['nb'] == 0) {
     665                                  // traitement éventuel des articles de l'auteur à supprimer
     666                                    $sql757 = sql_query("SELECT COUNT(*) AS nb_articles_auteur FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     667                                        $data757 = mysql_fetch_array($sql757);
     668    //print '<br><br>id_auteur = '.$id_auteur_ec;
     669    //print '<br>nb_articles_auteur = '.$data757['nb_articles_auteur'];
     670    //print '<br>$supprimer_articlesr = '.$supprimer_articlesr;
     671    //print '<br>$archivager = '.$archivager;
     672                                        if ($data757['nb_articles_auteur'] > 0) {
     673                                    if ($supprimer_articlesr != 1) {
     674                                            if ($archivager != 0) {
     675                                                            $sql612 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = $id_auteur_ec");
     676                                                        if (mysql_num_rows($sql612) > 0) {
     677    //print '<br>départ UPDATE';
     678                                                            while ($data612 = mysql_fetch_array($sql612)) {
     679                                                                    $id_article_ec = $data612['id_article'];
     680                                                                                sql_query("UPDATE $Tarticles SET id_rubrique = '$id_rub_archivesR', id_secteur = '$id_sect_parent_archivesR' WHERE id_article = '$id_article_ec' LIMIT 1");
     681                                                                                $cteur_articles_deplacesR ++;
     682                                                                }
     683                                                        }
     684                                                        if ($auteurs_poubeller != 1) {
     685                                                            sql_query("UPDATE $Tauteurs_articles SET id_auteur = '$id_auteur_archivesR' WHERE id_auteur = '$id_auteur_ec'");
     686                                                        }                                                                                                                       
     687                                                }
     688                                        }
     689                                        else {
     690                                            $sql756 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     691    //print '<br>départ DELETE';
     692                                                while ($data756 = mysql_fetch_array($sql756)) {
     693                                                    $id_article_a_effac = $data756['id_article'];
     694                                                        sql_query("DELETE FROM $Tarticles WHERE id_article = '$id_article_a_effac' LIMIT 1");
     695                                                                $cteur_articles_supprimesR ++;
     696                                                }
     697                                                sql_query("DELETE FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     698                                        }
     699                                        }
     700                                  // traitement des auteurs à effacer                                                                                           
     701                                        if ($auteurs_poubeller != 1) {
     702                                            sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '1comite' LIMIT 1");
     703                                        if (mysql_error() == 0) {
     704                                            $TresR_eff[] = $login;
     705/*
     706// pas d'acces_groupe pour cette version                                                                                                         
     707                                                  // effacer toutes les références à ce visiteur dans acces_groupes
     708                                                        sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
     709                                                        if (mysql_error() != '') {
     710                                                            $TerrR_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     711                                                        }
     712*/                               
     713                                        }
     714                                                else {
     715                                            $TerrR_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     716                                        }
    590717                                        }
    591718                                        else {
    592                                             sql_query("INSERT INTO $Trubriques (id_rubrique, id_parent, titre, id_secteur, statut, date) VALUES ('', '$id_rub_parent_archives', '$nom_rub_archives', '$id_sect_parent_archives', 'publie', '$date_rub_archives')" );
    593                                                 $id_rub_archives = mysql_insert_id();
     719                                            sql_query("UPDATE $Tauteurs SET statut = '5poubelle' WHERE id_auteur = '$id_auteur_ec' LIMIT 1");
     720                                        if (mysql_error() == 0) {
     721                                            $TresR_poub[] = $id_auteur_ec;
     722                                }
     723                                else {
     724                                    $TerrR_poub[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     725                                }
    594726                                        }
    595                                 }
    596                         }
    597             }
    598                                                                                        
    599           // 4.4.1 : traitement des visiteurs actuels de la base spip_auteurs => si effacer les absV = OK
    600             if ($eff_absv == 1) {
    601                     $sql1471 = sql_query("SELECT COUNT(*) AS nb_redacsV FROM $Tauteurs WHERE statut = '6forum'");
    602                 $data1471 = mysql_fetch_array($sql1471);
    603                 if ($data1471['nb_redacsV'] > 0) {
    604                           // pas de poubelle pour les visiteurs => suppression puisque pas d'articles
    605                         $sql1591 = sql_query("SELECT id_auteur, login FROM $Tauteurs WHERE statut = '6forum'");
    606                                 while ($data1591 = mysql_fetch_array($sql1591)) {
    607                             $login_sp = strtolower($data1591['login']);
    608                                         $id_auteur_ec = $data1591['id_auteur'];
    609                                 $sql4561 = sql_query("SELECT COUNT(*) AS nb FROM spip_tmp_csv2spip WHERE LOWER(nom) = '$login_sp' LIMIT 1");
    610                                 $data4561 = mysql_fetch_array($sql4561);
    611                  // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
    612                                 if ($data4561['nb'] == 0) {
    613                                           // traitement des visiteurs à effacer                                                                                         
    614                                                 sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '6forum' LIMIT 1");
    615                                                 if (mysql_error() == 0) {
    616                                             $TresV_eff[] = $login;
    617                                           // effacer toutes les références à ce visiteur dans acces_groupes
    618                                                     sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
    619                                                     if (mysql_error() != '') {
    620                                                         $TerrV_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    621                                                     }
    622                                         }
    623                                         else {
    624                                             $TerrV_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    625                                         }
    626                                         }
    627                                 }
    628                   // optimisation de la table après les effacements
    629                                 sql_query("OPTIMIZE TABLE $Tauteurs, $Taccesgroupes_auteurs");
    630                         }       
    631             }
    632            
    633           // 4.4.2 : traitement des rédacteurs actuels de la base spip_auteurs => si effacer les absents redac = OK
    634             if ($eff_absr == 1) {
    635                 $sql147 = sql_query("SELECT COUNT(*) AS nb_redacsR FROM $Tauteurs WHERE statut = '1comite'");
    636                 $data147 = mysql_fetch_array($sql147);
    637                 if ($data147['nb_redacsR'] > 0) {
    638                   // si archivage, récup de l'id de la rubrique archive + si nécessaire, créer la rubrique                                             
    639                         if ($supprimer_articlesr != 1 AND $archivager != 0) {
    640                             $nom_rub_archivesR = $rub_archivager;
    641                                 $sql613 = sql_query("SELECT id_rubrique, id_secteur FROM $Trubriques WHERE titre = '$nom_rub_archivesR' AND id_parent = '$id_rub_parent_archivesR' LIMIT 1");
    642                                 if (mysql_num_rows($sql613) > 0) {
    643                                     $data613 = mysql_fetch_array($sql613);
    644                                         $id_rub_archivesR = $data613['id_rubrique'];
    645                                 }
    646                                 else {
    647                                     sql_query("INSERT INTO $Trubriques (id_rubrique, id_parent, titre, id_secteur, statut, date) VALUES ('', '$id_rub_parent_archivesR', '$nom_rub_archivesR', '$id_sect_parent_archivesR', 'publie', '$date_rub_archivesR')" );
    648                                             $id_rub_archivesR = mysql_insert_id();
    649                                 }
    650                         }
    651                         $sql159 = sql_query("SELECT id_auteur, login FROM $Tauteurs WHERE statut = '1comite' AND bio != 'archive'");
    652                         $cteur_articles_deplacesR = 0;
    653                         $cteur_articles_supprimesR = 0;
    654                         $cteur_articles_modif_auteurR = 0;
    655                         while ($data159 = mysql_fetch_array($sql159)) {
    656                             $login_sp = strtolower($data159['login']);
    657                                 $id_auteur_ec = $data159['id_auteur'];
    658                                 $sql456 = sql_query("SELECT COUNT(*) AS nb FROM spip_tmp_csv2spip WHERE nom = '$login_sp' LIMIT 1");
    659                                 $data456 = mysql_fetch_array($sql456);
    660                       // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
    661                                 if ($data456['nb'] == 0) {
    662                                   // traitement éventuel des articles de l'auteur à supprimer
    663                                     $sql757 = sql_query("SELECT COUNT(*) AS nb_articles_auteur FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    664                                         $data757 = mysql_fetch_array($sql757);
    665         //print '<br><br>id_auteur = '.$id_auteur_ec;
    666         //print '<br>nb_articles_auteur = '.$data757['nb_articles_auteur'];
    667         //print '<br>$supprimer_articlesr = '.$supprimer_articlesr;
    668         //print '<br>$archivager = '.$archivager;
    669                                         if ($data757['nb_articles_auteur'] > 0) {
    670                                             if ($supprimer_articlesr != 1) {
    671                                             if ($archivager != 0) {
    672                                                             $sql612 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = $id_auteur_ec");
    673                                                         if (mysql_num_rows($sql612) > 0) {
    674         //print '<br>départ UPDATE';
    675                                                             while ($data612 = mysql_fetch_array($sql612)) {
    676                                                                     $id_article_ec = $data612['id_article'];
    677                                                                                 sql_query("UPDATE $Tarticles SET id_rubrique = '$id_rub_archivesR', id_secteur = '$id_sect_parent_archivesR' WHERE id_article = '$id_article_ec' LIMIT 1");
    678                                                                                 $cteur_articles_deplacesR ++;
    679                                                                 }
    680                                                         }
    681                                                         if ($auteurs_poubeller != 1) {
    682                                                             sql_query("UPDATE $Tauteurs_articles SET id_auteur = '$id_auteur_archivesR' WHERE id_auteur = '$id_auteur_ec'");
    683                                                         }                                                                                                                       
    684                                                 }
     727                                }
     728                        }
     729              // optimisation de la table après les effacements
     730                        sql_query("OPTIMIZE TABLE $Tauteurs, $Tarticles, $Tauteurs_articles, $Taccesgroupes_auteurs");
     731                }               
     732        }
     733     // 4.4.3 : traitement des administrateurs restreints actuels de la base spip_auteurs => si effacer les absA = OK
     734        if ($eff_absa == 1) {
     735            $sql1473 = sql_query("SELECT COUNT(*) AS nb_redacsA FROM $Tauteurs
     736                                                                 LEFT JOIN $Tauteurs_rubriques
     737                                                                 ON $Tauteurs_rubriques.id_auteur = $Tauteurs.id_auteur
     738                                                                 WHERE statut = '0minirezo'");
     739    //echo '<br>mysql_error 1473 = '.mysql_error();
     740                $data1473 = mysql_fetch_array($sql1473);
     741                if ($data1473['nb_redacsA'] > 0) {
     742                    $sql1593 = sql_query("SELECT Tauteurs.id_auteur, Tauteurs.login FROM $Tauteurs AS Tauteurs, $Tauteurs_rubriques AS Tauteurs_rubriques WHERE statut = '0minirezo' AND Tauteurs.id_auteur = Tauteurs_rubriques.id_auteur");
     743                        $cteur_articles_deplacesA = 0;
     744                        $cteur_articles_supprimesA = 0;
     745                        $cteur_articles_modif_auteurA = 0;
     746                        while ($data1593 = mysql_fetch_array($sql1593)) {
     747                            $login_sp = strtolower($data1593['login']);
     748                                $id_auteur_ec = $data1593['id_auteur'];
     749                                $sql4563 = sql_query("SELECT COUNT(*) AS nbA FROM spip_tmp_csv2spip WHERE nom = '$login_sp' LIMIT 1");
     750                                $data4563 = mysql_fetch_array($sql4563);
     751                  // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
     752                                if ($data4563['nbA'] == 0) {
     753                                  // traitement éventuel des articles de l'admin à supprimer
     754                                        $sql7573 = sql_query("SELECT COUNT(*) AS nb_articles_auteur FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     755                                        $data7573 = mysql_fetch_array($sql7573);
     756                                        if ($data7573['nb_articles_auteur'] > 0) {
     757                                            if ($supprimer_articlesa != 1) {
     758                                            if ($archivagea != 0) {
     759                                                            $sql6123 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     760                                                            if (mysql_num_rows($sql6123) > 0) {
     761                                                                    while ($data6123 = mysql_fetch_array($sql6123)) {
     762                                                                            $id_article_ec = $data6123['id_article'];
     763                                                                                        sql_query("UPDATE $Tarticles SET id_rubrique = '$id_rub_archivesA', id_secteur = '$id_sect_parent_archivesA' WHERE id_article = '$id_article_ec' LIMIT 1");
     764                                                                                        $cteur_articles_deplacesA ++;
     765                                                                        }
     766                                                                }
     767                                                                if ($auteurs_poubellea != 1) {
     768                                                                    sql_query("UPDATE $Tauteurs_articles SET id_auteur = '$id_auteur_archivesA' WHERE id_auteur = '$id_auteur_ec'");
     769                                                                }                                                                                                                       
     770                                                        }
     771                                                        }
     772                                                        else {
     773                                                            $sql7563 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     774                                                                while ($data7563 = mysql_fetch_array($sql7563)) {
     775                                                                    $id_article_a_effac = $data7563['id_article'];
     776                                                                        sql_query("DELETE FROM $Tarticles WHERE id_article = '$id_article_a_effac' LIMIT 1");
     777                                                                        $cteur_articles_supprimesA ++;
     778                                                                }
     779                                                                sql_query("DELETE FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     780                                                        }
     781                                                }
     782                                      // traitement des admins à effacer                                                                                               
     783                                                if ($auteurs_poubellea != 1) {
     784                                                    sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '0minirezo' LIMIT 1");
     785                                                        if (mysql_error() == 0) {
     786                                                    $TresA_eff[] = $login;
     787/*
     788// pas d'acces_groupe pour cette version                                                                         
     789                                                      // effacer toutes les références à ce visiteur dans acces_groupes
     790                                                            sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
     791                                                            if (mysql_error() != '') {
     792                                                                $TerrA_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     793                                                            }
     794*/                                   
     795                                                  // virer l'administation de toutes les rubriques pour cet admin
     796                                                            sql_query("DELETE FROM $Tauteurs_rubriques WHERE id_auteur = $id_auteur_ec");
     797                                                            if (mysql_error() != '') {
     798                                                                $TerrA_eff_rub_admins[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     799                                                            }
     800                                                }
     801                                                else {
     802                                                        $TerrA_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
     803                                                }
     804                                                }
     805                                                else {
     806                                                    sql_query("UPDATE $Tauteurs SET statut = '5poubelle' WHERE id_auteur = '$id_auteur_ec' LIMIT 1");
     807                                                        if (mysql_error() == 0) {
     808                                                    $TresA_poub[] = $id_auteur_ec;
    685809                                                }
    686810                                                else {
    687                                                     $sql756 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    688         //print '<br>départ DELETE';
    689                                                         while ($data756 = mysql_fetch_array($sql756)) {
    690                                                             $id_article_a_effac = $data756['id_article'];
    691                                                                 sql_query("DELETE FROM $Tarticles WHERE id_article = '$id_article_a_effac' LIMIT 1");
    692                                                                 $cteur_articles_supprimesR ++;
    693                                                         }
    694                                                         sql_query("DELETE FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
     811                                                    $TerrA_poub[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    695812                                                }
    696                                         }
    697                                   // traitement des auteurs à effacer                                                                                           
    698                                         if ($auteurs_poubeller != 1) {
    699                                             sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '1comite' LIMIT 1");
    700                                                 if (mysql_error() == 0) {
    701                                             $TresR_eff[] = $login;
    702                                                           // effacer toutes les références à ce visiteur dans acces_groupes
    703                                                                 sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
    704                                                                 if (mysql_error() != '') {
    705                                                                     $TerrR_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    706                                                                 }
    707                                         }
    708                                                         else {
    709                                             $TerrR_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    710                                         }
    711                                         }
    712                                         else {
    713                                             sql_query("UPDATE $Tauteurs SET statut = '5poubelle' WHERE id_auteur = '$id_auteur_ec' LIMIT 1");
    714                                                 if (mysql_error() == 0) {
    715                                             $TresR_poub[] = $id_auteur_ec;
    716                                         }
    717                                         else {
    718                                             $TerrR_poub[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    719                                         }
    720                                         }
    721                                 }
    722                         }
     813                                                }
     814                                        }
     815                                }
    723816                  // optimisation de la table après les effacements
    724                         sql_query("OPTIMIZE TABLE $Tauteurs, $Tarticles, $Tauteurs_articles, $Taccesgroupes_auteurs");
    725                 }               
    726             }
    727          // 4.4.3 : traitement des administrateurs restreints actuels de la base spip_auteurs => si effacer les absA = OK
    728             if ($eff_absa == 1) {
    729                     $sql1473 = sql_query("SELECT COUNT(*) AS nb_redacsA FROM $Tauteurs
    730                                                                          LEFT JOIN $Tauteurs_rubriques
    731                                                                          ON $Tauteurs_rubriques.id_auteur = $Tauteurs.id_auteur
    732                                                                          WHERE statut = '0minirezo'");
    733         //echo '<br>mysql_error 1473 = '.mysql_error();
    734                         $data1473 = mysql_fetch_array($sql1473);
    735                         if ($data1473['nb_redacsA'] > 0) {
    736                             $sql1593 = sql_query("SELECT Tauteurs.id_auteur, Tauteurs.login FROM $Tauteurs AS Tauteurs, $Tauteurs_rubriques AS Tauteurs_rubriques WHERE statut = '0minirezo' AND Tauteurs.id_auteur = Tauteurs_rubriques.id_auteur");
    737                                 $cteur_articles_deplacesA = 0;
    738                                 $cteur_articles_supprimesA = 0;
    739                                 $cteur_articles_modif_auteurA = 0;
    740                                 while ($data1593 = mysql_fetch_array($sql1593)) {
    741                                     $login_sp = strtolower($data1593['login']);
    742                                         $id_auteur_ec = $data1593['id_auteur'];
    743                                         $sql4563 = sql_query("SELECT COUNT(*) AS nbA FROM spip_tmp_csv2spip WHERE nom = '$login_sp' LIMIT 1");
    744                                         $data4563 = mysql_fetch_array($sql4563);
    745                       // l'utilisateur n'est pas dans le fichier CSV importé => le supprimer
    746                                 if ($data4563['nbA'] == 0) {
    747                                           // traitement éventuel des articles de l'admin à supprimer
    748                                                 $sql7573 = sql_query("SELECT COUNT(*) AS nb_articles_auteur FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    749                                                 $data7573 = mysql_fetch_array($sql7573);
    750                                                 if ($data7573['nb_articles_auteur'] > 0) {
    751                                             if ($supprimer_articlesa != 1) {
    752                                                     if ($archivagea != 0) {
    753                                                                     $sql6123 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    754                                                                     if (mysql_num_rows($sql6123) > 0) {
    755                                                                             while ($data6123 = mysql_fetch_array($sql6123)) {
    756                                                                                     $id_article_ec = $data6123['id_article'];
    757                                                                                                 sql_query("UPDATE $Tarticles SET id_rubrique = '$id_rub_archivesA', id_secteur = '$id_sect_parent_archivesA' WHERE id_article = '$id_article_ec' LIMIT 1");
    758                                                                                                 $cteur_articles_deplacesA ++;
    759                                                                                 }
    760                                                                         }
    761                                                                         if ($auteurs_poubellea != 1) {
    762                                                                             sql_query("UPDATE $Tauteurs_articles SET id_auteur = '$id_auteur_archivesA' WHERE id_auteur = '$id_auteur_ec'");
    763                                                                         }                                                                                                                       
    764                                                                 }
    765                                                         }
    766                                                         else {
    767                                                             $sql7563 = sql_query("SELECT id_article FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    768                                                                 while ($data7563 = mysql_fetch_array($sql7563)) {
    769                                                                     $id_article_a_effac = $data7563['id_article'];
    770                                                                         sql_query("DELETE FROM $Tarticles WHERE id_article = '$id_article_a_effac' LIMIT 1");
    771                                                                                 $cteur_articles_supprimesA ++;
    772                                                                 }
    773                                                                 sql_query("DELETE FROM $Tauteurs_articles WHERE id_auteur = '$id_auteur_ec'");
    774                                                         }
    775                                                         }
    776                                               // traitement des admins à effacer                                                                                               
    777                                                         if ($auteurs_poubellea != 1) {
    778                                                             sql_query("DELETE FROM $Tauteurs WHERE id_auteur = '$id_auteur_ec' AND statut = '0minirezo' LIMIT 1");
    779                                                         if (mysql_error() == 0) {
    780                                                             $TresA_eff[] = $login;
    781                                                               // effacer toutes les références à ce visiteur dans acces_groupes
    782                                                                     sql_query("DELETE FROM $Taccesgroupes_auteurs WHERE id_auteur = $id_auteur_ec");
    783                                                                     if (mysql_error() != '') {
    784                                                                         $TerrA_eff_accesgroupes[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    785                                                                     }
    786                                                           // virer l'administation de toutes les rubriques pour cet admin
    787                                                                     sql_query("DELETE FROM $Tauteurs_rubriques WHERE id_auteur = $id_auteur_ec");
    788                                                                     if (mysql_error() != '') {
    789                                                                         $TerrA_eff_rub_admins[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    790                                                                     }
    791                                                         }
    792                                                         else {
    793                                                                 $TerrA_eff[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    794                                                         }
    795                                                         }
    796                                                         else {
    797                                                             sql_query("UPDATE $Tauteurs SET statut = '5poubelle' WHERE id_auteur = '$id_auteur_ec' LIMIT 1");
    798                                                         if (mysql_error() == 0) {
    799                                                             $TresA_poub[] = $id_auteur_ec;
    800                                                 }
    801                                                 else {
    802                                                     $TerrA_poub[] = array('id_auteur' => $id_auteur_ec, 'erreur' => mysql_error());
    803                                                 }
    804                                                         }
    805                                                 }
    806                                         }
    807                       // optimisation de la table après les effacements
    808                                         sql_query("OPTIMIZE TABLE $Tauteurs, $Tarticles, $Tauteurs_articles, $Taccesgroupes_auteurs");
    809                                 }
    810                 }
    811             }   //   fin effacer les abs (4.4)  V 2.3   
     817                                sql_query("OPTIMIZE TABLE $Tauteurs, $Tarticles, $Tauteurs_articles, $Taccesgroupes_auteurs");
     818                        }
     819            }   //   fin effacer les abs (4.4)  V 2.3
    812820       
    813821          // résultats étape 4
     
    950958                            echo "<span class=\"Cerreur\">"._T('csvspip:suppr_redac');
    951959                                foreach ($TerrR_eff as $ee) {
    952                                     echo _T('csvspip:redac').$ee['login']._T('csvspip: erreur').$ee['erreur'];
     960                                    echo '<br/>'._T('csvspip:redac').$ee['login']._T('csvspip: erreur').' '.$ee['erreur'];
    953961                                }
    954962                                echo "<span class=\"Cerreur\">"._T('csvspip:redac_poubelle');
    955963                                foreach ($TerrR_poub as $ep) {
    956                                         echo _T('csvspip:redac').$ep['login']._T('csvspip: erreur').$ep['erreur'];
     964                                        echo '<br/>'._T('csvspip:redac').$ep['login']._T('csvspip: erreur').' '.$ep['erreur'];
    957965                                }
    958966                            $err_total ++;
     
    976984                            echo "<span class=\"Cerreur\">"._T('csvspip:suppr_redac');
    977985                                foreach ($TerrA_eff as $Aee) {
    978                                     echo _T('csvspip:admin').$Aee['login']._T('csvspip: erreur').$Aee['erreur'];
     986                                    echo "<br />"._T('csvspip:admin').$Aee['login']._T('csvspip: erreur').' '.$Aee['erreur'];
    979987                                }
    980988                                echo "<span class=\"Cerreur\">"._T('csvspip:redac_poubelle');
    981989                                foreach ($TerrA_poub as $Aep) {
    982                                         echo _T('csvspip:admin').$Aep['login']._T('csvspip: erreur').$Aep['erreur'];
     990                                        echo "<br />"._T('csvspip:admin').$Aep['login']._T('csvspip: erreur').' '.$Aep['erreur'];
    983991                                }
    984992                            $err_total ++;
     
    9941002                            echo "<br />"._T('csvspip:suppression_debut').$cteur_articles_supprimesA._T('csvspip:suppression_fin')."<br>";
    9951003                    }
     1004/*   
     1005// pas d'acces_groupe pour cette version   
    9961006                    if (count ($TerrA_eff_accesgroupes) > 0) {
    9971007                            echo "<span class=\"Cerreur\">"._T('csvspip:suppr_redac');
     
    10021012                                $err_total ++;
    10031013                    }
     1014*/               
    10041015                    if (count ($TerrA_eff_rub_admins) > 0) {
    10051016                            echo "<span class=\"Cerreur\">"._T('csvspip:suppr_redac');
     
    10101021                                $err_total ++;                                                 
    10111022                    }
    1012             }
    1013        
    1014         // fin effacer les absents V 2.3
     1023            }   // fin effacer les absents V 2.3
    10151024            echo fin_cadre_couleur(true);                       
    10161025       
     
    11101119          // vidage de la table temporaire
    11111120            if ($err_total == 0) {
    1112                 sql_query("TRUNCATE TABLE spip_tmp_csv2spip");
     1121//                sql_query("TRUNCATE TABLE spip_tmp_csv2spip");
    11131122            }
    11141123        }
  • _plugins_/csv2spip/2_0/lang/csvspip_fr.php

    r31372 r31388  
    114114  // O
    115115    'ok_etape1' => '<strong>Etape 1 :</strong> t&eacute;l&eacute;chargement r&eacute;ussi du fichier ',
    116     'ok_etape2.1' => '<strong>Etape 2.1 :</strong> cr&eacute;ation de la table temporaire "tmp_auteurs" = OK',
    117     'ok_etape2.2' => '<strong>Etape 2.2 :</strong> int&eacute;gration des auteurs dans la base temporaire = OK ',   
     116    'ok_etape2.1' => '<strong>Etape 2.1 :</strong> remise &agrave; zero de la table temporaire "spip_tmp_csv2spip" = OK',
     117    'ok_etape2.2' => '<strong>Etape 2.2 :</strong> int&eacute;gration des auteurs dans la table temporaire = OK ',   
    118118    'ok_etape3.1_debut' => '<strong>Etape 3.1 :</strong> cr&eacute;ation des rubriques admins = OK ',
    119119    'ok_etape3.1_fin' => ' rubriques cr&eacute;&eacute;es',
     
    171171    'titre_info' => 'plugin CSV2SPIP',
    172172    'titre_etape1' => 'Etape 1 :</strong> t&eacute;l&eacute;chargement du fichier sur le serveur',
    173     'titre_etape2' => '<strong>Etape 2 :</strong> passage des donn&eacute;es du fichier dans la base temporaire',
     173    'titre_etape2' => '<strong>Etape 2 :</strong> passage des donn&eacute;es du fichier dans la table temporaire',
    174174    'titre_etape3' => '<strong>Etape 3 :</strong> gestion des sous-groupes (rubriques et acces_groupes)',
    175175    'titre_etape4' => '<strong>Etape 4 :</strong> traitement des utilisateurs',
  • _plugins_/csv2spip/2_0/plugin.xml

    r31372 r31388  
    1111        </version>
    1212        <etat>
    13           dev
     13          test
    1414        </etat>
    1515        <description>
Note: See TracChangeset for help on using the changeset viewer.