Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Le type et le statut ne s'affichent pas dans le Edit (orgas, projets...) #193

Closed
fluidlog opened this issue Aug 5, 2024 · 8 comments
Closed
Labels
bug Something isn't working

Comments

@fluidlog
Copy link
Contributor

fluidlog commented Aug 5, 2024

Décrivez le bug
Il est possible d'affecter un type et un statut à une organisation

image

Mais lorsqu'on revient dessus, l'input n'affiche pas ce qui a été retenu.
image

Au niveau du show, ça fonctionne.
image

Etapes pour reproduire

  1. Aller sur https://archipel.assemblee-virtuelle.org/
  2. Editez l'organisation Assemblée virtuelle par exemple
  3. observer que la value des input est vide
@fluidlog fluidlog added the bug Something isn't working label Aug 5, 2024
@mguihal
Copy link
Collaborator

mguihal commented Aug 6, 2024

https://archipel.assemblee-virtuelle.org/ n'a pas été mis-à-jour sur les dernières versions d'Archipelago.

As-tu observé également ce bug sur un Archipelago à jour ?

@fluidlog
Copy link
Contributor Author

fluidlog commented Aug 7, 2024

Je viens de tester sur le serveur du low-tech lab (en v2.1.0)
https://archipel.lowtechlab.org/Organization/https%3A%2F%2Fdata.archipel.lowtechlab.org%2Forganizations%2Flow-tech-lab

Dans le show
image

Dans le edit
image

Attention : le problème apparait partout où on utilise le statut et le type (projet par exemple). Je modifie donc le titre.

@fluidlog fluidlog changed the title Le type et le statut ne s'affichent pas dans le Edit des organisations Le type et le statut ne s'affichent pas dans le Edit (orgas, projets...) Aug 7, 2024
@SlyRock
Copy link

SlyRock commented Sep 3, 2024

on à des ReferenceInput du package @semapps/input-components pour le statut et le type.

Le backend renvoie la donnée référencée sous forme de tableau et le composant ne gère pas ce cas.

Il semble que ce comportement soit apparu récemment…

Le composant en question est une surcharge du composant react-admin du même nom, qui introduit une fonction de formatage pour gérer des références sous formes d'objet et en extraire l'id.
Le cas de la donnée sous forme d'id dans un tableau n'est pas pris en compte…

@SlyRock
Copy link

SlyRock commented Sep 3, 2024

A débattre :
Faut-il intervenir au niveau du dataProvider pour scalariser la donnée dès son extraction du backend (et la remettre en tableau à sa sortie) ou bien faut-il simplement traiter ce cas dans la fonction de formatage ?

@SlyRock
Copy link

SlyRock commented Sep 3, 2024

Pour reproduire au plus simple :
Dans une instance Archipelago :

  1. Créer un type de la classe OrganizationType
  2. Créer une Organization et lui affecter ce type

Lorsque l'on vient editer l'organization l'input n'est pas peuplé et on a un message d'erreur dans la console qui dit que la valeur est undefined

@SlyRock
Copy link

SlyRock commented Sep 3, 2024

Proposition de code pour la fonction format si on souhaite traiter le problème au niveau front :
src/frontend/packages/input-components/src/ReferenceInput.js

const format = (value) => {
  // If there is no value return an empty string
  if (!value) return '';
  // If the value is an array extract first entry
  if (Array.isArray(value)){
    value = value[0];
  }
  // If the value is an object with an @id field, return the uri
 return typeof value === 'object' ? value.id || value['@id'] : value;
};

@mguihal
Copy link
Collaborator

mguihal commented Oct 5, 2024

Je propose cette solution #196

J'ai testé amplement les fonctionnalités et je n'ai pas compris dans quel cas on se retrouvait avec une référence sous forme d'objet...

@mguihal mguihal closed this as completed Oct 7, 2024
@fluidlog
Copy link
Contributor Author

fluidlog commented Oct 30, 2024

Depuis la mise à jour de l'Archipelago de l'AV en 2.2.1 intégrant cette #196 , je constate que les types et les statuts s'affichent bien du premier coup :
image

Du côté du Low-tech Lab (aussi passé en 2.2.1) : https://archipel.lowtechlab.org/
Si on édite, par exemple, la fiche de l'AV, le premier affichage ne fonctionne pas :
image

Mais si je fais un "ctrl + F5", alors ça s'affiche bien.
image

@mguihal / @SlyRock : ça vous dit qu'on analyse ça ensemble ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants