Skip to content

feat: 1361 fusager I give my opinion#1248

Merged
l-scherer merged 3 commits intomainfrom
feat/1361-fusager-i-give-my-opinion
Apr 3, 2026
Merged

feat: 1361 fusager I give my opinion#1248
l-scherer merged 3 commits intomainfrom
feat/1361-fusager-i-give-my-opinion

Conversation

@l-scherer
Copy link
Copy Markdown
Contributor

Ticket(s) lié(s)

1361

Description

Ajout d'un écran modal en fin de déclaration de séjour M-2 / J-8 pour permettre aux utilisateurs de donner leur avis

Screenshot / liens loom

image

Check-list

  • Ma branche est rebase sur main
  • Des tests ont été écrits pour tous les endpoints créés ou modifiés
  • Refacto "à la volée" des parties sur lesquelles j'ai codée
  • Plus de console.log
  • J'ai ajouté une validation de schéma sur la route que j'ai ajouté ou modifié
  • J'ai converti les fichiers vue en <script lang="ts">
  • Mon code est en Typescript (autant que possible)

Testing instructions

En tant qu'usager

- [x] Aller dans la liste des déclarations de séjour
- [x] Créer ou reprendre une déclaration m-2 ou J-8
- [x] Compléter et aller jusqu' à la transmission de la déclaration
- [X] Une fois avoir cliqué sur la transmission de la déclaration une nouvelle fenêtre s'affiche invitant à donner son avis
- [X] Un clique sur "je donne mon avis" ouvre un nouvel onglet
- [X] Possibilité de fermer la fenêtre modale, on est alors redirigé vers la liste des déclaration de séjours

@revu-bot revu-bot Bot requested a review from revu-bot March 31, 2026 08:20
Copy link
Copy Markdown
Collaborator

@revu-bot revu-bot left a comment

Choose a reason for hiding this comment

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

PR Review: feat/1361 — "Je donne mon avis" modal after declaration submission

This PR adds a feedback modal (via the "Je donne mon avis" service) shown after a user successfully submits a séjour declaration. The implementation is straightforward and mostly clean.

Issues Found

File Lines Severity Issue
ConfirmTransmission.vue 35 MINOR Stray target="_blank" on <img> element
ConfirmTransmission.vue 27–29 IMPORTANT Hardcoded external URL — should be a config/env variable
[[declarationId]].vue 493–496 IMPORTANT Missing blank line before canModify breaks readability; navigateTo called without await
ConfirmTransmission.vue 50–52 MINOR Hardcoded hex color #ececfe instead of a DSFR design token

Overall the feature works as described and the CSP update is correct. A few small issues need attention before merge.

Comment on lines +27 to +29
<a
href="https://jedonnemonavis.numerique.gouv.fr/Demarches/4077?button=4503"
target="_blank"
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

[IMPORTANT] Hardcoded external URLs should be driven by configuration

  • Both the survey link (https://jedonnemonavis.numerique.gouv.fr/Demarches/4077?button=4503) and the image source are hardcoded.
  • If the survey ID or button ID ever changes (e.g. for a staging vs. production environment), a code change + deployment is required.
  • The image URL is also duplicated between this component and nuxt.config.ts CSP img-src, creating a maintenance coupling.

Recommended approach: expose the URL via runtimeConfig.public (already used elsewhere in this page) so it can be overridden per environment without a code change.

// nuxt.config.ts → runtimeConfig.public
jedonnemonavisUrl: "https://jedonnemonavis.numerique.gouv.fr/Demarches/4077?button=4503",
<!-- ConfirmTransmission.vue -->
<script setup lang="ts">
const config = useRuntimeConfig();
</script>
<!-- then bind :href="config.public.jedonnemonavisUrl" -->

Comment thread packages/frontend-usagers/src/pages/demande-sejour/[[declarationId]].vue Outdated
@l-scherer l-scherer requested a review from achorein March 31, 2026 08:41
Comment thread packages/frontend-usagers/src/components/demande-sejour/ConfirmTransmission.vue Outdated
Comment thread packages/frontend-usagers/src/components/demande-sejour/ConfirmTransmission.vue Outdated
Comment thread packages/frontend-usagers/src/components/demande-sejour/ConfirmTransmission.vue Outdated
Comment thread packages/frontend-usagers/src/pages/demande-sejour/[[declarationId]].vue Outdated
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@l-scherer l-scherer temporarily deployed to build-review-auto April 3, 2026 08:46 — with GitHub Actions Inactive
@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Apr 3, 2026

@tokenbureau
Copy link
Copy Markdown

tokenbureau Bot commented Apr 3, 2026

🎉 Deployment for commit 1257088 :

Ingresses
Docker images
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/backend:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/cron:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/external-api:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/frontend-bo:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/frontend-usagers:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull harbor.fabrique.social.gouv.fr/vao/vao/migrations:sha-1257088461516d53c11dbe962056b7230f05693f
  • 📦 docker pull maildev/maildev:2.1.0
Debug

@l-scherer l-scherer merged commit b336f05 into main Apr 3, 2026
31 of 39 checks passed
@l-scherer l-scherer deleted the feat/1361-fusager-i-give-my-opinion branch April 3, 2026 09:17
achorein pushed a commit that referenced this pull request Apr 15, 2026
## Ticket(s) lié(s)
1361

## Description
Ajout d'un écran modal en fin de déclaration de séjour M-2 / J-8 pour
permettre aux utilisateurs de donner leur avis

## Screenshot / liens loom 
<img width="1024" height="542" alt="image"
src="https://github.com/user-attachments/assets/5a4d07f7-15cc-43db-922a-35dfae7f7087"
/>

## Check-list

 - [X] Ma branche est rebase sur main
- [ ] Des tests ont été écrits pour tous les endpoints créés ou modifiés
 - [X] Refacto "à la volée" des parties sur lesquelles j'ai codée
 - [X] Plus de `console.log`
- [ ] J'ai ajouté une validation de schéma sur la route que j'ai ajouté
ou modifié
 - [ ] J'ai converti les fichiers vue en `<script lang="ts">`
 - [X] Mon code est en Typescript (autant que possible)

**Testing instructions**

En tant qu'usager

    - [x] Aller dans la liste des déclarations de séjour
    - [x] Créer ou reprendre une déclaration m-2 ou J-8
    - [x] Compléter et aller jusqu' à la transmission de la déclaration
- [X] Une fois avoir cliqué sur la transmission de la déclaration une
nouvelle fenêtre s'affiche invitant à donner son avis
    - [X] Un clique sur "je donne mon avis" ouvre un nouvel onglet
- [X] Possibilité de fermer la fenêtre modale, on est alors redirigé
vers la liste des déclaration de séjours
achorein pushed a commit that referenced this pull request Apr 15, 2026
## Ticket(s) lié(s)
1361

## Description
Ajout d'un écran modal en fin de déclaration de séjour M-2 / J-8 pour
permettre aux utilisateurs de donner leur avis

## Screenshot / liens loom 
<img width="1024" height="542" alt="image"
src="https://github.com/user-attachments/assets/5a4d07f7-15cc-43db-922a-35dfae7f7087"
/>

## Check-list

 - [X] Ma branche est rebase sur main
- [ ] Des tests ont été écrits pour tous les endpoints créés ou modifiés
 - [X] Refacto "à la volée" des parties sur lesquelles j'ai codée
 - [X] Plus de `console.log`
- [ ] J'ai ajouté une validation de schéma sur la route que j'ai ajouté
ou modifié
 - [ ] J'ai converti les fichiers vue en `<script lang="ts">`
 - [X] Mon code est en Typescript (autant que possible)

**Testing instructions**

En tant qu'usager

    - [x] Aller dans la liste des déclarations de séjour
    - [x] Créer ou reprendre une déclaration m-2 ou J-8
    - [x] Compléter et aller jusqu' à la transmission de la déclaration
- [X] Une fois avoir cliqué sur la transmission de la déclaration une
nouvelle fenêtre s'affiche invitant à donner son avis
    - [X] Un clique sur "je donne mon avis" ouvre un nouvel onglet
- [X] Possibilité de fermer la fenêtre modale, on est alors redirigé
vers la liste des déclaration de séjours
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.

3 participants