Carnet Wiki

ZxWP : un plugin d’administration public..

Version 5 — Janvier 2019 YannX

Page de réflexions, analyse et notes techniques de travail, pour proposer un plugin d’administration de SPIP (au niveau Redacteur, Administrateur) permettant la quasi-totalité des manipulations d’édition depuis et dans l’espace public standard, sans modification du core de spip, ni meme surcharge des appels de #FORMULAIRES standard de SPIP.

Des deux approches suggérées (une interface par Services Web cf Mist. GraphX ou un plugin dans l’esprit initié par MiniBando qui étend le classique bandeau spip_admin d’administration contextuel), cette page s’intéresse à l’approche de création d’un plugin.

Nota Bene : il s’agit d’un travail en cours de conception, donc actuellement ne pas considérer cette rédaction comme aboutie et finalisée ; Vos remarques sont aussi les bienvenues, dans le texte ou en commentaires...

Le contexte

Si pour des rédacteurs habitués à créer des articles dans SPIP l’espace privé propose une interface structurée par thématiques fonctionnelles, simle a comprendre dans cette perpective de « redaction » journalistique, ce n’est plus la meme chose dans un contexte de travail collaboratif, où la logique est d’abord une logique applicative, soit informationnelle (enrichir les informations autour d’un thème, qu’il s’agisse d’une rubrique, d’une entreprise ou d’une notion technique ou commerciale...) soit d’une logique « métier » (par exemple dans un intranet Qualité ou Support de Production, ou fillière administrative) : les utilisateurs utilisateurs interviennent dans l’espace de consultation public de SPIP SPIP -qui est leur outil d’information avant d’être d’etre leur outil de travail-rédaction collaborative travail - et veulent passer du statut de consommateur au statut de participant contributeur (d’abord en commentant => forum, puis en contribuant => wiki [1], enfin en participant => création d’articles)[org/spip.php?article150" class="spip_out" rel="external">Cf . d’articles ). la progression d’implication décrite par B.Bayard : conférence à [La Liberte de l’Esprit  !]].

L’approche prise en compte considère [2] l’adjonction d’un menu de commandes complet dans l’espace public.

Description extérieure de la solution

En raison de la largeur croissante des ecrans, proposer une colonne à gauche de l’ecran (de largeur limitée aux icones principales) pour fournir l’équivalent du bandeau horizontal de SPIP [3]

Analyse technique du plugin à créer

La solution est naturellement de proposer un plugin (compatible a la fois pour les squelettes classiques et les squelettes sur le principe Z), remplaçant les boutons d’administration traditionnels, comme le fait déjà MiniBando !
Le principe étant de rester (au maximum) sur l’espace public de façon contextuelle, le premier point concerne le retour en fin d’edition (le paramètre #SELF du formulaire du privé), pour des squelettes de formulaires dans ./prive/formulaires/.. qu’il n’est pas question de modifier ni de surcharger.

Cette page fait suite à de nombreuses reflexions depuis Quels-besoins-pour-une-edition-collaborative-sous-SPIP , relancées par un échange sur IRC, retranscrit partiellement ci-dessous :

Les contraintes et motivtions

10:47:23 - mist_gx : Salut YannX ;-) non ^^ pas avancé plus que ça, quand je l’ai mis en test ça perturbais plus les utilisateurs-trices que ça n’apportais de confort d’utilisation , maintenant je pense plutot a une administration coté public directement ce qui permetrais beaucoup plus de souplesse au niveau design sans péter l’interface privé qui reste réservé aux webmestres
10:47:53 - mist_gx : vla la ou j’en suis au niveau réflexion …
10:48:55 - YannX : oui mist_gx j’en suis sur la meme demarche : avoir un transfert du mini-bando en mode ZxWP (analogie « trollesque »),
10:48:55 - YannX : qui donnerait sur le coté gauche une min colonne permettant l’appel des pages liées
10:49:15 - YannX : cela parait bcp plus facile aux utilisateurs dans une logique de site collaboraitf
10:49:37 - YannX : et simplifie la compréhension de novices en Web […]
-eliminer l’accès au privé pour les redacteurs (voire les administrateurs) me semble une tres bonne voie d’evolution pour un SPIP collaboratif

10:50:58 - pierretux : YannX : avec #SELF dans les formulaire
10:51:09 - pierretux : perso moins l’utilisateur va dans spip, mieux on se porte
10:51:35 - YannX : oui pierretux (salut) mais cela implique de surcharger pratiquement tous les formulaires de l’espace privé !

Les Solutions techniques envisageables


-  La piste Services
-  la piste appels formulaires du privé
10:59:37 - pierretux : ba si un #FORMULAIRE_EDITER_ARTICLEnew,#SELF devrait le faire
10:59:54 - pierretux : faut l’id_rubrique aussi mais je sais plus ou
11:03:00 - mist_gx : si on a une seule page oui on peut tout invalider et avec ajax on est bon,comme dit déjà fait , mais géréer l’édition sur toute les pages du site genre avec le seo, le theme, l’objet ou les objets , la c’est pas la mm ,
11:03:02 - pierretux : tu le fais dans ton squelette perso
11:04:12 - mist_gx : oui tu appele le form, ça je l’ai fait sur mon_compte (plugin perso) je modifie pas les formulaires du privé …
11:04:50 - mist_gx : je les appeles juste en public, grace a spip ^^

10:58:41 - YannX : […] si tu as déja regardé les pages du privé avec var_mode=inclure tu as sans doute remarquer que chaque page d’edition fait appel a de tres nombreux inclures...... pas convaincu que cela ne sioit aussi simpliste que tu l’évoques
10:59:03 - YannX : prive/formulaires => 72 fichiers une paille ;-)

10:51:52 - mist_gx : ha ben pour une bonne partie d’utilisateur-trices l’espace privé reste obscur ^^ en fait j’ai mm déjà fait un form si connecté pour poster l’article depuis le sommaire genre facebook like et au post je recharge les posts , … le problème c’est la gestion du cache
10:52:22 - pierretux : tu invalides le cache en fin de formulaire et basta
10:53:06 - YannX : a moins que /-je n’ai pas vérifié et je ne sais pas exactement comment faire-/ les URL de retour en fin de process ne soient déja générées par une fonction (genre generer_url_privé : auquel il suffirait de passer uen liste de pages exception !)g

11:05:08 - YannX : « mon squelette perso » : analysons (sur le modele du minibando qui est précurseur !
11:05:08 - YannX : - il faut que chaque appel d’une page d’edition privée (donc le-les squelettes, noisettes, formulaires utilisés dans la moulinette du privée... et plugins/pipelines) soient surchargés pour rajouter ton #SELFpour retour dans la bone page de l’espace public !