Plugin csv2spip : gestion des auteurs à partir de fichiers CSV

Ceci est une archive périmée mais qui reste intéressante, parfois autant pour l’article que les commentaires associés.

Si vous devez gérer un SPIP avec de très nombreux utilisateurs (visiteurs, rédacteurs, administrateurs de rubriques), que de surcroît ces utilisateurs ont un « turn-over » rapide, alors csv2spip est fait pour vous !

AVIS GENERAL !

Tous les utilisateurs de ce plugin en SPIP 2.1 sont invités à désinstaller la version 3.2.0 ou 3.2.1 et à passer à la version 3.3.0 qui rétabli un fonctionnement à priori correct de ce plugin.

Tous les utilisateurs de ce plugin en SPIP 2.0 sont invités à désinstaller la version 3.2.0 ou 3.2.1 et à revenir à la version 3.1.0 qui rétabli un fonctionnement à priori correct de ce plugin.

Introduction

Ce plugin reprend la contrib csv2spip : gestion des utilisateurs de SPIP à partir de fichiers CSV (version 2.2 réservée aux versions 1.8 de spip).

Versions
version 3.0.1 : version stable pour les SPIP 1.9.2 csv2spip_1_9.zip
version 3.1.0 : version stable pour les SPIP 2.0.*. [1] csv2spip_2_0.zip
version 3.3.0 : version stable pour SPIP 2.1.* [2] csv2spip_2_1.zip
version pour SPIP 3 : ce plugin est remplacé par csv2auteur

Remerciements à O. Jeulin qui à réalisé les logos de ce plugin (les sources GIMP sont dans le dossier /img_pack/sources).

Avertissement ! en utilisant ce plugin vous assumez le fait que vous DEVEZ avoir fait une sauvegarde de la base de votre spip AVANT de commencer !

Ce plugin réalise des modifications d’un grand nombre d’éléments de votre spip simultanément : en cas d’erreur vous ne pourrez certainement PAS revenir en arrière sinon par restauration d’une sauvegarde ANTÉRIEURE ou par trifouillages multiples avec votre phpMyAdmin...

0. But :

Le plugin csv2spip permet de gérer les utilisateurs de spip à partir de fichiers CSV : c’est donc un outil spécifiquement destiné aux spip ayant un grand nombre d’utilisateurs (quelques dizaines à plusieurs milliers).

Pour les utilisateurs de la contrib pour spip 1.8 (v2.0 à v2.2), les nouveautés de cette version 3.0 (plugin) sont signalées par un : [v3.0]

1. Ce plugin permet d’importer des fichiers CSV pour :

  • créer/gérer des utilisateurs spip (visiteurs/auteurs/admins restreints) avec login, adresse mail, mot de passe, pseudo spip
  • créer/gérer les rubriques administrées par les admins restreints générés
  • [v3.0] créer/gérer les groupes d’accès du plugin acces_groupes pour les utilisateurs importés

[v3.0] Pour toutes ces tâches il est possible de configurer différemment les options en fonction du statut (visiteurs/auteurs/admins restreints) des utilisateurs « injectés » par le fichier CSV.

Conditions d’utilisation : cet outil à été testé sur SPIP 1.9.1 avec des fichiers CSV contenant près de 2 000 utilisateurs (885 visiteurs, 885 rédacteurs , 149 admins restreints), sur des serveurs apache sous Linux et sous Windows => a priori vous ne devriez pas rencontrer de problèmes si votre fichier CSV est correctement formé...

Pour tous les problèmes de « time out » pour cause de trop gros fichier CSV et/ou config du serveur peu généreuse : voir le paragraphe « 6. Ce qu’il reste à faire » en fin de cet article.

2. Un exemple de situation à gérer :

Cette « moulinette » à été conçue pour permettre de gérer les utilisateurs d’un SPIP de collège ou lycée avec les contraintes suivantes :

  • tous les élèves doivent êtres rédacteurs.
    -  le SPIP doit contenir une rubrique pour chaque discipline de l’établissement (Français, Anglais, Maths...) et tous les profs d’une discipline doivent êtres administrateurs de la rubrique de leur discipline. La création et la gestion des administrateurs de rubrique doit donc être automatisée elle aussi.
  • [v3.0] tous les parents des élèves doivent disposer d’un compte visiteur (possibilité de s’identifier pour accès à des contenus réservés).
  • les élèves restent 3 ou 4 ans dans l’établissement : à chaque rentrée scolaire il faut supprimer les comptes de ceux qui sont partis et créer ceux des nouveaux arrivants. De plus, selon les établissements, les mots de passe des élèves doivent pouvoir être modifiés à chaque rentrée scolaire.
  • le login et le mot de passe des élèves et des profs doit être identique à celui qu’ils utilisent pour se logger sur le réseau de leur établissement : ces infos doivent donc être récupérées à partir d’une base de données indépendante de SPIP [3]
    . Pour une compatibilité large, elles seront stockées dans un fichier de type CSV , manipulable avec n’importe quel tableur.
  • contrainte supplémentaire : tous les articles des élèves qui quittent l’établissement (qui seront donc supprimés) doivent êtres archivés afin de sortir de l’arborescence principale du SPIP.
  • [v3.0] enfin, ce plugin doit également assurer la création/gestion automatique de groupes utilisables dans le plugin acces_groupe spip 1.9. L’idée étant de pouvoir gérer automatiquement :
    • pour chaque discipline : un groupe comprenant tous les profs de cette discipline
    • pour chaque classe : un groupe comprenant tous les élèves de la classe
    • pour chaque classe : un groupe comprenant tous les comptes des parents des élèves de la classe.

