From cca3146dc16eb5eeb350aeb674f5a8fbafe6809e Mon Sep 17 00:00:00 2001 From: Siwa12100 Date: Tue, 16 Jan 2024 18:05:51 +0100 Subject: [PATCH] travail sur l'authenfication --- .../utilisateurs/DatagridUtilisateurs.razor | 1 - .../DatagridUtilisateurs.razor.cs | 8 +- .../FormulaireConnexion.razor | 2 +- .../FormulaireConnexion.razor.cs | 5 + .../FormulaireInscription.razor | 115 ++++++++++++++++++ .../FormulaireInscription.razor.cs | 38 +++++- .../pages/authentification/Inscription.razor | 14 +++ .../AuthentificationService.cs | 3 +- .../authentificationService/DonneurEtat.cs | 7 +- .../pages/authentification/Inscription.css | 20 +++ 10 files changed, 205 insertions(+), 8 deletions(-) create mode 100644 VeraxShield/VeraxShield/pages/authentification/Inscription.razor create mode 100644 VeraxShield/VeraxShield/wwwroot/css/pages/authentification/Inscription.css diff --git a/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor b/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor index 929d2c5..f54963e 100644 --- a/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor +++ b/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor @@ -27,7 +27,6 @@ } else { Valide } - diff --git a/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor.cs b/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor.cs index bf3996e..88235eb 100644 --- a/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor.cs +++ b/VeraxShield/VeraxShield/composants/affichages/utilisateurs/DatagridUtilisateurs.razor.cs @@ -17,6 +17,9 @@ namespace VeraxShield.composants.affichages.utilisateurs [Inject] private NavigationManager NavigationManager { get; set; } + [Inject] + private DonneurEtat DonneurEtat {get; set;} + private Utilisateur? utilisateurSelectionne; [Parameter] @@ -70,7 +73,10 @@ namespace VeraxShield.composants.affichages.utilisateurs public async Task onClickBoutonSuppression(String Pseudo) { this.utilisateurSelectionne = await this.utilisateursDataService.getUtilisateurFromPseudo(Pseudo); - await this.afficherModal(); + if (this.DonneurEtat._utilisateurCourant.Pseudo != this.utilisateurSelectionne.Pseudo) + { + await this.afficherModal(); + } } public async Task onClickBoutonModification(String Pseudo) diff --git a/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor b/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor index cdef417..ef2a7cb 100644 --- a/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor +++ b/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor @@ -44,7 +44,7 @@
- +
diff --git a/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor.cs b/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor.cs index 88d5d85..cc8805b 100644 --- a/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor.cs +++ b/VeraxShield/VeraxShield/composants/authentification/FormulaireConnexion.razor.cs @@ -41,5 +41,10 @@ namespace VeraxShield.composants.authentification } } } + + public async Task RedirectionInscription() + { + this.NavigationManager.NavigateTo("/inscription"); + } } } \ No newline at end of file diff --git a/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor b/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor index e69de29..ffe0663 100644 --- a/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor +++ b/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor @@ -0,0 +1,115 @@ +@using Blazorise.Components; +@using System.ComponentModel.DataAnnotations; + + + + + +
+ +

S'inscrire

