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

Connexion: Nouveau parcours pour les candidats [GEN-2012] #5288

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

calummackervoy
Copy link
Contributor

@calummackervoy calummackervoy commented Dec 18, 2024

🤔 Pourquoi ?

Nous rencontrons des difficultés avec les candidats qui sont plusieurs à se partager la même adresse email. Dans un nouveau parcours, l'utilisateur soumet son adresse mail avant d'être rédirigé à la mode de connexion associé à son compte. Les changements visuels correspondent à la maquette rattachée au ticket.

🚨 À vérifier

  • Mettre à jour le CHANGELOG_breaking_changes.md ?

💻 Captures d'écran

Screenshot 2024-12-18 at 10 03 28 Screenshot 2024-12-18 at 11 22 06 Screenshot 2024-12-18 at 10 13 04

@calummackervoy calummackervoy added 1-recette-jetable [Payé à l’heure] Crée une recette jetable sur CC ajouté Ajouté dans le changelog. labels Dec 18, 2024
@calummackervoy calummackervoy self-assigned this Dec 18, 2024
Copy link

🥁 La recette jetable est prête ! 👉 Je veux tester cette PR !

A new process in which the user submits their email address and is redirected to the correct login method instead of being depended on to choose which service they use to connect. Includes also a graphical redesign, and some redirection options to the registration process
@calummackervoy calummackervoy force-pushed the calum/refonte-parcours-connexion branch from 06b789a to 94fc5da Compare December 18, 2024 11:09
@calummackervoy calummackervoy marked this pull request as ready for review December 18, 2024 11:09
@calummackervoy
Copy link
Contributor Author

calummackervoy commented Dec 18, 2024

Un truc qui peut gêner les utilisateurs est q'une fois que l'utilisateur Django a soumis son adresse mail dans la formulaire :

Screenshot 2024-12-18 at 12 16 47

Ils devront la remettre sous la forme suivante :

Screenshot 2024-12-18 at 12 18 06

Vu qu'il y a des parcours (conflit de nom - date de naissance pendant l'inscription) qui rédirige l'utilisateur à cette vue où on ne veut pas divulguer l'adresse mail, je pense que c'est correct qu'on ne l'affiche pas dans la formulaire. Par contre, on pourrait resoudre ce problème avec un clé dans la session, ou avec JavaScript. Qu'est-ce que vous pensez ?

@tonial
Copy link
Contributor

tonial commented Dec 19, 2024

Tu pourrais juste le gérer avec un query params non ?

On pourrait éventuellement verrouiller le champs email quand il est pré-rempli pour forcer à retourner à la page précédente si on veut changer d'adresse email.
Mais en vrai ce n'est pas très gênant parce que si on fait une coquille et que quand on corrige sur la page suivante ça correspond à un compte France Connect, on va avoir une erreur.

@calummackervoy
Copy link
Contributor Author

calummackervoy commented Dec 19, 2024

@tonial le pb est qu'un utilisateur peut tomber sur cette page en cliquant sur un lien depuis une modale comme celui-ci :

390400270-55071839-16ec-430a-9bfb-dd5e0abe3c53

On ne veut pas que l'utilisateur peut déanonymiser l'email si on reçoit ?knowsEmail=true

Ce ne fait pas actuellement partie des dessins donc on pourrait décider de juste forcer l'utilisateur à remettre l'email sur le seconde écran, mais je me suis démandé s'il vaut l'utilisation d'un clé dans la session ou du JS ?

@@ -1,6 +1,9 @@
{# django-allauth template override. #}
{% extends "layout/base.html" %}
{% load static %}
{% load django_bootstrap5 %}
{% load redirection_fields %}
{% load buttons_form %}
Copy link
Contributor

Choose a reason for hiding this comment

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

🔡

</p>
<p>
FranceConnect est la solution proposée par l’État pour sécuriser et simplifier la connexion à vos services en ligne.
</p>
Copy link
Contributor

Choose a reason for hiding this comment

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

J'ai l'impression qu'une partie de mise à jour de wording (et d'image) pourrait facilement être sortie dans un commit séparé (voir même une PR ?) .

{% bootstrap_field form.email wrapper_class="form-group mb-0" show_label=False %}
<div class="form-text mb-3">
<div class="text-end mt-1">
<a href="#" class="fs-sm text-secondary" data-bs-toggle="modal" data-bs-target="#no-email-modal">Pas d'adresse e-mail ?</a>
Copy link
Contributor

Choose a reason for hiding this comment

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

Pour contrôler une modale, plutôt utiliser un <button type="button">

@@ -0,0 +1,19 @@
{% load static %}
{% load theme_inclusion %}
{% load django_bootstrap5 %}
Copy link
Contributor

Choose a reason for hiding this comment

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

🔤

@@ -196,7 +196,6 @@ def __init__(self, prior_cleaned_data, *args, **kwargs):
self.fields["birthdate"].initial = prior_cleaned_data.get("birthdate")
self.fields["nir"].initial = prior_cleaned_data.get("nir")

# self.fields["password1"].help_text = CnilCompositionPasswordValidator().get_help_text()
Copy link
Contributor

Choose a reason for hiding this comment

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

👀

Comment on lines +28 to +29
def __init__(self, *args, **kwargs):
self.request = kwargs.pop("request", None)
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
def __init__(self, *args, **kwargs):
self.request = kwargs.pop("request", None)
def __init__(self, *args, *, request=None, **kwargs):
self.request = request

),
extra_tags="modal login_failure email_does_not_exist",
)
raise ValidationError("Cette adresse e-mail est inconnue. Veuillez soumettre une autre, ou vous inscrire.")
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
raise ValidationError("Cette adresse e-mail est inconnue. Veuillez soumettre une autre, ou vous inscrire.")
raise ValidationError("Cette adresse e-mail est inconnue. Veuillez en saisir une autre, ou vous inscrire.")

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1-recette-jetable [Payé à l’heure] Crée une recette jetable sur CC ajouté Ajouté dans le changelog.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants