mirror of
https://github.com/kmitresse/Cards-Rush.git
synced 2026-07-09 13:27:45 +00:00
feat: devweb - Make translations on forgotten and reset password pages (including mail and token)
This commit is contained in:
@@ -1,10 +1,12 @@
|
||||
<%@ page import="uppa.project.web.translation.Translator" %>
|
||||
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
|
||||
<%@taglib prefix="layout" tagdir="/WEB-INF/tags/layouts" %>
|
||||
<%@taglib prefix="component" tagdir="/WEB-INF/tags/components" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<layout:error message="Token expiré">
|
||||
<layout:error message="${translator.translate('expired_token')}">
|
||||
<a href="login" class="button is-primary is-fullwidth has-text-white">
|
||||
Retour à la page de connexion
|
||||
${translator.translate('error_token_go_to_connection_page')}
|
||||
</a>
|
||||
</layout:error>
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
<%@ page import="uppa.project.web.translation.Translator" %>
|
||||
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
|
||||
<%@taglib prefix="layout" tagdir="/WEB-INF/tags/layouts" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<layout:error message="Token invalide">
|
||||
<layout:error message="${translator.translate('invalid_token')}">
|
||||
<a href="login" class="button is-primary is-fullwidth has-text-white">
|
||||
Retour à la page de connexion
|
||||
${translator.translate('error_token_go_to_connection_page')}
|
||||
</a>
|
||||
</layout:error>
|
||||
</layout:error>
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
<%@ page import="uppa.project.web.translation.Translator" %>
|
||||
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
|
||||
<%@taglib prefix="layout" tagdir="/WEB-INF/tags/layouts" %>
|
||||
<%@taglib prefix="component" tagdir="/WEB-INF/tags/components" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<layout:form title="Mot de passe oublié">
|
||||
<layout:form title="${translator.translate('forgotten_title')}">
|
||||
<jsp:attribute name="script">
|
||||
<script defer type="module" src="${pageContext.request.contextPath}/static/js/form/forgotten-password.js"></script>
|
||||
</jsp:attribute>
|
||||
@@ -12,7 +14,7 @@
|
||||
<div class="columns is-centered">
|
||||
<div class="column is-5-tablet is-5-desktop is-5-widescreen">
|
||||
<div class="box">
|
||||
<h1 class="title has-text-centered">Mot de passe oublié ?</h1>
|
||||
<h1 class="title has-text-centered">${translator.translate('forgotten_title')}</h1>
|
||||
<form:forgotten-password/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
<%@ page import="uppa.project.web.translation.Translator" %>
|
||||
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
|
||||
<%@taglib prefix="layout" tagdir="/WEB-INF/tags/layouts" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
<%@taglib prefix="component" tagdir="/WEB-INF/tags/components" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<layout:form title="Récuperation mot de passe">
|
||||
<layout:form title="${translator.translate('reset_title')}">
|
||||
<jsp:attribute name="script">
|
||||
<script defer type="module" src="${pageContext.request.contextPath}/static/js/form/reset-password.js"></script>
|
||||
</jsp:attribute>
|
||||
@@ -12,12 +14,8 @@
|
||||
<div class="columns is-centered">
|
||||
<div class="column is-5-tablet is-5-desktop is-5-widescreen">
|
||||
<div class="box">
|
||||
<h1 class="title has-text-centered">Récupération de mot de passe</h1>
|
||||
<h1 class="title has-text-centered">${translator.translate('reset_title')}</h1>
|
||||
<form:reset-password/>
|
||||
<hr/>
|
||||
<p class="content has-text-centered">
|
||||
Déjà inscrit ? <a href="${pageContext.request.contextPath}/login">Se connecter</a>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,47 +1,18 @@
|
||||
<%@tag description="form/forgotten-password" pageEncoding="UTF-8" %>
|
||||
<%@ tag import="uppa.project.web.translation.Translator" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<form id="forgotten-password-form" action="${pageContext.request.contextPath}/forgotten-password" method="post">
|
||||
<div class="field">
|
||||
<label class="label" for="email">Email</label>
|
||||
<label class="label" for="email">${translator.translate('forgotten_title')}</label>
|
||||
<div class="control has-icons-left">
|
||||
<input id="email" name="email" placeholder="johndoe@exemple.com" class="input is-fullwidth" required/>
|
||||
<span class="icon is-small is-left">
|
||||
<i class="fas fa-envelope"></i>
|
||||
</span>
|
||||
</div>
|
||||
<div class="help">Veuillez entrer votre email pour obtenir un lien de récupération</div>
|
||||
<div class="help">${translator.translate('forgotten_email_description')}</div>
|
||||
</div>
|
||||
<input type="submit" class="button is-primary is-fullwidth has-text-white" value="Envoyer">
|
||||
<input type="submit" class="button is-primary is-fullwidth has-text-white" value="${translator.translate('forgotten_submit')}">
|
||||
</form>
|
||||
|
||||
<%--<script defer type="module">--%>
|
||||
<%-- const forgottenPasswordForm = document.querySelector("form#forgotten-password-form");--%>
|
||||
|
||||
<%-- // Champ email--%>
|
||||
<%-- const inputs = [document.querySelector("input#email")];--%>
|
||||
|
||||
<%-- // Ajout de l'écouteur d'événement sur la soumission du formulaire--%>
|
||||
<%-- forgottenPasswordForm.addEventListener("submit", onSubmit)--%>
|
||||
|
||||
<%-- /**--%>
|
||||
<%-- * Gestion de la soumission du formulaire--%>
|
||||
<%-- * @param event {Event} - Événement de soumission du formulaire--%>
|
||||
<%-- */--%>
|
||||
<%-- function onSubmit(event) {--%>
|
||||
<%-- event.preventDefault();--%>
|
||||
|
||||
<%-- const {action, method} = forgottenPasswordForm;--%>
|
||||
|
||||
<%-- const url = new URL(action);--%>
|
||||
<%-- url.searchParams.append("email", emailInput.value);--%>
|
||||
|
||||
<%-- fetch(url, {headers: {"Content-Type": "application/json"}, method})--%>
|
||||
<%-- .then(res => res.json())--%>
|
||||
<%-- .then(data => {--%>
|
||||
<%-- if (data.code !== 200) throw new Error(data.message);--%>
|
||||
<%-- })--%>
|
||||
<%-- .then(() => window.location.href = "${pageContext.request.contextPath}/login")--%>
|
||||
<%-- .catch(onError);--%>
|
||||
<%-- }--%>
|
||||
<%--</script>--%>
|
||||
|
||||
|
||||
@@ -1,23 +1,25 @@
|
||||
<%@tag description="form/register" pageEncoding="UTF-8" %>
|
||||
<%@ tag import="uppa.project.web.translation.Translator" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
|
||||
<form id="reset-password-form" action="${pageContext.request.contextPath}/reset-password" method="post">
|
||||
<input type="hidden" id="token" name="token" value="${pageContext.request.getParameter("token")}">
|
||||
<div class="field">
|
||||
<label class="label" for="password">Mot de passe</label>
|
||||
<label class="label" for="password">${translator.translate('user_password')}</label>
|
||||
<div class="control has-icons-left">
|
||||
<input id="password" name="password" type="password" class="input is-fullwidth" required>
|
||||
<input id="password" name="password" type="password" placeholder="${translator.translate('user_password')}" class="input is-fullwidth" required>
|
||||
<span class="icon is-small is-left"><i class="fas fa-lock"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="field">
|
||||
<label class="label" for="repassword">Confirmez le mot de passe</label>
|
||||
<label class="label" for="repassword">${translator.translate('user_confirm_password')}</label>
|
||||
<div class="control has-icons-left">
|
||||
<input id="repassword" name="repassword" type="password" class="input is-fullwidth" required>
|
||||
<input id="repassword" name="repassword" placeholder="${translator.translate('user_confirm_password_input')}" type="password" class="input is-fullwidth" required>
|
||||
<span class="icon is-small is-left"><i class="fas fa-lock"></i></span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<input type="submit" class="button is-primary has-text-white is-fullwidth" value="Envoyer">
|
||||
<input type="submit" class="button is-primary has-text-white is-fullwidth" value="${translator.translate('reset_submit')}">
|
||||
</form>
|
||||
|
||||
|
||||
@@ -2,10 +2,11 @@
|
||||
<%@taglib prefix="layout" tagdir="/WEB-INF/tags/layouts" %>
|
||||
<%@taglib prefix="component" tagdir="/WEB-INF/tags/components" %>
|
||||
<%@taglib prefix="form" tagdir="/WEB-INF/tags/forms" %>
|
||||
|
||||
<%@ tag import="uppa.project.web.translation.Translator" %>
|
||||
<% Translator translator = (Translator) request.getSession().getAttribute("translator"); %>
|
||||
<%@attribute name="message"%>
|
||||
|
||||
<layout:base title="Erreur">
|
||||
<layout:base title="${translator.translate('error')}">
|
||||
<component:hero>
|
||||
<div class="columns is-centered">
|
||||
<div class="column is-5-tablet is-5-desktop is-5-widescreen">
|
||||
|
||||
@@ -120,8 +120,8 @@
|
||||
"FR": "Les mots de passe ne correspondent pas"
|
||||
},
|
||||
"forgotten_title" : {
|
||||
"EN": "Forgotten password",
|
||||
"FR": "Mot de passe oublié"
|
||||
"EN": "Forgotten password ?",
|
||||
"FR": "Mot de passe oublié ?"
|
||||
},
|
||||
"forgotten_submit" : {
|
||||
"EN": "Send email",
|
||||
@@ -138,5 +138,69 @@
|
||||
"forgotten_email_description" : {
|
||||
"EN": "Enter the email address associated with your account to receive a password reset link.",
|
||||
"FR": "Entrez l'adresse email associée à votre compte pour recevoir un lien de réinitialisation de mot de passe."
|
||||
},
|
||||
"forgotten_email_object" : {
|
||||
"EN": "Reset password",
|
||||
"FR": "Réinitialiser le mot de passe"
|
||||
},
|
||||
"forgotten_email_content" : {
|
||||
"EN": "Hello,\n\nYou have requested a password reset.\nTo do this, please click on the following link: {0}/reset-password?token={1}\n\nThis link is valid for 10 minutes.\nIf you are not the origin of this request, please ignore this email.\n\nSincerely,\nThe CardRush team\n\n\n\nThis message is generated automatically, please do not reply to it.\nCardRush is the property of CardRush Corporation, 2024. All rights reserved.\nCardRush Corporation, 2024, 1 rue de la programmation web, 64000 Pau, France\nFictitious company created as part of a university project. Project authors: MITRESSÉ Kevin & VABRE Lucàs",
|
||||
"FR": "Bonjour,\n\nVous avez demandé la réinitialisation de votre mot de passe.\nPour cela, veuillez cliquer sur le lien suivant :{0}/reset-password?token={1}\n\nCe lien est valable 10 minutes.\nSi vous n'êtes pas à l'origine de cette demande, ne prenez pas compte de ce mail.\n\nCordialement,\nL'équipe CardRush\n\n\n\nCe message est généré automatiquement, merci de ne pas y répondre.\nCardRush est la propriété de CardRush Corporation, 2024. Tous droits réservés.\\nCardRush Corporation, 2024, 1 rue de la programmation web, 64000 Pau, France\nSociété fictive créée dans le cadre d'un projet universitaire. Auteurs du projet: MITRESSÉ Kevin & VABRE Lucàs"
|
||||
},
|
||||
"reset_title" : {
|
||||
"EN": "Reset password",
|
||||
"FR": "Réinitialisation du mot de passe"
|
||||
},
|
||||
"reset_submit" : {
|
||||
"EN": "Reset",
|
||||
"FR": "Réinitialiser"
|
||||
},
|
||||
"invalid_token" : {
|
||||
"EN": "Invalid token",
|
||||
"FR": "Token invalide"
|
||||
},
|
||||
"expired_token" : {
|
||||
"EN": "Expired token",
|
||||
"FR": "Token expiré"
|
||||
},
|
||||
"error_token_go_to_connection_page" :{
|
||||
"EN": "Return to the login page",
|
||||
"FR": "Retour à la page de connexion"
|
||||
},
|
||||
"error" : {
|
||||
"EN": "Error",
|
||||
"FR": "Erreur"
|
||||
},
|
||||
|
||||
"reset_success" : {
|
||||
"EN": "Password reset successfully",
|
||||
"FR": "Mot de passe réinitialisé avec succès"
|
||||
},
|
||||
"reset_password" : {
|
||||
"EN": "New password",
|
||||
"FR": "Nouveau mot de passe"
|
||||
},
|
||||
"reset_confirm_password" : {
|
||||
"EN": "Confirm new password",
|
||||
"FR": "Confirmer le nouveau mot de passe"
|
||||
},
|
||||
"reset_password_description" : {
|
||||
"EN": "Enter your new password",
|
||||
"FR": "Entrez votre nouveau mot de passe"
|
||||
},
|
||||
"reset_error_password" : {
|
||||
"EN": "Passwords do not match",
|
||||
"FR": "Les mots de passe ne correspondent pas"
|
||||
},
|
||||
"profile_title" : {
|
||||
"EN": "Profile",
|
||||
"FR": "Profil"
|
||||
},
|
||||
"profile_edit" : {
|
||||
"EN": "Edit",
|
||||
"FR": "Modifier"
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user