Étant donné le nombre d’utilisateurs à gérer et la fréquence des « grosses » mises à jour de ceux-ci, il est obligatoire de « squizzer » le gestionnaire des utilisateurs de SPIP (qui se tape le boulot de saisir tous les comptes un par un ???) et d’utiliser une extraction de la base de donnée des utilisateurs sous forme d’un fichier CSV pour ensuite la réinjecter dans les tables MySQL de SPIP en utilisant un script php qui permet de gérer les fonctions supplémentaires (cryptage du mot de passe, création des rubriques, des administrateurs de rubrique, effacement des anciens utilisateurs, gestion des groupes d’accès...).

3. Installation du plugin csv2spip :

[v3.0]Comme tous les plugins : récupérez le dernier zip à jour de cette contrib sur https://plugins.spip.net/csv2spip.html ou sur le miroir http://miroirspip.ventre.name/build..., décompactez le et placez le dossier « csv2spip » obtenu dans votre répertoire /plugins (à créer à la racine de votre spip si nécessaire), rendez vous sur l’interface de gestion des plugins (menu Configuration > Gestion des plugins), cochez le plugin « csv2spip » et validez.

Vous devriez voir apparaître une icone supplémentaire dans le menu « auteur » pour les administrateurs généraux (au passage : appel à contribution pour une icône plus classe que mon pauvre bidouillage ! contact via le forum de cet article.)

Du point de vue de la base de données, ce plugin n’installe pas de tables supplémentaires : pour le désinstaller il suffit d’effacer le répertoire /csv2spip.

4. Fonctionnement de ce plugin :

Détail des options proposées :

Paramètres du fichier CSV
  • cadre « Paramètres du fichier CSV » : détermine ce qui sera utilisé dans le champ « groupe » du fichier CSV pour différencier les différents statuts (visiteurs/auteurs/admins restreints)


Mise à jour des utilisteurs existants
  • le cadre « Mise à jour des utilisateurs existant déja dans SPIP » (option « Mettre à jour les utilisateurs existants » active) ne concerne que les utilisateurs déja existants dans le spip et présents dans le fichier CSV :
    • si « Mise à jour des infos personnelles » est sur « oui », alors le script remplace les données des utilisateurs appartenant déja au spip par celles trouvées dans le fichier CSV. Cette option est spécialement sensible en ce sens qu’elle provoque une réinitialisation du mot de passe : les utilisateurs qui auraient personnalisé celui-ci risquent de ne plus pouvoir se connecter ! [4]
    • l’option « Réinitialisation des groupes d’accès » permet de supprimer les utilisateurs déja existants de tous les groupes du plugin acces_groupes pour permettre la réinitialisation de leurs groupes d’accès
    • l’option « Réinitialisation des rubriques administrées » réalise le même type de réinitialisation pour les rubriques gérées par les admins restreints existants déjà dans le spip et présents dans le fichier CSV.


Suppression des absents
  • le cadre « Suppression des absents » permet de déclencher la suppression (ou mise à la poubelle) de tous les visiteurs/redacteurs/admins restreints existants dans le spip mais absents du fichier CSV. Cette option n’est donc pas à utiliser à la légère ! Par sécurité dans tous les cas les admins généraux ne seront pas concernés !


Création des rubriques pour les admins
  • le cadre « Création de rubriques pour les sous-groupes administrateurs » permet de configurer la rubrique attribuée aux utilisateurs admins retreints créés :
    • si l’option « Créer une rubrique par sous-groupe d’admins » est active, alors pour tous les noms trouvés dans le champ ss_groupe des utilisateurs admins restreints il sera créé une rubrique (rubrique parent choisie dans l’option « Rubrique parent des rubriques à créer ») et les admins correspondants en seront administrateurs.
    • l’option « Créer un article dans chaque rubrique admin » permet de « meubler » chacune de ces rubriques avec un article publié afin qu’elles soient visibles dans les menus de rubriques.
    • pour tous les admins n’ayant pas de ss_groupe (champ vide) ou si la génération des rubriques admins n’est pas activée, il est nécessaire de préciser le nom de la rubrique à attribuer aux admins créés. En effet, si on ne leur attribue pas de rubrique à administrer, ils sont admins généraux... La rubrique à utiliser est déterminée par les options « Rubrique par défaut des admins restreints » et « Rubrique parent de la rubrique par défaut ».
      NB : la rubrique par défaut ne sera créée que si cela est nécessaire.


