Dans un SPIP d’établissement scolaire on envisage la situation "standard" dans laquelle :
La génération de ces centaines de comptes et leur mise à jour annuelle est gérée via le plugin csv2spip : cf [admin] Importation des comptes utilisateurs dans les applications web de l’établissement.
Faire une zone d’accès restreint dans un SPIP d’établissement scolaire qui comprendra plusieurs dizaines (voire centaines) d’utilisateurs autorisés, exemples :
Si la création de ces rubriques à accès réservé est réalisable sans problème avec le plugin accès restreint, le problème principal est que la version compatible SPIP 1.9.2 oblige à donner les autorisations aux auteurs un par un en passant par la page de configuration de leur compte.
Si on peut le faire pour des zones attribuées à quelques comptes auteurs (2 ou 3), il paraît totalement exclu de le faire pour des dizaines ou centaines d’auteurs !
Par ailleurs on exclu la "solution de facilité" qui consiste à créer un compte auteur "partagé" pour chacune de ces zones : non seulement cette solution n’est pas sérieuse d’un point de vue sécurité (le mot de passe du compte finira forcément par être divulgué publiquement) mais en plus elle n’est pas compatible avec le fait que chaque compte utilisateur doit pouvoir être associé avec plusieurs zones d’accès restreint.
Le plugin "CSV Import" (http://www.spip-contrib.net/Utilisa...) qui permet de faire des imports/exports vers ou à partir de fichiers CSV dans n’importe quelle table de SPIP est donc tout à fait adapté pour faire l’attribution "en masse" d’une zone à un grand nombre d’auteurs.
Pour comprendre le principe de cette manipulation il est faut savoir que l’association des auteurs à une zone d’accès restreint est géré par la table spip_zones_auteurs de la base de données qui stocke des "paires" id_zone / id_auteur :
id_zone | id_auteur |
---|---|
1 | 23 |
1 | 56 |
1 | 3 |
2 | 45 |
2 | 3 |
... | ... |
Etape 0 : déclaration des tables manipulables via le plugin CSV Import :
le plugin CSV Import ne peut importer ou exporter que les tables pour lesquelles il est explicitement autorisé. Par défaut (configuration de base du plugin) il n’est associé avec aucune table.
On va donc commencer par autoriser ce plugins pour :
Pour cela on ouvre l’interface de ce plugin : menu Edition > Import CSV > outil Administrer les tables : la liste des tables de SPIP est proposée.
On va donc cocher uniquement pour les administrateurs :
On valide ces choix avec le bouton Enregistrer en bas de page puis on revient à la page d’accueil du plugin CSV Iimport avec le bouton Retour.
1ère étape : création de la zone
2ème étape : récupération de la liste des id_auteur des profs
récupérer la liste des identifiants des profs à partir d’une exportation via le plugin CSV Import :
id_auteur | nom | statut |
---|---|---|
1 | admin1 | 0minirezo |
2450 | Mr Machin | 0minirezo |
2776 | PROF01 Hortense | 0minirezo |
2777 | PROF02 Marcel | 0minirezo |
2778 | PROF03 Albert | 0minirezo |
... | ||
2536 | ELEVE01 Nadia | 1comite |
2537 | ELEVE02 Guillaume | 1comite |
2538 | ELEVE03 Janique | 1comite |
... | ||
2772 | PARENT117 | 6forum |
2773 | PARENT118 | 6forum |
2774 | PARENT119 | 6forum |
2775 | PARENT120 | 6forum |
... |
NB : correspondance des codes de statuts :
Puisque dans notre exemple nous souhaitons autoriser l’accès à la zone Salle des profs pour tous les profs (i.e. les comptes ayant le statut admin), on ne va garder que les lignes ayant le statut 0minirezo.
NB : on peut éventuellement supprimer la ligne de Mr Machin qui est le proviseur de l’établissement et à qui on ne souhaite pas donner l’accès à la zone réservée au profs...
3ème étape : association des auteurs à la zone
id_zone | id_auteur |
---|---|
1 | 1 |
1 | 2450 |
1 | 2776 |
1 | 2777 |
1 | 2778 |
... |
Ce fichier sera enregistré avec les paramètres de formatage suivants (voir [admin] Importation des comptes utilisateurs dans les applications web de l’établissement pour la mise au format d’un fichier CSV) :
On va ensuite pouvoir l’importer dans la table spip_zones_auteurs à l’aide du plugin CSV Import :