+ + + + +
+ + + Pseudo + + + + + + + + + +
+ +
+ + + Prenom + + + + + + + + + +
+ +
+ + + Nom + + + + + + + + + +
+ +
+ + + Mail + + + + + + + + + +
+ +
+ + + Mot de passe + + + + + + + + + +
+ +
+ + + Confirmer le mot de passe + + + + + + + + + +
+ +
+ + +
+ + + + +
+ +
\ No newline at end of file diff --git a/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor.cs b/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor.cs index 74d62f7..61bfe4d 100644 --- a/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor.cs +++ b/VeraxShield/VeraxShield/composants/authentification/FormulaireInscription.razor.cs @@ -1,7 +1,43 @@ +using Blazorise; +using Microsoft.AspNetCore.Components; +using VeraxShield.composants.formulaires.modeles; + namespace VeraxShield.composants.authentification { - public partial class FormulaireConnexion + public partial class FormulaireInscription { + [Parameter] + public Validations Validations {get; set;} + + public RequeteInscription Requete {get; set;} + + [Inject] + private NavigationManager NavigationManager {get; set;} + + [Inject] + private DonneurEtat DonneurEtat {get; set;} + + public String Erreur {get; set; } + + protected override async Task OnInitializedAsync() + { + this.Requete = new RequeteInscription(); + await base.OnInitializedAsync(); + } + + public async Task OnSubmit() + { + if (await this.Validations.ValidateAll()) + { + await DonneurEtat.Inscription(this.Requete); + NavigationManager.NavigateTo("/connexion"); + } + } + + public async Task OnAnnulation() + { + this.NavigationManager.NavigateTo("/connexion"); + } } } \ No newline at end of file diff --git a/VeraxShield/VeraxShield/pages/authentification/Inscription.razor b/VeraxShield/VeraxShield/pages/authentification/Inscription.razor new file mode 100644 index 0000000..f975387 --- /dev/null +++ b/VeraxShield/VeraxShield/pages/authentification/Inscription.razor @@ -0,0 +1,14 @@ +@using VeraxShield.composants.authentification; + +@page "/inscription" + + + + + +
+ +
+ +
+
\ No newline at end of file diff --git a/VeraxShield/VeraxShield/services/authentificationService/AuthentificationService.cs b/VeraxShield/VeraxShield/services/authentificationService/AuthentificationService.cs index 01fed08..5dcae23 100644 --- a/VeraxShield/VeraxShield/services/authentificationService/AuthentificationService.cs +++ b/VeraxShield/VeraxShield/services/authentificationService/AuthentificationService.cs @@ -11,6 +11,7 @@ public class AuthentificationService : IAuthentificationService public AuthentificationService(IUtilisateursDataService utilisateursDataService) { + Console.WriteLine("Passage dans le constructeur !"); this._utilisateursDataService = utilisateursDataService; this.UtilisateursApplication = new List(); } @@ -52,7 +53,7 @@ public class AuthentificationService : IAuthentificationService await this._utilisateursDataService.AjouterUtilisateur(new Utilisateur(requete.Pseudo, requete.Nom, requete.Prenom, "invite", requete.MotDePasse, requete.Mail, false)); - await this.MajUtilisateurs(); + await this.MajUtilisateurs(); } public async Task MajUtilisateurs() diff --git a/VeraxShield/VeraxShield/services/authentificationService/DonneurEtat.cs b/VeraxShield/VeraxShield/services/authentificationService/DonneurEtat.cs index add3e28..2e8b302 100644 --- a/VeraxShield/VeraxShield/services/authentificationService/DonneurEtat.cs +++ b/VeraxShield/VeraxShield/services/authentificationService/DonneurEtat.cs @@ -8,7 +8,7 @@ using VeraxShield.services.UtilisateursDataService; public class DonneurEtat : AuthenticationStateProvider { private IAuthentificationService _serviceAuthentification; - private UtilisateurCourant _utilisateurCourant; + public UtilisateurCourant _utilisateurCourant; private IUtilisateursDataService _utilisateursDataService; public DonneurEtat(IAuthentificationService service, IUtilisateursDataService utilisateursDataService) @@ -71,9 +71,10 @@ public class DonneurEtat : AuthenticationStateProvider await this._serviceAuthentification.Inscription(requete); // No error - Login the user - var user = await this._serviceAuthentification.GetUtilisateur(requete.Nom); - this._utilisateurCourant = user; + // var user = await this._serviceAuthentification.GetUtilisateur(requete.Nom); + // this._utilisateurCourant = user; NotifyAuthenticationStateChanged(GetAuthenticationStateAsync()); } + } \ No newline at end of file diff --git a/VeraxShield/VeraxShield/wwwroot/css/pages/authentification/Inscription.css b/VeraxShield/VeraxShield/wwwroot/css/pages/authentification/Inscription.css new file mode 100644 index 0000000..bf0bef1 --- /dev/null +++ b/VeraxShield/VeraxShield/wwwroot/css/pages/authentification/Inscription.css @@ -0,0 +1,20 @@ +.centrer-composant { + display: flex; + justify-content: center; + align-items: center; + height: 100vh; +} + +.formulaire-inscription { + width: 53%; + /* border: 2px solid black; + border-radius: 10px; */ + /* padding: 20px; */ +} + +body { + background-image: url('/ressources/images/fondPages/fondConnexion.webp'); + background-size: cover; + background-position: center; + background-repeat: no-repeat; +} \ No newline at end of file