À propos d'un éventuel nouveau plugin pour définir le rôle des auteurs.
Beurt <beurt <at> spip.org>
2012-02-07 09:48:41 GMT
Bonjour à tous,
J'ai pour projet de faire un plugin pour donner des rôles (ou
fonctions) aux auteurs des articles. par exemple pour pouvoir
distinguer les auteurs qui ont écrit l'article, ceux qui l'ont mis en
ligne, ceux qui l'ont relu, ceux qui l'ont traduit, etc.
Je vous présente ici ce que j'ai prévu de faire, pour savoir s'il y en
a qui sont intéressés et éventuellement lancer une petite réflexion
sur les fonctionnalités d'un tel plugin avant de commencer sa
réalisation.
Pour l'instant, voici comment j'ai prévu de procéder :
J’ai prévu de créer une nouvelle table « spip_roles » (j'hésite avec «
spip_fonctions », « fonction » décrivant mieux le contenu que « rôle
», mais le nom étant néanmoins plus ambigu, car pouvant être utilisé
ailleurs). Dans cette table, deux (ou trois) champs : « id_role », «
titre » et éventuellement « descriptif ».
Ensuite j'ai prévu de rajouter un champ « id_role » dans la table «
spip_auteurs_articles ».
Côté interface privé, il y aurait simplement un sélecteur (avant ou
après « retirer auteur ») listant les titres des rôles et permettant
de choisir un rôle donné pour un auteur donné dans un article donné.
Tel quel, le plugin correspondrait parfaitement à mes besoins.
Mais on pourrait réfléchir à quelques ajouts pour le rendre plus générique :
Comme expliqué plus haut, j'ai prévu de fournir la table spip_roles
avec quelques rôles prédéfinis (« écrit par », « adapté par » ou « mis
en ligne par », « traduit par », « relu par »). Mais ce qui serait
intéressant c'est de fournir dans la partie privée une page pour
pouvoir ajouter, modifier et retirer des rôles (un peu comme les
mots-clés). Ça, pour l'instant, je ne sais pas du tout le faire. Donc
si quelqu'un est intéressé, je serais enchanté qu'il s'en charge !
Lors de la discussion récente sur le plugin Momo (Mots sur les Mots),
des fonctionnalités similaires ont été évoquées. Comme l'idée de ne
pas utiliser un objet spécifique pour définir les rôles, mais
d'utiliser des mots-clés. Dans ce cas, je crains que ce soit bien plus
complexe de faire une interface compréhensible dans la partie privée.
Et encore plus ambitieux : faire un plugin générique pour gérer les
relations entre tous les objets (articles et auteurs, articles et
mots, articles et articles, etc.)...
Que pensez-vous de tout ça ? Dans tous les cas, je vais devoir faire
d'ici quelques semaines mon plugin « rôle » qu'il soit juste dédié à
la jointure auteurs/articles ou une fonctionnalité d'un plugin plus
générique qui permet de typer les jointures.
--
--
Beurt