Connexion avec le plugin acces_groupes
  • le cadre « Connexion avec le plugin acces_groupes » permet de faire créer un groupe d’accès pour chaque nom trouvé dans le champ ss_groupe du fichier CSV et d’inclure tous les utilisateurs correspondants à celui-ci.
    • l’option « Réinitialiser les sous-groupes » permet de s’assurer que si l’un des groupes à créer existe déja, il sera vidé de ses utilisateurs (= réinitialisation des utilisateurs du groupe).


Si tout se passe bien vous devriez obtenir quelque chose qui ressemble à la capture d’écran suivante :

Exemple de retour OK
Un système de gestion des erreurs est intégré pour chaque étape et affiche un résumé à la fin du processus.


5. Caractéristiques du fichier CSV des utilisateurs à importer :

Rappel : un fichier CSV (Comma Separated Values) correspond à un fichier tableur enregistré au format texte. Chaque ligne de ce fichier correspond à une ligne du tableur, les données des cellules de cette ligne étant séparées par un séparateur (ici c’est le «  ; »). On peut donc fabriquer un tel fichier avec n’importe quel tableur (OOo Calc par ex) en sélectionnant le format .csv ou .txt comme format d’enregistrement.
[*Remarque*] : si vous utilisez OpenOffice pour générer votre fichier CSV, n’oubliez pas de cocher la case « Éditer les paramètres de filtre » lorsque vous enregistrez votre fichier pour préciser ces paramétrages ! (Sous Excel, débrouillez vous comme vous pouvez !).

Vu qu’il s’agit d’un format texte, il est également possible de le créer/modifier avec un simple éditeur de texte (bloc-note par ex).

Pour éviter les multiples retours d’utilisateurs ayant des problèmes avec la gestion de l’ordre des colonnes du fichier CSV, à partir de la [version 2.2] il FAUT ajouter une ligne en tête du fichier qui permet de repérer les données de chaque colonne. Les noms de champs à utiliser dans cette première ligne sont les suivants :

« login »  prenom »  groupe »  ss_groupe »  pass »  email »  pseudo_spip »

L’utilisation de cette première ligne permet de pouvoir mettre les colonnes dans n’importe quel ordre dans le fichier CSV, la moulinette fonctionnera quand même.

Ce qui donne :

login prenom groupe ss_groupe pass email pseudo_spip
Bidule Marcel REDACTEURS 3D sdzzdbczke mbidule@monprovid.truc Big Marcel
Doe John ADMINS Education Civique kfbskfb djohn@ac-Ilederé.fr M. Doe
Duchemin REDACTEURS olnlnhh
Dugenou Zazie REDACTEURS danslmetro zaz@oups.chose
etc...

Un modèle de fichier CSV est livré avec le plugin : csv2spip_modele.csv

Détails :

  • « login » = obligatoire (le login dans spip). Attention : le login est sensible à la casse (Majuscules/minuscules).
  • « prenom » : facultatif
  • « groupe » = le groupe principal de chaque utilisateur (« PROFS » ou « ELEVES » pour IACA). Ce champ permet de séparer les utilisateurs qui seront rédacteurs (groupe REDACTEUR par défaut) de ceux qui seront administrateurs de rubriques (groupe ADMINS par défaut) ou visiteurs (groupe VISITEURS par défaut). Si ce champ est vide, les utilisateurs seront rédacteurs.
  • « ss_groupe » : le sous-groupe
    • pour les auteurs et les visiteurs : facultatif si l’on n’utilise pas la génération des groupes d’accès acces_groupes.
    • pour les administrateurs c’est le nom de la rubrique qu’ils administreront.
  • « pass » : le mot de passe (s’il est vide, le login sera utilisé comme mot de passe)
  • « email » : facultatif, nécessaire si on souhaite que les utilisateurs aient leur mail déclaré dans SPIP
  • « pseudo_spip » : facultatif, permet de spécifier un nom d’auteur SPIP différent de celui composé automatiquement par « prenom LOGIN »
  • séparateur de champ :  ; (point-virgule)
  • valeurs encadrées par des «  (guillemets doubles) (vous n’êtes pas obligé d’encadrer les valeurs par des » mais si vous voulez éviter les problèmes, c’est plus sûr...)
  • séparateur de ligne : \r\n (sauts de lignes utilisé par OOo Calc par défaut) sous Windows, \n sous Linux (dans les 2 cas c’est le séparateur standard du système, a priori vous n’avez pas à vous en soucier)

Remarques :

  • Le champ ss_groupe est obligatoire si on veut la création automatique des rubriques par sous-groupe et que les membres du sous-groupe en soient administrateurs.
    Il est également requis si l’on veut que les utilisateurs créés soient automatiquement intégrés dans un groupe acces_groupes. Cette option permet en effet de créer les groupes pour le plugin acces_groupes et d’intégrer les utilisateurs dedans en fonction du contenu du champ ss_groupe.
  • On suppose que la gestion des doublons de noms est assurée en amont : si vous créez le fichier csv à la main, vous devrez vous assurer que chaque utilisateur à un nom unique !
  • spécifique IACA : si les profs ne sont pas regroupés par discipline dans IACA (en tant que sous-groupes) il faudra éditer le fichier avec un tableur (OOo Calc par ex) pour ajouter celles-ci dans la colonne sous-groupe. En revanche, si les groupes de disciplines sont générés par IACA, il faudra éditer le fichier et faire un « Rechercher / Remplacer » pour supprimer les préfixes « D_ » qui précèdent chaque nom de groupe de profs afin d’éviter que les rubriques de disciplines dans le SPIP n’aient ce préfixe.


Nouveauté de la [version 4.0] : il est maintenant possible de donner également le champ « bio » ; et à l’inverse les 7 champs ci-dessus peuvent chacun être absent. En outre, l’ordre dans lequel on les donne est libre. De plus, on peut utiliser la virgule ou la tabulation pour séparer les colonnes, SPIP prendra automatiquement le signe le plus fréquent dans le fichier comme séparateur probable. Ce remplacement du point-virgule permet en particulier d’avoir des colonnes comportant des entités XML. Enfin, l’usage des guillemets dans une colonne est reconnu, ce qui permet en particulier d’avoir des sauts de ligne dans les valeurs (le champ « bio » notamment).

6. Ce qu’il reste à faire :

  • ensemble de fichiers CSV de tests

    un gros paquet de tests de compatibilité pour différents serveurs/hébergeurs/configurations... Si vous souhaitez participer à cette phase de tests, utilisez les fichiers CSV fournis dans ce zip.
    Tant que ce plugin sera dans l’état « test », ces fichiers sont fournis par défaut dans le sous-répertoire /csv2spip/tests_csv2spip.

  • la gestion du time out pour les gros fichiers CSV et/ou les serveurs lents... : des essais d’intégration d’une option de « reprise » sont en cours (v3.1 ?)
  • la transformation de l’ensemble du code pour utiliser des fonctions : en effet ce plugin n’est jamais qu’une « petite moulinette » (300 lignes de code pour la version 0.1) organisée de façon procédurale « primitive » qui a gonflé à force de fonctionnalités supplémentaires jusqu’aux 1500 lignes actuelles... Pour aller plus loin (sauvegarde/bridage des options de config, remplissage de champs et/ou tables « extras »...) il sera donc nécessaire de réorganiser l’ensemble du code...

En cas de problème

Demande d’assistance via le forum de cet article : pour éviter les retours d’erreurs trop flous ou incomplets, merci d’accompagner tout les rapports de bogues d’éléments précis :

  • liste des options sélectionnées lors de l’envoi du fichier CSV
  • un extrait des premières lignes du fichier CSV utilisé (anonymez les mots de passe si nécessaire...)
  • une url où trouver la capture d’écran de la page de retour avec les erreurs...

De la même manière, vérifiez la conformité de votre fichier CSV aux paramètres indiqués dans le paragraphe « 5. Caractéristiques du fichier CSV des utilisateurs à importer : » AVANT tout envoi de demande d’aide !

Remarque pour les spip hébergés chez free
 [5]

Notes

