Development #49204
"Applification" des modules (applications métiers) Publik
0%
Description
(description mise à jour pour exposer de manière plus détaillée les interfaces et le plan technique)
Dans Hobo un nouvel écran "Applications", avec des boutons Installer et Créer. (plus tard, un menu kebab, avec une entrée "Catalogues").
Écran de création¶
Interface avec une petite première section de métadonnées, un nom, une icône, une courte description.
Dans cette interface la liste des types d'objet qui peuvent être intégrés (ça peut être une liste + bouton ajouter comme pour les cellules dans combo), après la sélection d'un type d'objet possibilité de sélectionner l'objet en question (exemple on choisit "Modèles de fiches" puis on peut choisir "Famille").
Lorsque ce choix est fait l'objet est ajouté à la liste des objets de l'application, ainsi que les dépendances de l'objet. (par exemple j'ajoute "Famille" et ça ajoute automatiquement le bloc de champs "Adresse").
Cette étape passe par définir une API qui devrait être similaire entre applications, pour pouvoir :
- lister les types d'objet dispo
- lister les objets d'un type
- récupérer les dépendances d'un objet
Envisager ça comme une API neuve et indépendante, pas s'obliger à exploiter (/api/agendas/ et /api/formdefs/ et autres, qui ne fourniront pas nécessairement toutes les infos souhaitées).
Aparté : dans la liste des types d'objet on pourrait également avoir "données de ces fiches", pour pouvoir dire "prendre les données de la «table» «écoles»). Cela pour dire aussi qu'on peut dévier un peu de ce qu'on considère habituellement comme "objet" et par exemple avoir "hiérarchie de pages" plutôt que des "pages" individuelles.
Quand la même appli est instanciée 2× (cas portail usager / portail agent) les types se retrouvent doublés dans la liste des types d'objets, (ex: "portail usager - page" & "portail agent - page").
On se trouve là avec une liste type :
- wcs / formulaire / signalement (slug)
- wcs / source de données / type-de-signalement (slug) / (dépendance: vrai)
- wcs / modèle de fiche / fiche-d-intervention / (dépendance: vrai)
- authentic / rôle / responsable signalement / (dépendance: vrai)
- combo:portal-agent / page / statistiques-sur-les-signalements
(on peut imaginer cacher les dépendances par défaut, ou les ranger en fin de liste, mais détail).
Sur cet écran, un bouton "Générer" qui va appeler l'API "export" associée à chacun des objets sélectionner, et tout taper dans un .zip qui pourra être télécharger.
Également utile un bouton "Rescanner les dépendances" qui repart des objets qui ne sont pas des dépendances et recalcule toutes celles-ci.
Installation¶
C'est une boite de dialogue avec un champ fichier et où on peut mettre le zip de l'application. (plus tard ça pourra interroger un ou plusieurs catalogues pour avoir une liste).
Sur validation, il y a découpe du zip et envoi des parties adéquates aux différentes applications.
De manière basique/initiale, ça correspondrait dans chaque application à une API qui serait équivalente à la commande "import_site".
Catalogue¶
Il devient possible de transformer un Hobo en catalogue, ça pourrait simplement se faire avec un flag "publier dans le catalogue" (et une API qui listerait les applications et un combo qui afficherait ça proprement).
Chronologie¶
- les API "liste des types d'objet", "liste des objets d'un type", "dépendances d'un objet"
- en les implémentant dans une ou deux applications (typiquement w.c.s. et combo)
- l'écran de création (modèle "Application" et modèle "Élément d'une application").
- l'action "Générer l'application" (i.e. les API d'export)
- l'installation (i.e. le push vers les API "import-site")
- l'extension pas à pas à de nouveaux types d'objet
- l'exposition sous forme de catalogue
- l'évolution dans les modules pour marquer ce qui vient d'une application / n'est pas éditable / etc.
Demandes liées
Historique
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Sujet changé de "Applification" des modules (applications métiers) Publik fait avec des fiches à "Applification" des modules (applications métiers) Publik
- Description mis à jour (diff)
Mis à jour par Mikaël Ates (de retour le 29 avril) il y a plus de 2 ans
- Lié à Development #56519: Ajouter la possibilité de faire une sauvegarde de page (poser une étiquette sur une version) ajouté
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Lié à Development #60699: écrans d'assemblage et d'installation d'une application ajouté
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Lié à Development #60698: API export/import pour la création et l'installation d'applications ajouté
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Lié à Development #60773: API export/import pour la création et l'installation d'applications ajouté
Mis à jour par Frédéric Péters il y a plus d'un an
- Lié à Development #56519: Ajouter la possibilité de faire une sauvegarde de page (poser une étiquette sur une version) supprimé
Mis à jour par Mikaël Ates (de retour le 29 avril) il y a environ un an
- Statut changé de Nouveau à En cours