Gestion des statuts et WorkFlow
Pour etendre le workflow de SPIP, une exploration du code montre la possibilité d'ajouter des statuts nouveaux pour un objet editorial, qui seront traites dans intituer_objet et puce_statut mais pas de "gerer" les transitions de ces nouveaux statuts (en particulier dans #FORMULAIRE_INSTITUER_OBJET :
- si j'ai bien compris, il est neanmoins possible de surcharger inc_puce_statut_dist, mais cela implique de recoder tout le fichier.php concerné
je propose l'evolution suivante : 1°/ migrer la fonction lister_statuts_proposés() depuis #FORMULAIRES_INSTITUER_OBJET dans inc/puce_statuts avec une syntaxe d'appel etendu (voir ci-dessous) 2°/ definir deux autorisations nouvelles, avec instanciations pour les objes editoriaux traditionnels , #AUTORISER{instituer_rapide...... qui permettrait ulterieurement de piloter de facon personnalisée _ACTIVER_PUCE_RAPIDE et surtout #AUTORISER{proposer_statuts qui serait appelée par la version modifiée de lister_statuts_proposés() dans inc/puce_statut.php : celle-ci passerait donc les arguments identifiants 'objet' et 'id' pour faire appel à l'autorisation ; de plus elle devrait -a mon humble avis- recevoir, le statut actuel de l'objet (à passer en option pour l'autorisation), voire meme le statut visé (lors de l'appel de controle dans le #FORMULAIRE_INSTITUER_OBJET, pour controler effectivement le droit de traitement) en paramètres pour les transferer dans le $options : il me semble que cela pourrait eviter de devoir relire en SQL l'objet concerné pour traiter de son statut actuel !
Dès lors, il sera possible, me semble-t-il, de gerer n'importe quel work-flow ou circuit de validation etendu, simplement en utilisant les primitives standard et API de SPIP, sans devoir passer par des circonlocutions sur les rubriques, et surtout sans devoir modifer quelque code natif du core.
Ce qui devrait permettre aux utilisateurs de la Fabrique de traiter presque completement toute application ;
- il ne restera qu'a proposer plusieurs formulaires correspondants à plusieurs stades de traitement de l'entite
- il serait envisageable de generaliser certaines #SAISIES pour accéder à une liste de selection de cet objet
Cette réflexion a été initalisée suite à des cas pratiques concrets rencontrés dans une administration...
Votre avis...... ( je peux transferer des articles d'analyse et reflexion sur Carnet )
YannX
PS je vous propose de reagir sur spip-dev....