Style sur le login

This commit is contained in:
Sébastien André
2020-04-01 09:57:27 +02:00
parent f9bf316a36
commit 2034552256
5 changed files with 123 additions and 76 deletions

View File

@@ -1,53 +1,52 @@
<form [formGroup]="createForm" (ngSubmit)="onCreateSubmit()">
<div class="form-group">
<label for="firstname">Firstname</label>
<input type="text" formControlName="firstname" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.firstname.errors }" />
<div *ngIf="submitted && formCtrls.firstname.errors" class="invalid-feedback">
<div *ngIf="formCtrls.firstname.errors.required">Firstname is required</div>
<div *ngIf="formCtrls.firstname.errors.minlength">Firstname must have min 3 characters</div>
</div>
</div>
<div class="form-group">
<label for="lastname">Lastname</label>
<input type="text" formControlName="lastname" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.lastname.errors }" />
<div *ngIf="submitted && formCtrls.lastname.errors" class="invalid-feedback">
<div *ngIf="formCtrls.lastname.errors.required">Lastname is required</div>
<div *ngIf="formCtrls.lastname.errors.minlength">Lastname must have min 3 characters</div>
</div>
</div>
<div class="form-group">
<label for="email">E-mail</label>
<input type="text" formControlName="email" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.email.errors }" />
<div *ngIf="submitted && formCtrls.email.errors" class="invalid-feedback">
<div *ngIf="formCtrls.email.errors.required">E-mail is required</div>
<div *ngIf="formCtrls.email.errors.email">It's not a e-mail</div>
</div>
</div>
<p>
<mat-form-field>
<mat-label>Firstname</mat-label>
<input matInput type="text" formControlName="firstname"
[ngClass]="{ 'is-invalid': submitted && formCtrls.firstname.errors }" />
<mat-error *ngIf="formCtrls.firstname.hasError('required')">Firstname is required</mat-error>
<mat-error *ngIf="formCtrls.firstname.hasError('minlength')">Firstname must have min 3 characters</mat-error>
</mat-form-field>
</p>
<p>
<mat-form-field>
<mat-label>Lastname</mat-label>
<input matInput type="text" formControlName="lastname"
[ngClass]="{ 'is-invalid': submitted && formCtrls.lastname.errors }" />
<mat-error *ngIf="formCtrls.lastname.hasError('required')">Lastname is required</mat-error>
<mat-error *ngIf="formCtrls.lastname.hasError('minlength')">Lastname must have min 3 characters</mat-error>
</mat-form-field>
</p>
<p>
<mat-form-field>
<mat-label>E-mail</mat-label>
<input matInput type="email" formControlName="email"
[ngClass]="{ 'is-invalid': submitted && formCtrls.email.errors }" />
<mat-error *ngIf="formCtrls.email.hasError('required')">E-mail is required</mat-error>
<mat-error *ngIf="formCtrls.email.hasError('email')">It's not a e-mail</mat-error>
</mat-form-field>
</p>
<p>
<mat-form-field>
<mat-label>Username</mat-label>
<input matInput type="text" formControlName="username"
[ngClass]="{ 'is-invalid': submitted && formCtrls.username.errors }" />
<mat-error *ngIf="formCtrls.username.hasError('required')">Username is required</mat-error>
<mat-error *ngIf="formCtrls.username.hasError('minlength')">Username must have min 3 characters</mat-error>
</mat-form-field>
</p>
<p>
<mat-form-field>
<mat-label>Password</mat-label>
<input matInput type="password" formControlName="password"
[ngClass]="{ 'is-invalid': submitted && formCtrls.password.errors }" />
<mat-error *ngIf="formCtrls.password.hasError('required')">Password is required</mat-error>
<mat-error *ngIf="formCtrls.password.hasError('pattern')">The pattern of the password ([A-Za-z0-9_-]
{{ '{' }}8,15{{ '}' }})</mat-error>
</mat-form-field>
</p>
<div class="form-group">
<label for="username">Username</label>
<input type="text" formControlName="username" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.username.errors }" />
<div *ngIf="submitted && formCtrls.username.errors" class="invalid-feedback">
<div *ngIf="formCtrls.username.errors.required">Username is required</div>
<div *ngIf="formCtrls.username.errors.minlength">Username must have min 3 characters</div>
</div>
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" formControlName="password" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.password.errors }" />
<div *ngIf="submitted && formCtrls.password.errors" class="invalid-feedback">
<div *ngIf="formCtrls.password.errors.required">Password is required</div>
<div *ngIf="formCtrls.password.errors.pattern">The pattern of the password ([A-Za-z0-9_-]
{{ '{' }}8,15{{ '}' }})</div>
</div>
</div>
<button [disabled]="loading" class="btn btn-primary">
<button [disabled]="loading" mat-button>
<span *ngIf="loading" class="spinner-border spinner-border-sm mr-1"></span>
Create user and login
</button>

View File

@@ -1,26 +1,34 @@
<form [formGroup]="loginForm" (ngSubmit)="onLoginSubmit()">
<div class="form-group">
<label for="username">Username</label>
<input type="text" formControlName="username" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.username.errors }" />
<div *ngIf="submitted && formCtrls.username.errors" class="invalid-feedback">
<div *ngIf="formCtrls.username.errors.required">Username is required</div>
<div *ngIf="formCtrls.username.errors.minlength">Username must have min 3 characters</div>
</div>
</div>
<div class="form-group">
<label for="password">Password</label>
<input type="password" formControlName="password" class="form-control"
[ngClass]="{ 'is-invalid': submitted && formCtrls.password.errors }" />
<div *ngIf="submitted && formCtrls.password.errors" class="invalid-feedback">
<div *ngIf="formCtrls.password.errors.required">Password is required</div>
<div *ngIf="formCtrls.password.errors.pattern">The pattern of the password ([A-Za-z0-9_-]
{{ '{' }}8,15{{ '}' }})</div>
</div>
</div>
<p>
<mat-form-field>
<mat-label>Username</mat-label>
<input matInput formControlName="username" [ngClass]="{ 'is-invalid': submitted && formCtrls.username.errors }">
<mat-error *ngIf="formCtrls.username.hasError('required')">
Username is required
</mat-error>
<mat-error *ngIf="formCtrls.username.hasError('minlength')">
Username must have min 3 characters
</mat-error>
</mat-form-field>
</p>
<p>
<mat-form-field>
<mat-label>Password</mat-label>
<input type="password" matInput formControlName="password"
[ngClass]="{ 'is-invalid': submitted && formCtrls.password.errors }">
<mat-error *ngIf="formCtrls.password.hasError('required')">
Password is required
</mat-error>
<mat-error *ngIf="formCtrls.password.hasError('pattern')">
The pattern of the password ([A-Za-z0-9_-] {{ '{' }}8,15{{ '}' }})
</mat-error>
</mat-form-field>
</p>
<button [disabled]="loading" mat-button>
<span *ngIf="loading" class="spinner-border spinner-border-sm mr-1"></span>
Login
</button>
<div *ngIf="error" class="alert alert-danger mt-3 mb-0">{{error}}</div>
</form>

View File

@@ -41,7 +41,7 @@ export class LoginUserComponent implements OnInit {
]
]
},
{ updateOn: "submit" }
{ updateOn: "blur" }
);
// get return url from route parameters or default to '/'