PJ1: cdeetatftl.zip
Etoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactivesEtoiles inactives
 

Ce petit plugin sur lequel je travaille depuis plusieurs semaines, de manière très épisodique car je n'ai pas le temps, m'a désormais l'air d'etre fonctionnel. Vous avez peut-être remarqué sur mon suivi github, que j'avais déjà eu des commit sur ce petit plugin mais son fonctionnement n'était que parcellaire.

Son fonctionnement permet d'afficher, sur un article donné, son "état fonctionnel" parmi une liste prédéfinie d'états dans le plugin. Ce plugin est est pensée dans un but d'être réutilisé notamment avec le fabuleux outil s de template jumia de Regular Lab : content templater.

Rappel : un code d'état fonctionnel ?

Pour ceux qui l'ignorent, mais surtout pour celles et ceux qui appellent ca autrement, j'appelle un "code d'état fonctionnel" un statut d'une élément parmi une liste d'état par laquelle un élément est forcément obligée de passée. Par exemple, si je fait une analogie avec un Homme, les codes d'états fonctionnels pourraient être : bébé, enfant, adolescent, adulescent, adultes, 3e age, 4e age. Un homme passe forcément par chacun de ses états au cours de sa vie.

Principe de fonctionnement 

Ce plugin permet d'être intégré au sein d'un article ou d'un module, dans lequel vous allez spécifier l'ensemble des codes fonctionnels d'un état particulier, et mon outil va vous afficher les étapes précédents déjà terminées, l'état en cours, et les états à venir. En d'autres termes cela s'appelle un workflow. D'ailleurs Joomla 4 intégre ce fonctionnement, ce qui peut être tres partique, par exemple, si vous mettez en place pour un article donné, un rédacteur, un lecteur, un validateur et un relecteur par exemple. Tant que le relecteur n'a pas apposé sa validation, votre article ne peut être publié.
Toutefois, nous n'avons encore pas migrer en Joomla 4 et cela ne se passera pas pour le moment.

Fonctionnement 

Afin de ne pas multiplier les modules dans Joomla, je suis donc parti sur un plugin à développer. Dans votre article ou votre module qui comportera le tag de ce plugin, à l'endroit où vous souhaitez intégrer l'affichage de votre workflow, vous devez spécifier l'intégration de ce workflow entre balise {cef} et {/cef}.
Et si vous vous demandez à quoi se réfère cet acronyme, c'est simplement l'acronyme de code d'état fonctionnel.
À l'endroit où vous souhaitez afficher votre workflow, vous devez donc entre ces balises ces virgule spécifier l'ensemble des état de votre workflow. Afin de spécifier l'état actuel dans lequel se trouve votre élément, vous n'avez qu'à encadrer l'État avec des crochets. Vous obtiendrez donc un code de ce type :
 
{cef}code1|code2|code3|[code4]|code5|code7|code7|code8{/cef}
 
Ecplications :
  • les balises {cef} et {/cef} déterminent l'enseble du système d'affichage de l'ensemble des codes. C'est pour cette raison que je préconise l'utilisation de content templater pour "coller" un modele d'utilisation de mon système dans vos articles
  • Tous l:es codes d'états fonctionnels sont affichés les un derriere les autres, dans l'ordre de votre workflow
  • L'état fonctionnel dans lequel se trouve votre élément est entouré de "crochets droits" [ et ]
Si vous souhaitez simplement changer de code d'état fonctionnel dans votre élément, vous n'avez qu'à simplement corriger les crochets autour du bon code d'état fonctionnel que vous souhaitez afficher. Tout le reste est "calculé" automatiquement.
Bien entendu, si vous compter utiliser ce plugin a plusieurs endroits dans votre site, vous pouvez utiliser ce plugin dans un module affectable où vous souhaitez. Personnellement, mon cas de figure est d'afficher l'état d'unarticle donné, donc j'intègre le code de mon plugin dans mes articles.

Résultat graphique

J'ai fait très simple et reste ouver à vos personnalisétion du CSS que je  vous fournis. Je ne suis pas infographiste est suis particulièrement nul dans le domaine, le résultat est donc très simple. Vous remarquerez que les étatt passés sont en gris, l'état courant en rouge, et les prochaines étapes en bleu pâle à peine visibles. C'est volontaire, charge à vous de styliser votre (mon !) CSS

firefox YxuDqcN6K4

Personnalisation 

Je n'ai pas prévu dans l'administration du système, et la préparation de champs permettant de spécifier le titre et les explications de mon workflow. Ceci est codé en dur. Je sais ce n'est pas bien mais cela me permet d'aller beaucoup plus vite dans le projet. Charge à vous, dans le fichier cdeetaftl.php de corriger le titre et les éventuels explications que vous souhaitez afficher à votre utilisateur. Et si vous faites votre propre CSS à partir de ce projet, contactez-moi, ce sera avec plaisir que je rajouterai à cet article vos crations graphiques !

Rapport sondage marche

Voici le rapport statistique du sondage (auquel vous pouvez toujours répondre) que j'ai lancé sur le sujet

 

Mon GitHub

Voyant que l'intégration du flux RSS ralentissait tout mon site, voisi le simple lien de mon flux RSS : Mon GitHub