Inscription: Refonte de parcours pour les candidats [GEN-1569]#4991
Conversation
| <b>Ou utilisez votre adresse e-mail</b> | ||
| </div> | ||
|
|
||
| <form method="post" action="{% url 'signup:job_seeker' %}" role="form" class="js-prevent-multiple-submit" data-matomo-name="signup-job-seeker-identity"> |
There was a problem hiding this comment.
Je veux souligner que j'ai enlevé la classe js-prevent-multiple-submit ici - afin de ne pas empêcher les utilisateurs de retourner et changer leurs informations une fois après avoir continuer à l'étape suivante
f3a01d8 to
7ac6280
Compare
|
@calummackervoy j'ai pushé un commit de correction UI. Les modifications UI ont été validées par @AntoinePoindron |
bae8624 to
73193a4
Compare
73193a4 to
f0b3f2f
Compare
f0b3f2f to
9e884e3
Compare
| white-space: nowrap !important; | ||
| } | ||
|
|
||
| /* Override itou-theme on some forms */ |
There was a problem hiding this comment.
Est-ce encore utile ? Pas moyen de mettre une classe utilitaire à la place ?
There was a problem hiding this comment.
La classe form-checkbox-greater-spacing est une classe utilitaire que j'ai ajouté. J'ai enlevé le commentaire /* Override itou-theme on some forms */
|
Après vérification, quand un candidat change son adresse email, on ne crée par d'objet EmailAddress donc le cas de figure n'est pas possibe. LGTM Par contre, c'est un soucis, et il faudrait le corriger, à remonter au métier |
9e884e3 to
a0475b5
Compare
|
🥁 La recette jetable est prête ! 👉 Je veux tester cette PR ! |
| {% bootstrap_field form.password1 %} | ||
| {% bootstrap_field form.password2 wrapper_class="form-group mb-0" %} | ||
| <div class="form-text mb-0"> | ||
| Vous pourrez créer et modifier des informations telles que votre adresse ou un lien vers un CV après votre inscription, à partir de votre tableau de bord. |
There was a problem hiding this comment.
Je sais que c'est le texte existant mais a priori la partie sur le lien vers le CV n'est plus d'actualité depuis quelques années ?
There was a problem hiding this comment.
| Vous pourrez créer et modifier des informations telles que votre adresse ou un lien vers un CV après votre inscription, à partir de votre tableau de bord. | |
| Vous pouvez modifier ces informations après vous être inscrit, à partir de votre tableau de bord. |
Il y a un lien depuis le tableau de bord vers une service qui permet à téléverser le CV, mais j'imagine on a pas besoin du prédire ici ?
| request = None # View request optional (used for creating error modals to manage identity conflicts) | ||
| _nir_submitted = None | ||
| _email_submitted = None |
There was a problem hiding this comment.
Pourquoi les définir sur la classe et non sur l'instance dans __init__ ?
There was a problem hiding this comment.
C'est peut-être l'influence des autres langues mais je le trouve plus explicite ?
a0475b5 to
fce6458
Compare
3596eb3 to
28e5350
Compare
| and User.objects.filter( | ||
| kind=UserKind.JOB_SEEKER, | ||
| jobseeker_profile__birthdate=cleaned_data["birthdate"], | ||
| jobseeker_profile__nir="", |
There was a problem hiding this comment.
Pourquoi ignorer ceux avec un NIR ?
There was a problem hiding this comment.
Je viens d'avoir le même retour du métier, je l'enlèverai 😅 au début c'était pour cibler le cas donné dans le ticket en limitant la possibilité que deux Jean-Paul Sartre 21/06/1905 légitimement distincts vont se tomber sur la modale
There was a problem hiding this comment.
Ah bah en fait je pense que j'ai bien lu le Figma pour ce cas, j'attends le métier pour voir si on va ajouter un cas pour les noms matchant sans NIR
Tu peux essayer de t'inscrire sur https://c1-review-calum-refonte-parcours-inscription.cleverapps.io/signup/
|
|
@xavfernandez oui il y a un utilisateur inscrit avec cette adresse mail Si j'utilise une autre adresse c'est la bonne modale qui est affichée sur la page :
|
|
Je sais c'est moi qui l'ai créé 😅 Mais du coup, si tu rentres 2 fois les mêmes infos sans donner de nir tu as le message "Un compte existe déjà avec un NIR différent" |
|
Ahh maintenant je vois ! Difficile à percevoir avec le grand dessins des flows 🙈 c'est un bug oui la message d'erreur devrait être |
b7c19f5 to
b71939f
Compare
b71939f to
44e9f9c
Compare
|
🥁 La recette jetable est prête ! 👉 Je veux tester cette PR ! |
d89a2e7 to
6936d17
Compare
6936d17 to
d72039d
Compare
d72039d to
7b00594
Compare
Redesign JobSeeker signup process Improve error behavior on NIR or email conflict Provide detailed error information to the user, and provide them the opportunity to login with the existing account or continue their registration with new details Add some logic to redirect users mid-registration during deployment Fix form submission prevention when returning to change information Fix test fix: ui adjustments Refactor registration modal content to use title element The new solution is a simple approach to addressing accessibility and styling concerns with the previous solution Remove custom title for job_seeker_situation.html during job-seeker signup process For consistency with the other steps in the process Fix grammar in SSO email conflict modal Temporary legacy support during NIR initialization (SSO signup) Support for users midway through the signup process when the new code is deployed Following SSO signup, clean the session keys Code cleanliness improvements in JobSeekerSignupConflictModalResolver Simplify session key test assertions Add comment for clarifying role of JobSeekerSignupConflictModalResolver Remove typo from previous commit Remove stray TODO and update modal content around password reset link Remove now unused variable from JobSeekerSignupConflictModalResolver logic Extend TestJobSeekerSignup tests Adds a test for unverified EmailAddress (django-allauth) and a condition for the presence of a link to existing user login Remove unnecessary comment and whitespace from itou.css Fix alignment on jobseeker signup views (CSS) Remove login_reminder.html and move into template where it's used Fix typo in comment Rename form class to follow convention Replace no_email_link.html text in JobSeekerSignup form To bring the template closer to the designs Fix typo in signup form Update snapshot for fixed typo Update signup prompt text to be shorter and up-to-date Refactor use of lambas in JobSeekerSignupConflictModalResolver simplify code Fix styling on login_reminder Fix other differences with the original designs Replace job_seeker_signup logo PNG with SVG Revert "Replace job_seeker_signup logo PNG with SVG" This reverts commit e9e9f5b. Added extra tests for temporary NIR cases Detect conflict on name fields when temporary NIR is in use Fix gramatical error in modal content Tweak support URL destinations in error modals Fix impossible to continue on multiple errors and temporary NIR Fix wording on email conflict modal Fix quality Allow users to re-submit NIR if it's invalid Fix pipeline Fix modal grammar Birth date/name conflict does apply when NIR is defined on the account Shorthand solution for QueryDict mutability workaround Matching everything except a temporary NIR is now considered a complete match Additional modal for name/birth fields Fix subtle differences in color on signup views Update snapshots for job seeker signup Change dismiss_text of error modal depending on tentative success of registration Display submitted data and add ability to return from the registration page Restyle signup modals and final form Reinstate ITOU_SESSION_NIR_KEY constant with a TODO
7b00594 to
4567b8f
Compare
Suspect IssuesThis pull request was deployed and Sentry observed the following issues:
Did you find this useful? React with a 👍 or 👎 |





🤔 Pourquoi ?
Nous rencontrons des difficultés avec les candidats qui sont plusieurs à se partager la même adresse email.
Example : Un candidat peut s’inscrire avec un compte Pe connect et son épouse utiliser un compte France connect qui utilise le même email , des données sont écrasées à tort , on ne sait plus à qui appartient le compte ni qui est légitime à conserver ses données dessus.
🍰 Comment ?
Dans cette contexte on a dessiné un nouveau parcours d'inscription, pour améliorer l'UX autours des comptes existants. Dans cette PR :
JobSeekerSignupConflictModalResolver) qui encache la complexité du dev du formulaire.signup:job_seeker_nir. Similairement, j'ai ajouté un redirect temporaire qui invalide un parcours d'inscription démarré si le cléITOU_SESSION_NIR_KEYexiste dans la session (clé autrement enlevé par ce PR)🚨 À vérifier
💻 Captures d'écran
Utilisateur non-existant :
Utilisateur existant :
Erreur affiché dans le cas où je retourne à inscription :