[1Cette version 3.1.0 pour SPIP 2.0.* est une version de transition sans nouvelles fonctionnalités. Elle ne fonctionnera pas sur une base de données autre que MySQL, elle ne comprend pas de support des groupes d’accès (le plugin « accès par groupes » n’existe pas pour SPIP 2.0.*).

[2cette version permet la gestion des mots de passe cryptés en sha256 introduite par SPIP 2.1. Aucune nouvelle fonctionnalité. Elle devrait permettre de remédier aux nombreux problèmes rencontrés par les utilisateurs des versions 3.2.0 ou 3.2.1 (cf forums attachés à cet article).

[3csv2spip à été développé dans le cas d’une base utilisateur présente sur un ActiveDirectory Windows 2000/2003 géré par le système IACA (tel que préconisé par la cellule TICE du rectorat de l’académie d’Aix-Marseille). Dans cette situation, le serveur ActiveDirectory (réseau local de l’établissement avec un firewall paranoïaque) ne pouvant communiquer avec le serveur SPIP qui est hébergé sur le serveur académique (réseau internet), il n’est pas possible d’utiliser le mode d’authentification par LDAP de SPIP.

[4sans compter qu’ils risquent de difficilement supporter une telle ingérence de l’administrateur dans la gestion de leur mot de passe...

[5Si votre site est hébergé sur un compte perso de free, les fonctions de gestion des fichiers .htpasswd et .htpasswd-admin de spip appelées lors de la génération des comptes font planter le script avec une erreur du type « *Fatal error* : unlink(data/.htpasswd) [<a
href='function.unlink'>function.unlink] : No such file or directory
in *.../ecrire/inc/acces.php* on line *150 ».
Pour éviter ce plantage, vous devez modifier le fichier /plugins/csv2spip/exec/csv2spip.php pour désactiver l’appel de ces fonctions : il suffit de mettre en commentaire la ligne 488, ce qui donne :

// Mettre a jour les fichiers .htpasswd et .htpasswd-admin
//     ecrire_acces();

Discussion

31 discussions

  • Je me réponds à moi-même, au temps pour moi : j’étais sur une version 3.2.0 test ... La version 3.3.0 est OK ...

    Désolé ...

    Marc

    Répondre à ce message

  • Bonjour, il y a une erreur dans le code du plugin, qui empêche l’affichage de l’image dans le sous-menu des Auteurs.

    Ne sachant pas comment informer autrement, je le mets ici : dans csv2spip_pipelines.php ; ligne 8, remplacer new Bouton(« ../ »._DIR_PLUGIN_CSV2SPIP par new Bouton(_DIR_PLUGIN_CSV2SPIP (la suite ne change pas, bien sûr).

    J’ai constaté que de nombreux plugins avaient cette erreur. Je suppose que le code « erroné » était bon avant la version 2.1.12 ... Bref, une fois corrigé, c’est OK

    A+ Marc

    Répondre à ce message

  • 20

    Bonjour :

    cvs2spip 3.2.0
    spip 2.1

    le plugin semble fonctionner, les auteurs sont bel et bien crées (environ 70), mais il semblerait que leur ’pass’ ne le soit pas. Du coup, impossible de se logguer.

    Je ne sais pas si cela a un rapport avec ce qui est signalé plus bas.

    Merci de votre aide et j’ajoute un grand merci à l’auteur pour son boulot !

    • En fait, en vérifiant via phpmyadmin, il n’y a ni login ni mdp de créé ...étrange

    • j’ajoute qu’en fait, le champ ’nom’ est peuplé avec le champ ’login’ de mon csv....

    • J’ai moi aussi un pb avec ce plugin.
      tout fonctionne sauf que aucun des auteurs ne possède de login ni de mot de passe apres la moulinette.
      Qui a une solution ?
      un autre plugin ?
      sinon je vais devoir ajouter à la main près de 160 auteurs !!!!
      la galère....
      merciiiiiiiiiiiiiiiiiiiiii

    • je suis en train de bosser sur la mise au point d’une version opérationnelle pour SPIP 2.1 : merci de patienter encore un peu...

    • Voilà une bonne nouvelle !
      Un grand merci à toi et bon courage !

    • Oui, une bonne nouvelle.
      Je voudrais, par contre, savoir s’il s’agit d’une question de jours, de semaines ou de mois...
      Car j’ai presè de 160 auteurs à ajouter rapidement et si rien n’arrive je vais être contraint de commencer à les entrer un à un...

    • bonjour

      j’ai fait les modifications mais le mot de pass ne passe toujours pas. dans la base j’ai une longue site de chiffre et lettre en mot de passe pour chaque redacteur.

      N’y a t il pas un moyen de donner le même mot de passe à tous les rédacteurs ?

    • Bonjour,

      Pour faire fonctionner la version actuelle avec spip 2.1.x et en attendant que cy_altern fasse qqchose de propre, voici les modifications que j’ai apporté

      Vers la ligne 278, juste sous la declaration de la fonction, ajouter :

      $groupe_admins = strtolower($_POST[« groupe_admins »]) ;
      $groupe_visits = strtolower($_POST[« groupe_visits »]) ;

      ca permet de corriger le bug d’import des comptes visiteurs.

      Remplacer la ligne

      $id_spip = insert_auteur(’spip_auteurs’) ;

      par

      $id_spip = insert_auteur(’spip’) ;

      Sous la ligne,

      auteurs_set($id_spip, $champs) ;

      ajouter

      instituer_auteur($id_spip, array(« login »=>$champs[’login’],« pass »=>$champs[’pass’])) ;

      pour corriger le probleme des login/pass vides.

      Enfin, dans votre fichier d’import, pensez bien à mettre une valeur dans la colonne pseudo_spip sinon, ca cafouille

    • Merci pour ses infos, mais le novice que je suis n’est pas capable de faire ces modifications... a quand la version modifiée et fonctionnelle...?

    • bonjour et merci de votre precieuse aide.

      j’ai modifié la ligne id sipip auteur et instituer_auteur comme convenu.

      je n’ai pas fait la premiere modification car je n’aurais que des redacteurs

      mais je n’arrives toujours pas à connecter l’élève teste que j’ai choisit.

      Ca coince toujours ! ou alors j’ai mal fait les modifications !

      pour la dernière modification j’ai mi la ligne au même niveau que celle au dessus.

      est-il possible de nous envoyer une impression ecran de vos modifications

      merci bien pour nous les novices ! j’ai plsu de 600 élèves dans mon établissement.
      et j’ai réussi l’import dans ma plate forme SEQUANE alors j’espère bien que j’y arriverai sous SPIP.

    • Voici un pastebin de mon fichier csv2spip.php
      http://pastebin.com/zWdPDSvw
      j’y ai corrigé tous les accents (anciennement en iso-8859), supprimé tous les blocs de commentaires relatifs à accès_par_groupe. Les modifications évoquées sont :

      modif 1 : ligne 278 et 279
      modif 2 : ligne 359
      modif 3 : ligne 362

      Chag

    • Bonsoir à toutes et tous,

      chag, j’ai utilisé tes modifes via ton pastebin. Si j’arrive bien à avoir l’import de mes comptes rédacteurs (j’ai vérifié via mon phpmyadmin, j’ai bien un login et un mdp crypté), impossible de me connecter avec un compte le mdp n’est pas fonctionnel ?

      je n’ai aucun message d’erreur lorsque je lance la moulinette ?

      bref, je ne vois pas ?

      NB : j’ai bien renseigné le pseudo_spip

      D’avance merci pour vos réponses

      Bien cordialement

    • j’ai également rencontré ce probleme. J’ai du rater un copier/coller qqpart. à Priori, j’ai corrigé en replacant la ligne 362 par ca :
      instituer_auteur($id_spip, array("login"=>$champs['login'], "pass"=>$data157['pass']));

      J’espère que ca corrige bien le problème

    • Bonjour,

      Chag, avec beaucoup de retard dans la réponse :( ça fonctionne ta correction de mon côté est OK !

      merci

      — 
      xpiopio

    • Merci à cy_altern pour ce plugin et chag (pour la correction provisoire), j’ai pu en un coup de cuillère à pot créer la centaine d’utillisateurs dont j’avais besoin... et avec leur rubrique dédié !
      (sur spip 2.1.2)

    • Moi je galère tout le temps.
      pourriez-vous m’envoyer un lien pour télécharger le plugin qui fonctionne ?
      merci

    • Bonsoir,
      Pour parvenir à tes fins, il te faut dans un premier temps récupérer l’archive SVN du plugin (les fichiers du plugin en cours de développement) sur Spip-zone. Pour le fonctionnement de spip-zone voir ici http://zone.spip.org/trac/spip-zone... .
      Une fois que tu as récupéré le dossier du plugin et son contenu, il faut apporter les modifications présentées par Chag sur le fichier csv2spip.php que tu trouveras dans le dossier exec du plugin.

      Bon courage !

    • Bonjour,

      J’ai téléchargé le plugin depuis le svn, fait les modifs que propose chag et rien de rien toujours pas de login ni mot de passe dans la table et spip_auteu figure toujours dans le champ source.
      Pas de soluce en vue ?

      François

      spip2.1.11
      csv2spip3.2.1
      plugins eva

    • AVIS GENERAL !

      Tous les utilisateurs de ce plugin en SPIP 2.1 sont invités à désinstaller la version 3.2.0 ou 3.2.1 et à passer à la version 3.3.0 qui rétabli un fonctionnement à priori correct de ce plugin.

      Tous les utilisateurs de ce plugin en SPIP 2.0 sont invités à désinstaller la version 3.2.0 ou 3.2.1 et à revenir à la version 3.1.0 qui rétabli un fonctionnement à priori correct de ce plugin.

      merci de votre patience...

    • Webby-siter

      Bonsoir ,
      Face aux bugs des précédentes versions 3, j’avais complètement renoncé à utiliser le plugin.

      Ce soir, avec la dernière mise à jour, tout fonctionne parfaitement . Merci beaucoup, et très bonne année .

    Répondre à ce message

  • Bonjour à tous ceux qui s’intéressent à ce plugin à priori fort utile. Etant novice dans tout ce je ne me sans pas de modifier tout ce que les uns et les autres indiquent de faire. Je ne pense pas être le seul.
    Y aura-t-il prochainement une version fonctionnelle et clé en main de ce plugin ?
    Je vais devoir dans les porchains jours ajouter à la main 160 comptes rédacteurs.. la galère.
    Merci

    Répondre à ce message

  • Bonjour,
    j’obtiens une erreur à l’importation avec la version 3.2.1 sur un spip 2.1.10 :
    Etape 2.2 : erreur(s) lors de l’intégration des utilisateurs dans la base temporaire « spip_tmp_csv2spip » :

    Cela ne vient vraisemblablement pas de mon fichier .csv cr un essai avec le fichier test donne le même résultat.

    Une idée ?

    Merci d’avance.

    Répondre à ce message

  • 7

    bonjour,
    je travaille avec spip 2.1 et j’ai chargé la version 3.1.0 du plugin.
    l’importation du fichier csv se passe bien mais dans la base de données, l’auteur ne possède ni login ni mot de passe. par contre le statut, le nom... apparaissent.
    Quelqu’un a-t-il déjà rencontré ce problème ?
    cordialement

    • c’est en fait la version 3.2.0 que j’utilise. Le problème reste !

    • Bonjour,

      J’ai le même souci ! Cependant, cela a fonctionné deux fois pour importer des visiteurs identifiés (env 500) mais cela ne fonctionne plus ni en création, ni en mise à jour. D’ailleurs, la mise à jour ne fonctionne pas, les visiteurs sont de nouveau créés.

      J’utilise ce plugin pour offrir un accès à un grand nombre de visiteurs/utilisateurs avec login et mdp.

      Je sèche ...

      A vot bon coeur

      dentu

      SPIP 2.1.10
      csv2spip 3.2.1

    • Je suis soulagé de ne pas être le seul !
      Ce plugin que je trouve génial m’a bien aidé à toutes les rentrées précédentes... il reste encore un mois. Merci à son auteur pour tout le travail réalisé et on serait enchanté si ce « bug » était corrigé !
      Cordialement

    • Je remercie aussi l’auteur, chose que je n’avais pas faite précédement.
      J’ai trouvé une bidouille pour y parvenir : http://forum.spip.org/fr_235852.html#forum235858
      cdt
      dentu

    • Bonjour à tous,

      version utilisée Spip 2.1.10 - csv2spip 3.2.1

      Tout d’abord je remercie moi aussi l’auteur de ce plugin qui va grandement me rendre service.

      Je rencontre également le même problème de login/pass lors d’un déversement initial. A savoir :
      1) les champs correspondants de la table spip_auteurs ne sont pas remplis
      2) dans le backend du module « modifier l’auteur », les champs adéquats sont inaccessibles.

      Analyse rapide :

      => cela vient en effet du remplissage du champ source qui est utilisé notamment lors de l’authentification par annuaire LDAP. En effet dans ce cas, les champs login et pass ne sont plus gérés par Spip.
      La chose qui m’a interpellée pdt mes tests était le fait que le champ source soit rempli par une chaîne de caractères « bizarre » : spip_auteu.
      J’ai donc cherché comment et pourquoi cette chaîne était insérée car Spip ne connait qu’une variable pour autoriser les accès à ces champs : il s’agit de « spip » tout court ! l’autre chaîne peut être « ldap » si utilisation... Ou visiblement n’importe quoi d’autres...)

      Coté développement, 2 fichiers sont impactés entre autre.

      ~/ecrire/action/editer_auteurs.php
      ~/plugins/csv2spipxxx/exec/csv2spip.php

      les fonctions de gestion « auteurs » du premier fichier vérifie justement ce statut de source avt toute action sur les champs login/pass... D’où l’erreur rencontrée.
      Je me suis donc permis de modifier le code responsable de cette entrée dans le fichier csv2spip.php ligne 586

      $id_spip = insert_auteur('spip');

      à la place initialement de

      $id_spip = insert_auteur('spip_auteurs');

      A rapprocher des lignes 67 -> 71 du fichier editer_auteurs.php

      Note : vous remarquerez que la chaîne est tronquée au passage de la moulinette ;-)

      Reprenant les tests, le déversement initial s’est correctement effectué et nous avons bien les entrées Login/pass dans la table spip_auteurs ainsi que l’accès à la modification.

      Côté questions...

      Est-ce dû au passage vers une version de Spip 2.1 jusqu’à ce jour (2.1.10) qui a rendu invalide cette variable... Ou bien, ayant rapidement survolé le code, je n’ai pas forcément vu toute la finesse, y-a-t-il une raison précise ?

      Côté réflexion...

      Il me semble quand même judicieux par contre de pouvoir ou non interdire l’accès à la modification des login/pass par l’usager concerné. Notamment dans le cas de plus en plus « courant » d’utilisation d’authentification déportée comme les annuaires LDAP voire SSO comme Shibboleth.
      http://www.spip-contrib.net/Spipoleth

      Ne pourrait-on pas envisager une fonction supplémentaire une fois le compte créé de modifier le champ source en conséquence ?
      Qu’en pensez vous ?

    • Bonjour,
      je reviens de vacances et c’est avec un grand plaisir que je découvre la solution à mon problème. Un grand merci.
      NB : le bug e-t-il été modifié dans la version en ligne du plugin ? car il semble que certains aient encore le soucis.
      Cordialement

    • Bonjour,

      Je ne suis pas l’auteur de ce plugin et je n’ai pas accès au dépôt des fichiers sources.

      Il faut attendre la réponse de cy_altern pour valider la correction.
      Je conseille donc pour l’instant de faire la correction à la main dans les 2 fichiers, la manip restant simple (je dis dans les 2 fichiers car j’ai aussi répondu pour le non affichage du logo, voir mon autre post).

      Rappel : j’ai testé cette correction pour les versions 2.1.8 et 2.1.10 et la version csv2spip 3.2.1

    Répondre à ce message

  • 1
    Mathieu Doublet

    Bonjour,

    mon site enfin mis en ligne, me revoilà à la charge. :)

    Installation du dernier CSV2SPIP (2_0.zip) avec un SPIP 2.1.10. Comme mon collègue du dessous, le logo n’apparaît pas mais le lien oui (et aucun souci avec l’installation qui m’indique OK). Et quand je clique dessus : page blanche.

    Forcément, ça bloque les choses. :)

    • bonjour,
      Toujour à l’étude d’utilisation de ce plugin, j’ai eu le même souci pour le logo.
      Je me suis aperçu d’une petite coquille. Il suffit de modifier la ligne 8 du fichier csv2spip_pipelines.php comme suit :

      $boutons_admin['auteurs']->sousmenu['csv2spip']= new Bouton(_DIR_PLUGIN_CSV2SPIP."/img_pack/csv2spip-24.png", _T('csvspip:module_titre') );
      Soit :
      _DIR_PLUGIN_CSV2SPIP en lieu et place de "../"._DIR_PLUGIN_CSV2SPIP

      Note  : j’ai testé aussi avec le plugin bando la modif n’impacte pas.

    Répondre à ce message

  • 2

    bonjour,
    je suis sous spip 2.1.8
    j’ai téléchargé et installé csv2spip version 3.2.1
    je n’ai pas le logo dans le menu « auteur » mais j’ai tout de même « csv2spip »
    quand je clique dessus j’ai le message d’erreur à la ligne 115 de csv2spip_import.php (voir image jointe)
    j’ai bien tenté de supprimer cette ligne... le plugin tourne (moulinette !) mais s’arrête à l’étape 2 (erreur ligne 30 du même fichier)
    Précision : je ne suis pas du tout un spécialiste !!!

    avez-vous une idée ?
    Merci d’avance
    DJ

    • Voici l’erreur ligne 115 !

      Parse error : syntax error, unexpected ’&’, expecting T_VARIABLE or ’$’ in /homez.50/snepfsuc/www/spip/plugins/auto/csv2spip_2_0/inc/csv2spip_import.php on line 115

    • Après plusieurs recherches notamment sur la zone, j’ai téléchargé la version 3.1.0 du plugin et tout fonctionne à merveille !
      Merci à Cy_altern pour le super boulot !

    Répondre à ce message

  • 3

    Bonjour,

    Je m’apprête à tester et utiliser ce plugin sur un SPIP 2.1.8 16966

    Le bouton d’accès au plugin dans le menu auteur n’apparait pas, sûrement à cause du test de version SPIP dans csv2spip_pipelines.php.

    En modifiant ce test, j’arrive à l’afficher.

    Par ailleurs, il semble y avoir pas mal d’activité sur la zone.

    Que me conseillez-vous ?

    Merci d’avance

    • Oups ! C’est également ce que signale DéesseA dans ce forum... et c’est lié au fait que j’utilise le plugin Bandeau depuis tellement longtemps que je n’ai même pas pensé à tester ce que ça donnais sans...
      C’est corrigé désormais.
      Sinon ce plugin est effectivement en pleine réorganisation mais à priori il devrait fonctionner correctement. Tu tombe donc bien : on cherche des testeurs/testeuses ! N’oublie simplement pas de faire une sauvegarde avant toute importation de fichier...

    • Merci pour ta réponse si rapide.

      Pour tout te dire, j’ai besoin d’importer un fichier de 500 auteurs sur une table déjà surchargée par champs extra un site tournant en accès restreint avec interface de saisie publique mais sur lequel je ne veux surtout pas intervenir .... Je souhaite juste importer mes 500 auteurs.

      Et j’ai beaucoup de mal à faire la correspondance entre mes champs :
      nom -> pseudo spip qui correspond à un code utilisateur interne
      patronyme -> nom en champs extra
      prenom -> champ extra
      profil -> champ extra
      email
      login
      mot de passe

      En regardant un peu le code, j’essaie de comprendre les correspondances, mais j’ai peur de me faire des nœuds et j’ai compris que toutes les infos de ma table ne vont pas être importées ou risquent d’être traitées différemment.

      En fait, le plugin qui correspond à mes attentes et qui fonctionne très bien est CSVIMPORT
      http://www.spip-contrib.net/Utilisation-du-plugin-CSV_IMPORT

      Car on peut faire correspondre facilement les champs que l’on souhaite et tous les champs de la table sont prises en compte.

      Le seul hic est que les mots de passe ne sont pas traités sur la table auteur (pas de hashmd5) ....

      J’ai bien compris que ce plugin est ancien et fait l’objet d’une refonte.
      Ma remarque va donc dans ce sens :

      Pourquoi ne pas faire un rapprochement avec le plugin CSVIMPORT qui permet différentes importation génériques en le surchargeant des fonctionnalités très spécifiques du présent plugin ?

      Ceci étant, ma remarque va dans le sens de faire avancer une réflexion mais bravo et merci pour ce don de compétences !

    • Avec la refonte de la version 3.2.1, je pense qu’il serait bon de renommer les colonnes du fichier CSV de manière identique aux champs des tables SQL concernées, cela serait plus clair, en énonçant des règles de correspondance pour les absents (genre si « login » absent, on prend « nom » etc). Et ensuite revoir la doc (ici et dans la distribution) à ce sujet.

      Quant au plugin csvimport, il a de fait été absorbé par spip_bonux, lequel impose tout un tas de choses pas forcément désirablles. Je préfère quant à moi des petits plugins autonomes, plutôt qu’une grosse usine à gaz.

    Répondre à ce message

  • 2
    Mathieu Doublet

    Bonjour,

    je travaille avec SPIP 2.1.0 et j’ai essayé d’installer CSV2SPIP. Le téléchargement se passe bien mais quand je coche l’activation, j’obtiens le message « Installation du plugin csv2spip - Echec ».
    Pourtant le plugin est bien coché et j’accède bien au plugin dans la partie Auteurs mais il n’y a pas d’icône affichée (j’ai une belle croix rouge à la place).

    Est-ce que quelqu’un a déjà rencontré ce problème ?

    Merci :)

    • Normal : la version que tu as essayé d’installer était étiquetée « SPIP 2.0 » en tête de cette documentation, elle plante lors d’une installation sur un SPIP 2.1 (et heureusement car tu aurais généré des mots de passe cryptés à la mode SPIP 2.0 donc incompatibles avec le cryptage de SPIP 2.1...)
      La mise à jour est désormais faite, tu devrais pouvoir installer la version 3.2.0 sans problèmes.

    • Mathieu Doublet

      Merci beaucoup ! Je vais essayer à nouveau. :)

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom