Skip to content

Commit 9396cca

Browse files
authored
Merge pull request #11 from AdonisVienet/localBapt
c'est la fin du login
2 parents 65d99b9 + cd43913 commit 9396cca

File tree

12 files changed

+201
-58
lines changed

12 files changed

+201
-58
lines changed

src/app/app.routing.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ import { VisiteComponent } from './components/visite/visite.component';
1717
import { LoginComponent } from './components/login/login.component';
1818
import { DashboardComponent } from './dashboard/dashboard.component';
1919

20-
const routes: Routes =[
20+
const routes: Routes = [
2121
{
2222
path: '',
23-
redirectTo: 'login',
23+
component: LoginComponent,
2424
pathMatch: 'full',
2525
}, {
2626
path: '',

src/app/components/components.module.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import { TerrainComponent } from './terrain/terrain.component';
1717
import { VisiteComponent } from './visite/visite.component';
1818
import { LoginComponent } from 'app/components/login/login.component';
1919
import { FormsModule } from '@angular/forms';
20+
import { RegistrationComponent } from './registration/registration.component';
2021

2122
@NgModule({
2223
imports: [
@@ -39,6 +40,7 @@ import { FormsModule } from '@angular/forms';
3940
TerrainComponent,
4041
VisiteComponent,
4142
LoginComponent,
43+
RegistrationComponent,
4244
],
4345
exports: [
4446
FooterComponent,
Lines changed: 34 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,35 @@
1-
<h1>Connectez-vous</h1>
2-
<form (submit)="login()">
3-
<div>
4-
<label for="username">Nom d'utilisateur</label>
5-
<input type="text" class="form-control" [(ngModel)]="credentials.username" name="username">
1+
<style>
2+
body {
3+
margin-top: 25%;
4+
margin-left: 25%;
5+
}
6+
7+
h1 {
8+
color: rgb(114, 40, 40, 0.48);
9+
font-size: 70px;
10+
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif
11+
}
12+
</style>
13+
14+
<div>
15+
<img src="assets/img/maison.jpg" alt="photoAgence">
16+
</div>
17+
18+
<body>
19+
<div class="form-group col-md-8" style="text-align: center">
20+
<h1>Connectez vous</h1>
21+
<form (submit)="login()">
22+
<div>
23+
<label for="username">Nom d'utilisateur</label>
24+
<input type="text" class="form-control" [(ngModel)]="credentials.username" name="username">
25+
</div>
26+
<div>
27+
<label for="password">Mot de passe</label>
28+
<input type="text" class="form-control" [(ngModel)]="credentials.password" name="password">
29+
<br>
30+
</div>
31+
<button class="btn btn-primary" type="submit">Se connecter</button>
32+
<p>Pas encore de compte ? <a routerLink="/registration">Inscrivez-vous</a></p>
33+
</form>
634
</div>
7-
<div>
8-
<label for="password">Mot de passe</label>
9-
<input type="text" class="form-control" [(ngModel)]="credentials.password" name="password">
10-
</div>
11-
<button type="submit">Se connecter</button>
12-
</form>
35+
</body>

src/app/components/login/login.component.ts

Lines changed: 18 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -4,42 +4,46 @@ import { NgForm } from '@angular/forms';
44
import { Router } from '@angular/router';
55
import { AppService } from 'app/app.service';
66

7+
78
@Component({
89
selector: 'app-login',
910
templateUrl: './login.component.html',
1011
styleUrls: ['./login.component.scss']
1112
})
1213
export class LoginComponent implements OnInit {
1314

14-
username! : string;
15-
password! : string;
16-
credentials = {username : '',password : ''}
17-
constructor(private appService:AppService,private httpClient:HttpClient,private router:Router){}
18-
1915

20-
login(){
21-
this.appService.authenticate(this.credentials,()=>{this.router.navigateByUrl("/home")});
16+
username!: string;
17+
password!: string;
18+
credentials = { username: '', password: '' }
19+
constructor(private appService: AppService, private httpClient: HttpClient, private router: Router) { }
20+
21+
22+
login() {
23+
this.appService.authenticate(this.credentials, () => { this.router.navigateByUrl("/home") });
2224
}
2325

26+
2427
/*onSubmit(form:NgForm) {
2528
// Récupération des données du formulaire
2629
const username = form.value.username;
2730
const password = form.value.password;
28-
31+
32+
2933
// Traitement de la soumission du formulaire
3034
console.log('Username : ' + username);
3135
console.log('Password : ' + password);
32-
36+
37+
3338
// Envoi des données au serveur pour authentification
3439
// ...
35-
40+
41+
3642
// Réinitialisation du formulaire
3743
form.reset();
3844
}*/
3945

46+
4047
ngOnInit(): void {
41-
42-
}
4348
}
44-
45-
49+
}
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
<h2>Créer un compte</h2>
2+
<div class="row">
3+
<div class="col-md-8">
4+
<div class="card card-user">
5+
<div class="card-header">
6+
<h3 class="card-title">Creer un compte</h3>
7+
</div>
8+
<div class="card-body">
9+
<form (ngSubmit)="saveUtilisateur()">
10+
<div class="row">
11+
<div class="col-md-6 pr-1">
12+
<div class="form-group">
13+
<label>Nom</label>
14+
<input type="text" class="form-control" [(ngModel)]="utilisateur.nomUtilisateur"
15+
name="nomUtilisateur">
16+
</div>
17+
<div class="form-group">
18+
<label>Prénom</label>
19+
<input type="text" class="form-control" [(ngModel)]="utilisateur.prenomUtilisateur"
20+
name="prenomUtilisateur">
21+
</div>
22+
<div class="form-group">
23+
<label>Email</label>
24+
<input type="email" class="form-control" [(ngModel)]="utilisateur.emailUtilisateur"
25+
name="emailUtilisateur">
26+
</div>
27+
<div class="form-group">
28+
<label>Date de Naissance</label>
29+
<input type="date" class="form-control"
30+
[(ngModel)]="utilisateur.dateNaissanceUtilisateur" name="dateNaissanceUtilisateur">
31+
</div>
32+
<div class="form-group">
33+
<label>Telephone</label>
34+
<input type="tel" class="form-control" [(ngModel)]="utilisateur.numTelUtilisateur"
35+
name="numTelUtilisateur">
36+
</div>
37+
<div class="form-group">
38+
<label>Nom d'utilisateur</label>
39+
<input type="text" class="form-control" [(ngModel)]="utilisateur.username"
40+
name="username">
41+
</div>
42+
<div class="form-group">
43+
<label>Mot de passe</label>
44+
<input type="text" class="form-control" [(ngModel)]="utilisateur.password"
45+
name="password">
46+
</div>
47+
<div class="form-group">
48+
<label>Role</label>
49+
<select [(ngModel)]="utilisateur.roles" name="roles">
50+
<option value="">Client</option>
51+
</select>
52+
</div>
53+
</div>
54+
</div>
55+
<div class="row">
56+
<div class="update ml-auto mr-auto">
57+
<button class="btn btn-primary btn-round">Valider</button>
58+
</div>
59+
</div>
60+
</form>
61+
</div>
62+
</div>
63+
</div>

src/app/components/registration/registration.component.scss

Whitespace-only changes.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
import { ComponentFixture, TestBed } from '@angular/core/testing';
2+
3+
import { RegistrationComponent } from './registration.component';
4+
5+
describe('RegistrationComponent', () => {
6+
let component: RegistrationComponent;
7+
let fixture: ComponentFixture<RegistrationComponent>;
8+
9+
beforeEach(async () => {
10+
await TestBed.configureTestingModule({
11+
declarations: [ RegistrationComponent ]
12+
})
13+
.compileComponents();
14+
15+
fixture = TestBed.createComponent(RegistrationComponent);
16+
component = fixture.componentInstance;
17+
fixture.detectChanges();
18+
});
19+
20+
it('should create', () => {
21+
expect(component).toBeTruthy();
22+
});
23+
});
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
import { Component, OnInit } from '@angular/core';
2+
import { Router } from '@angular/router';
3+
import { Utilisateur } from 'app/model/utilisateur';
4+
import { UtilisateurService } from 'app/services/utilisateur.service';
5+
6+
7+
@Component({
8+
selector: 'app-registration',
9+
templateUrl: './registration.component.html',
10+
styleUrls: ['./registration.component.scss']
11+
})
12+
export class RegistrationComponent implements OnInit {
13+
14+
15+
16+
17+
users!: any[]
18+
roles!: any[];
19+
utilisateur: Utilisateur = new Utilisateur();
20+
constructor(private utilisateurService: UtilisateurService, private router: Router) { }
21+
ngOnInit(): void {
22+
23+
24+
}
25+
26+
27+
saveUtilisateur() {
28+
this.utilisateurService.save(this.utilisateur).subscribe(
29+
() => {
30+
this.utilisateur = new Utilisateur();
31+
}
32+
)
33+
}
34+
}
35+

src/app/components/utilisateur/utilisateur.component.ts

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -40,14 +40,13 @@ export class UtilisateurComponent implements OnInit {
4040

4141

4242
//Méthode save :
43-
save() {
44-
this.currentFileUpload = this.selectedFiles?.item(0) as File;
45-
this.utilisateurService.save(this.currentFileUpload, this.utilisateur).subscribe(() => {
46-
this.findAllUtilisateurs();
47-
this.utilisateur = new Utilisateur();
48-
this.selectedFiles = undefined;
49-
})
50-
43+
saveUtilisateur() {
44+
this.utilisateurService.save(this.utilisateur).subscribe(
45+
() => {
46+
this.findAllUtilisateurs(); // MAJ de la liste des utilisateurs
47+
this.utilisateur = new Utilisateur(); // Vider le formulaire pour avoir une nouvelle ligne
48+
}
49+
)
5150
}
5251
deleteUtilisateur(id: number) {
5352
this.utilisateurService.delete(id).subscribe(

src/app/layouts/admin-layout/admin-layout.module.ts

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,13 @@ import { IconsComponent } from '../../icons/icons.component';
1212
import { MapsComponent } from '../../maps/maps.component';
1313
import { NotificationsComponent } from '../../notifications/notifications.component';
1414
import { UpgradeComponent } from '../../upgrade/upgrade.component';
15-
import {MatButtonModule} from '@angular/material/button';
16-
import {MatInputModule} from '@angular/material/input';
17-
import {MatRippleModule} from '@angular/material/core';
18-
import {MatFormFieldModule} from '@angular/material/form-field';
19-
import {MatTooltipModule} from '@angular/material/tooltip';
20-
import {MatSelectModule} from '@angular/material/select';
15+
import { MatButtonModule } from '@angular/material/button';
16+
import { MatInputModule } from '@angular/material/input';
17+
import { MatRippleModule } from '@angular/material/core';
18+
import { MatFormFieldModule } from '@angular/material/form-field';
19+
import { MatTooltipModule } from '@angular/material/tooltip';
20+
import { MatSelectModule } from '@angular/material/select';
21+
2122

2223
@NgModule({
2324
imports: [
@@ -45,4 +46,4 @@ import {MatSelectModule} from '@angular/material/select';
4546
]
4647
})
4748

48-
export class AdminLayoutModule {}
49+
export class AdminLayoutModule { }

0 commit comments

Comments
 (0)