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

Messagerie dossier en lecture #83

Merged
merged 14 commits into from
Oct 7, 2024
Merged

Messagerie dossier en lecture #83

merged 14 commits into from
Oct 7, 2024

Conversation

DavidBruant
Copy link
Collaborator

No description provided.

scripts/server/main.js Dismissed Show dismissed Hide dismissed
@DavidBruant DavidBruant marked this pull request as ready for review October 2, 2024 10:08
@DavidBruant DavidBruant requested a review from Ynote October 2, 2024 10:09
@DavidBruant
Copy link
Collaborator Author

Normalement, on n'est pas mal en l'état

Cette PR contient tout ce qu'il faut pour avoir la messagerie en lecture chez Pitchou :

  • la recup des données depuis DS
  • le stockage en BDD
  • la récup des données coté client et affichage

Actuellement, les contenus viennent de Démarches Simplifiées et on
leur fait confiance pour assainir le HTML, mais
-->
{@html contenu}
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

il y a un risque ouvert ici de XSS

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Je vais voir avec l'équipe de DS s'iels protègent bien contre ça

@DavidBruant
Copy link
Collaborator Author

Ah... je viens de comprendre un truc

De ce qu'on récupère de l'API DS, les messages automatisés sont en HTML (et donc copiables comme tels) et ceux écris par instructeurs/usagers sont en texte brut (notamment avec sauts de lignes en \n et pas en <br>)
Donc {@html } ça fait un affichage naze pour les messages avec \n... pff...
Je corrigerai ça

Copy link
Collaborator

@Ynote Ynote left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

La PR est ok pour moi, 1-2 mini commentaires.

Par contre, je n'ai pas réussi à la tester en local. La synchronisation des dossiers pète avec le dernier dossier qui a été crée et qui a l'air vide ? Je suis allée regarder en prod et le script lève également une erreur : https://dashboard.scalingo.com/apps/osc-fr1/especes-protegees/logs

*/
export function getDossierIdsFromDS_Ids(DS_ids, databaseConnection = directDatabaseConnection){
return databaseConnection('dossier')
.select(['id', 'id_demarches_simplifiées', 'number_demarches_simplifiées'])
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Question pour moi : c'est quoi la différence entre id_démarches_simplifiées et number_demarches_simplifiées ?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ouais, c'est une bizarrerie de DS
le number_demarches_simplifiées, c'est l'identifiant qu'on voit dans le dossier et dans l'URL dans DS (qu'on utilise nous pour créer les liens vers DS notamment)
id_démarches_simplifiées, c'est un autre identifiant (qui vaut à peu près base64("dossier-<numéroDossier>")) qui est utilisé à d'autres endroits de l'API DS, notamment pour la mutation d'annotations privées

scripts/front-end/actions/créerObjetCapDepuisURLs.js Outdated Show resolved Hide resolved
scripts/front-end/routes/DossierMessagerie.js Outdated Show resolved Hide resolved
* @param {any} _request
* @param {any} reply
*/
function sendIndexHTMLFile(_request, reply){
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍

@DavidBruant
Copy link
Collaborator Author

Oui, le script de sync était cassé parce que la question de la liste des espèces est devenue conditionnelle

#95

@DavidBruant
Copy link
Collaborator Author

C'est bon de mon côté
Je te laisse la tester en local
et tu peux merge si c'est bon pour toi

@Ynote Ynote merged commit 54b68d7 into main Oct 7, 2024
3 checks passed
Ynote added a commit that referenced this pull request Oct 12, 2024
* origin:
  "Afficher uniquement mes dossiers" (#99)
  Fix sync 2 (#97)
  Messagerie dossier en lecture (#83)
  Rendre l'outil de sync DS robuste contre le fait que la liste des espèces peut ne pas être remplie parce que question absente (#95)
Ynote added a commit that referenced this pull request Oct 15, 2024
…ne-saisie-espèce

* 'main' of github.com:betagouv/pitchou:
  Saisie données espèces protégées par liste d'espèces (#96)
  Gestion des erreurs TS sur les fichiers du dossier `outils` (#91)
  "Afficher uniquement mes dossiers" (#99)
  Fix sync 2 (#97)
  Messagerie dossier en lecture (#83)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants