Permettre au plugin de fournir leur propre template
Permettre au plugin de fournir leur propre template
J'ai besoin de concevoir un plugin qui doit disposer de ces propres templates twigs.
Pour cela je ne souhaite pas ajouter les pages du plugin directement dans le sous dossier base des templates mais qu'il puisse disposer de sons propre sous dossier de template comme pour les modules.
Je pense adapter la méthode msGetHtml::_construcDefaultTemplatesDirectories() pour cela.
Y aurait il d’éventuels problèmes à prendre en compte en faisant cela ?
Je me demande aussi comment gérer au mieux la priorité des templates. Doivent ils être prioritaire sur les templates de modules ? Comment on peut gérer les priorités entres plusieurs plugin qui proposerai des templates avec le même nom ?
Autres problème, comment permettre aux plugins d'ajouter des entrées dans la Navbar. J'aurai imaginé ajouter des includes conditionnels ajouté dans pageTopNavbar.html.twid avec des élément issue d'un array que les plugins pourrai chacun remplir à partir d'un hook dédié (et donc chaque plugin pourrai ajouter des propres entrés dans la Navbar).
A noter aussi que disposer d'un système de plugin plus complet permettrais aussi de retirer de base certaines fonctionnalité qui ne servent que dans certain cas (c'est aussi le but les plugin), comme par exemple les rappels sms et ainsi d’alléger un peut plus la base en lui laissant uniquement gérer le cœur de Medshake.
Pour cela je ne souhaite pas ajouter les pages du plugin directement dans le sous dossier base des templates mais qu'il puisse disposer de sons propre sous dossier de template comme pour les modules.
Je pense adapter la méthode msGetHtml::_construcDefaultTemplatesDirectories() pour cela.
Y aurait il d’éventuels problèmes à prendre en compte en faisant cela ?
Je me demande aussi comment gérer au mieux la priorité des templates. Doivent ils être prioritaire sur les templates de modules ? Comment on peut gérer les priorités entres plusieurs plugin qui proposerai des templates avec le même nom ?
Autres problème, comment permettre aux plugins d'ajouter des entrées dans la Navbar. J'aurai imaginé ajouter des includes conditionnels ajouté dans pageTopNavbar.html.twid avec des élément issue d'un array que les plugins pourrai chacun remplir à partir d'un hook dédié (et donc chaque plugin pourrai ajouter des propres entrés dans la Navbar).
A noter aussi que disposer d'un système de plugin plus complet permettrais aussi de retirer de base certaines fonctionnalité qui ne servent que dans certain cas (c'est aussi le but les plugin), comme par exemple les rappels sms et ainsi d’alléger un peut plus la base en lui laissant uniquement gérer le cœur de Medshake.
DEMAREST Maxime (Indelog)
Re: Permettre au plugin de fournir leur propre template
Bonsoir,
La branche "sandy-dev" qui a été push hier soir répond à ce besoin concernant les modules, il s'agit d'une branche dev et qui est susceptible d'évoluer durant les prochaines semaines.
Les modifications apportées par les derniers commits de cette branche permettent aux modules de bénéficier de leurs propres routes, controlers et donc template ainsi que la possibilité d'ajouter de nouveaux éléments dans le menu principal cependant je ne me suis pas encore penché sur le sujet des plugins.
Sandy
La branche "sandy-dev" qui a été push hier soir répond à ce besoin concernant les modules, il s'agit d'une branche dev et qui est susceptible d'évoluer durant les prochaines semaines.
Les modifications apportées par les derniers commits de cette branche permettent aux modules de bénéficier de leurs propres routes, controlers et donc template ainsi que la possibilité d'ajouter de nouveaux éléments dans le menu principal cependant je ne me suis pas encore penché sur le sujet des plugins.
Sandy
- Bertrand
- Messages : 177
- Inscription : 21 juil. 2020, 18:08
- Localisation : Dans le grand bain
- Contact :
Re: Permettre au plugin de fournir leur propre template
La version 7 sur la branche dev répond à la problématique de la navbar.
Il faudrait d'ailleurs que tous les nouveaux dev s'alignent dessus.
Pour la priorité des templates, c'est Twig qui gère. En gros l'ordre dans lequel on passe les directories à scanner à la recherche de templates conditionne le résultat.
https://www.logiciel-cabinet-medical.fr ... ement.html
À la réflexion, je pense que dans la hiérarchie des templates, le plug-in doit être // au module. Ça peut donner de manière générale :
userTemplate > plug-in > module > base
sous-entendue que l'existence dans le module d'un template pour plug-in n'est pas.
B.
Il faudrait d'ailleurs que tous les nouveaux dev s'alignent dessus.
Pour la priorité des templates, c'est Twig qui gère. En gros l'ordre dans lequel on passe les directories à scanner à la recherche de templates conditionne le résultat.
https://www.logiciel-cabinet-medical.fr ... ement.html
À la réflexion, je pense que dans la hiérarchie des templates, le plug-in doit être // au module. Ça peut donner de manière générale :
userTemplate > plug-in > module > base
sous-entendue que l'existence dans le module d'un template pour plug-in n'est pas.
B.
MedShakeEHR : Le Logiciel Médical Modulaire Libre
http://www.medshake.app/
MedShake : communauté médicale bien fraîche (et un peu secouée) !
https://www.medshake.net/
Re: Permettre au plugin de fournir leur propre template
Ok, je vais donc baser le dev de mon plugin sur la v7 (voir même sur la branche sandy-dev si elle n'est pas mergé d'ici la).
Par contre la v7 est toujours en dev et pour utiliser mon plugin je vais avoirs besoin d'utiliser la v7 en prod. Est t'elle assez mature pour cela ?
Par contre la v7 est toujours en dev et pour utiliser mon plugin je vais avoirs besoin d'utiliser la v7 en prod. Est t'elle assez mature pour cela ?
DEMAREST Maxime (Indelog)
- Bertrand
- Messages : 177
- Inscription : 21 juil. 2020, 18:08
- Localisation : Dans le grand bain
- Contact :
Re: Permettre au plugin de fournir leur propre template
La branche dev est parfaitement fonctionnelle pour moi. J'ai fait des upgrades de VM pour tester, mais pas d'install de novo.
Effectivement, voir ce que va faire Sandy.
B.
Effectivement, voir ce que va faire Sandy.
B.
MedShakeEHR : Le Logiciel Médical Modulaire Libre
http://www.medshake.app/
MedShake : communauté médicale bien fraîche (et un peu secouée) !
https://www.medshake.net/