Development #58800
"contenu d'une fiche", séparer contenu & mode d'affichage
0%
Description
On a une zone de sélection unique pour définir à la fois le contenu et sa représentation (libellé / libellé & valeur / valeur / titre / custom); il faudrait séparer les deux.
Contenu : libellé / libellé & valeur / valeur / custom
Mode d'affichage, serait variable selon le type de champs : texte standard, titre, sous-titre, lien, vignette (pour les champs fichier), etc.
Fichiers
Demandes liées
Révisions associées
wcs: split content and display_mode in card custom schema form (#58800)
wcs: adapt card display with new schema (#58800)
Historique
Mis à jour par Mikaël Ates il y a plus de 2 ans
- Lié à Development #58840: Améliorations sur la cellule « Contenu d'une fiche » ajouté
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
Suite à l'échange avec Laureline, on a fait un focus sur cet aspect de l'évolution de la cellule fiche avec un point de mire la possibilité d'ajouter de nouveaux types de contenus.
Une première proposition est donc d'avoir un premier select qui liste les différents types de contenu possibles, qui afficheraient chacun un formulaire specifique.
Type de contenu ▼ |
---|
Champ de la fiche |
Text custom |
lien |
Image |
… |
Si type de contenu "Champ de la fiche"
Champs de la fiche ▼ |
---|
champ 1 |
champ 2 |
champ 3 |
… |
Contenu du champ ▼ |
---|
Label |
valeur |
label + valeur |
Si contenu du champ valeur || label
Mode d'Affichage ▼ |
---|
Titre |
Sous-titre |
Texte |
Si type de contenu "text custom"
Textarea gabarit |
---|
Mode d'Affichage ▼ |
---|
Titre |
Sous-titre |
Texte |
Si type de contenu "lien"
Inputs liens |
---|
label (gabarit) |
url (gabarit) |
(?) target |
Mode d'Affichage ▼ |
---|
Lien |
bouton |
Une autre solution évoquée serait de faire évoluer le champ "gabarit" existant à l'aide de Godo, en lui ajoutant les possibilités d'ajouter des liens / boutons.
Mis à jour par Frédéric Péters il y a plus de 2 ans
Comment places-tu "vignette (pour les champs fichier)" dans cette proposition ? via le choix "champ de la fiche", dans "mode d'affichage" dans certaines circonstances, ou via le choix "image" puis une sélection similaire à "champ de la fiche" mais avec uniquement les champs de type fichier ? ou autre chose ?
Mis à jour par Lauréline Guérin il y a plus de 2 ans
A la place d'un type de contenu "image", je mettrais plutôt un type "fichier"
Ensuite, lorsque "fichier" est sélectionné, possibilité de choisir un champ de type fichier de la fiche (select "champ de la fiche" mais filtré sur les types de champ)
Et en mode d'affichage: vignette, lien de téléchargement, avec un fallback du mode vignette sur un mode lien de téléchargement si le content_type de la fiche ne correspond pas à une image
Mis à jour par Lauréline Guérin il y a plus de 2 ans
(pourquoi on n'a pas plutôt choisi de rajouter une option "vignette" au select "mode d'affichage", lorsqu'on édite un champ de type fichier ? Je ne me souviens plus très bien de la réflexion qu'on a eue)
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a plus de 2 ans
Dans la discussion, on évoqué la question s'il était possible de filtrer les images des autres fichiers.
(je me souviens que tu m'avais dit non, pourtant, j'ai l'info `document_type.mimetype` dans le schema qui pourrait faire le job ?)
Si c'est possible, il serait alors possible d'avoir une entrée image dans les types de contenus, et de lister les fichiers de type image présent dans le modèle de fiche et de proposer des options d'affichage et de taille specifiques aux images.
Idem pour les autres fichiers, même si pour le moment je ne vois pas de cas d'usage autre que des liens/boutons.
Mis à jour par Lauréline Guérin il y a plus de 2 ans
ok, dans un premier temps je vais modifier tout ça sans rajouter de fonctionnalités (juste un split contenu/mode d'affichage, en reprenant ce qui a été dit), puis on fera des tickets pour faire des ajouts (genre sous-titre, link/bouton, vignette, etc)
(note: pour les fichiers, on peut avoir un document_type
vide)
Mis à jour par Lauréline Guérin il y a plus de 2 ans
- Fichier 0003-wcs-adapt-card-display-with-new-schema-58800.patch 0003-wcs-adapt-card-display-with-new-schema-58800.patch ajouté
- Fichier 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch ajouté
- Fichier 0001-wcs-method-to-get-migrated-custom_schema-58800.patch 0001-wcs-method-to-get-migrated-custom_schema-58800.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Lauréline Guérin il y a plus de 2 ans
Mis à jour par Lauréline Guérin il y a plus de 2 ans
- Fichier 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch ajouté
(update: dans le visuel du schéma, pour un type de contenu "champ de la fiche", ne pas afficher le mode d'affichage si le type de contenu sélectionné est "label et valeur", puisque dans ce cas le select "mode d'affichage" est masqué)
Mis à jour par Lauréline Guérin il y a plus de 2 ans
Notes:
0002: On avait discuté avec thomasj de faire des ensembles de champs dédiés à un type d'entrée, plutôt que ce que j'avais fait pour les champs custom (c'est à dire enlever l'option "label et value" du select "mode d'affichage" et la remettre pour un champ de la fiche)
0002: J'ai repris le bout de js wcs qui affiche les champs en fonction de la valeur d'autres champs (mais le mieux serait de l'exporter dans gadjo et le rendre dispo à toutes les apps)
(mais j'ai un cas où un champ dépend d'un champ qui dépend d'un autre champ, celui-là je l'ai géré à la main)
0001: Au lieu de faire une data migration, j'ai fait une méthode qui renvoie le schema reformaté correctement, mais ça se discute
0003: Adaptation du template pour gérer le nouveau format du custom schema
Pas d'ajout de feature sur ce dev, juste de la réorganisation, pour préparer le terrain pour les autres évolutions (ajout du display sous-titre, ajout d'un bouton, etc)
Mis à jour par Lauréline Guérin il y a plus de 2 ans
- Fichier 0003-wcs-adapt-card-display-with-new-schema-58800.patch 0003-wcs-adapt-card-display-with-new-schema-58800.patch ajouté
- Fichier 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch 0002-wcs-split-content-and-display_mode-in-card-custom-sc.patch ajouté
- Fichier 0001-wcs-method-to-get-migrated-custom_schema-58800.patch 0001-wcs-method-to-get-migrated-custom_schema-58800.patch ajouté
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Solution proposée à Solution validée
Pas tout à fait à l'aise sur la partie javascript de 0002, particulièrement sur des structures qui sont de longs tuples,
this.grid_cell_form.entry_type = this.grid_cell_form[0]; this.grid_cell_form.field_varname= this.grid_cell_form[1]; this.grid_cell_form.field_content = this.grid_cell_form[2]; this.grid_cell_form.field_display_mode = this.grid_cell_form[3]; this.grid_cell_form.custom_template = this.grid_cell_form[4]; this.grid_cell_form.custom_display_mode = this.grid_cell_form[5]; this.grid_cell_form.size = this.grid_cell_form[6];
où je me perds un peu dans quoi contient quoi quand comment mais c'était déjà clairement le cas dans le code actuel :/ C'est quelque chose qui sera à voir avec ThomasJ à son retour, ce code gagnerait sans doute à avoir des commentaires de fond sur la structure et la relation au balisage.
En attendant avançons ainsi.
Mis à jour par Lauréline Guérin il y a plus de 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 980fafe428380a40d772e362be0d0dbfe51fde52 Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Thu Jan 6 16:22:45 2022 +0100 wcs: adapt card display with new schema (#58800) commit 3af712446ab2b2b953b25461b35d96123fe8582c Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Thu Jan 6 14:58:48 2022 +0100 wcs: split content and display_mode in card custom schema form (#58800) commit 223a9390cba7dc8595dc5ee3c6f6ed72e8f201cf Author: Lauréline Guérin <zebuline@entrouvert.com> Date: Tue Jan 4 16:03:49 2022 +0100 wcs: method to get migrated custom_schema (#58800)
Mis à jour par Frédéric Péters il y a plus de 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
Mis à jour par Thomas Jund (congés, retour le 29/04) il y a environ 2 ans
- Lié à Development #61022: cell fiche : dynamic_fields sur le parent/group directement ajouté
wcs: method to get migrated custom_schema (#58800)