summaryrefslogtreecommitdiff
path: root/Static/Js/register.js
diff options
context:
space:
mode:
authorDebulois <quentin@debulois.fr>2022-04-10 21:25:00 +0200
committerDebulois <quentin@debulois.fr>2022-04-10 21:25:00 +0200
commit2923e6fca634231533cca11e43a9091344ff4ba5 (patch)
tree7181e1b0e26ddb072530adec7d55f77e9e389783 /Static/Js/register.js
parent9939f74c0b274ee916f742a45a32d3c843e0960b (diff)
Ajout d'un système de notification pour alerter les pro et finition
Diffstat (limited to 'Static/Js/register.js')
-rw-r--r--Static/Js/register.js64
1 files changed, 45 insertions, 19 deletions
diff --git a/Static/Js/register.js b/Static/Js/register.js
index c751b77..b22f4de 100644
--- a/Static/Js/register.js
+++ b/Static/Js/register.js
@@ -5,12 +5,38 @@
// # #
// ############################################################################
-// Regex pour vérifier la validité du mdp
-const numb = new RegExp(/[0-9]/)
-const upper = new RegExp(/[A-Z]/)
-const special = new RegExp(/[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~µ°€£]/)
-function is_valid(condition, element) {
+// Num - N'importe quel chiffre entre 0 et 9 [0-9]
+// Upper - N'importe quel lettre majuscule entre A et Z [A-Z]
+// Spe - N'importe quel symbole présent entre les deux brackets [`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~µ°€£]
+// Email - ^ -> Debut de la ligne obligatoire, doit contenir entre premiers brackets "[a-z]" "[0-9]" ou _, -, .
+// Ensuite il doit y avoir un @ et une suite de charcactère sans charactère speciaux "+@[a-zA-Z0-9-]"
+// et pour finir l'extension "+.[a-z]", "+$" pour la fin de la ligne.
+const regNum = new RegExp(/[0-9]/);
+const regUpper = new RegExp(/[A-Z]/);
+const regSpecial = new RegExp(/[`!@#$%^&*()_+\-=\[\]{};':"\\|,.<>\/?~µ°€£]/);
+const regEmail = new RegExp(/^[a-z0-9._-]+@[a-z0-9-]+.[a-z]+$/)
+
+// Initialisation des variables
+let validEmail;
+let validNumb;
+let validUpper;
+let validSpecial;
+let validLength;
+
+function valid_all() {
+ let submitButton = document.getElementById("submit");
+ // Si tout est validé on active le button sumbit
+ if (validLength && validUpper && validNumb && validSpecial && validEmail) {
+ submitButton.classList.remove("deactivate");
+ submitButton.disabled = false;
+ } else {
+ submitButton.classList.add("deactivate");
+ submitButton.disabled = true;
+ }
+}
+
+function valid_reg(condition, element) {
// Si la regex est bonne on selectionne la class css pour l'afficher
if (condition) {
document.getElementById(element).classList.remove("invalid");
@@ -23,21 +49,21 @@ function is_valid(condition, element) {
}
}
+function check_email() {
+ // On récupère l'email par id dans la page et on test notre regex
+ let email = document.getElementById("email").value;
+ validEmail = valid_reg(regEmail.test(email), "mailNotice");
+
+ valid_all();
+}
+
function check_pass() {
- // On récupère les éléments dans la page et on test nos regex sur le mdp
+ // On récupère la valeur par id du mdp dans la page et on test nos regex
let pass = document.getElementById("password").value;
- let submitButton = document.getElementById("submit");
- let validNumb = is_valid(numb.test(pass), "passNumb");
- let validUpper = is_valid(upper.test(pass), "passUpper");
- let validSpecial = is_valid(special.test(pass), "passSpecial");
- let validLength = is_valid((pass.length >= 8), "passLength");
+ validNumb = valid_reg(regNum.test(pass), "passNumb");
+ validUpper = valid_reg(regUpper.test(pass), "passUpper");
+ validSpecial = valid_reg(regSpecial.test(pass), "passSpecial");
+ validLength = valid_reg((pass.length >= 8), "passLength");
- // Si tout est validé on active le button sumbit
- if (validLength && validUpper && validNumb && validSpecial) {
- submitButton.classList.remove("deactivate");
- submitButton.disabled = false;
- } else {
- submitButton.classList.add("deactivate");
- submitButton.disabled = true;
- }
+ valid_all();
} \ No newline at end of file