From 50785a4914223108e93ccb02dc8de6bde02195d7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Andr=C3=A9?= Date: Thu, 26 Mar 2020 11:35:23 +0100 Subject: [PATCH] =?UTF-8?q?Ajout=20de=20check=20et=20messages=20d'erreur?= =?UTF-8?q?=20sur=20les=20formulaires=20de=20connexion=20et=20cr=C3=A9atio?= =?UTF-8?q?n=20d'utilisateur.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/create-user/create-user.component.html | 6 ++++++ .../src/app/create-user/create-user.component.ts | 16 ++++++++++------ .../src/app/login-user/login-user.component.html | 5 ++++- .../src/app/login-user/login-user.component.ts | 14 ++++++++++---- 4 files changed, 30 insertions(+), 11 deletions(-) diff --git a/Front/skydivelogs-app/src/app/create-user/create-user.component.html b/Front/skydivelogs-app/src/app/create-user/create-user.component.html index b62f86e..d4e5edc 100644 --- a/Front/skydivelogs-app/src/app/create-user/create-user.component.html +++ b/Front/skydivelogs-app/src/app/create-user/create-user.component.html @@ -5,6 +5,7 @@ [ngClass]="{ 'is-invalid': submitted && createCtrls.firstname.errors }" />
Firstname is required
+
Firstname must have min 3 characters
@@ -13,6 +14,7 @@ [ngClass]="{ 'is-invalid': submitted && createCtrls.lastname.errors }" />
Lastname is required
+
Lastname must have min 3 characters
@@ -21,6 +23,7 @@ [ngClass]="{ 'is-invalid': submitted && createCtrls.email.errors }" />
E-mail is required
+
It's not a e-mail
@@ -30,6 +33,7 @@ [ngClass]="{ 'is-invalid': submitted && createCtrls.username.errors }" />
Username is required
+
Username must have min 3 characters
@@ -38,6 +42,8 @@ [ngClass]="{ 'is-invalid': submitted && createCtrls.password.errors }" />
Password is required
+
The pattern of the password ([A-Za-z0-9_-] + {{ '{' }}8,15{{ '}' }})
diff --git a/Front/skydivelogs-app/src/app/create-user/create-user.component.ts b/Front/skydivelogs-app/src/app/create-user/create-user.component.ts index a0c0073..6fab172 100644 --- a/Front/skydivelogs-app/src/app/create-user/create-user.component.ts +++ b/Front/skydivelogs-app/src/app/create-user/create-user.component.ts @@ -33,11 +33,14 @@ export class CreateUserComponent implements OnInit { ngOnInit() { this.createForm = this.formBuilder.group({ - username: ["", Validators.required], - password: ["", Validators.required], - firstname: ["", Validators.required], - lastname: ["", Validators.required], - email: ["", Validators.required] + username: ["", [Validators.required, Validators.minLength(3)]], + password: [ + "", + [Validators.required, Validators.pattern("^[A-Za-z0-9_-]{8,15}$")] + ], + firstname: ["", [Validators.required, Validators.minLength(3)]], + lastname: ["", [Validators.required, Validators.minLength(3)]], + email: ["", [Validators.required, Validators.email]] }); // get return url from route parameters or default to '/' @@ -49,14 +52,15 @@ export class CreateUserComponent implements OnInit { } onCreateSubmit() { + this.loading = true; this.submitted = true; // stop here if form is invalid if (this.createForm.invalid) { + this.loading = true; return; } - this.loading = true; let createUser = new User(); createUser.login = this.createCtrls.username.value; createUser.password = this.createCtrls.password.value; diff --git a/Front/skydivelogs-app/src/app/login-user/login-user.component.html b/Front/skydivelogs-app/src/app/login-user/login-user.component.html index 700a19d..2362d58 100644 --- a/Front/skydivelogs-app/src/app/login-user/login-user.component.html +++ b/Front/skydivelogs-app/src/app/login-user/login-user.component.html @@ -5,6 +5,7 @@ [ngClass]="{ 'is-invalid': submitted && loginCtrls.username.errors }" />
Username is required
+
Username must have min 3 characters
@@ -12,7 +13,9 @@
-
Password is required
+
Password is required
+
The pattern of the password ([A-Za-z0-9_-] + {{ '{' }}8,15{{ '}' }})