|
|
|
@ -10,21 +10,33 @@ using Models;
|
|
|
|
|
using System.Diagnostics;
|
|
|
|
|
using System.Text.RegularExpressions;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Code-Behind pour la page de connexion.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public partial class PageConnexion : ContentPage
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
|
private bool connexionWorked;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Gestionnaire de connexion.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public Manager ConnexionManager => (App.Current as App).MyManager;
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Constructeur de la page de connexion.
|
|
|
|
|
/// </summary>
|
|
|
|
|
public PageConnexion()
|
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* \brief Bouton "Connexion"
|
|
|
|
|
* Réaction au clic sur le bouton, vérification des champs non vide.
|
|
|
|
|
* \return void
|
|
|
|
|
*/
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Méthode appelée lorsqu'on appuie sur le bouton "Connexion".
|
|
|
|
|
/// Vérifie les champs non vides et effectue la vérification de la connexion.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender">L'objet qui a déclenché l'événement.</param>
|
|
|
|
|
/// <param name="e">Les arguments de l'événement.</param>
|
|
|
|
|
private async void OnSignInClicked(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
|
|
|
|
@ -41,28 +53,28 @@ public partial class PageConnexion : ContentPage
|
|
|
|
|
connexionWorked = Verification(username, password);
|
|
|
|
|
if (connexionWorked)
|
|
|
|
|
{
|
|
|
|
|
//await Navigation.PushAsync(new PageAcceuil());
|
|
|
|
|
await Navigation.PopAsync();
|
|
|
|
|
//await Shell.Current.GoToAsync("//page/PageAccueil");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* \brief Texte "S'inscrire"
|
|
|
|
|
* Réaction au clic sur le texte, envoie sur le page d'Inscription.
|
|
|
|
|
* \return void
|
|
|
|
|
*/
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Méthode appelée lorsqu'on appuie sur le texte "S'inscrire".
|
|
|
|
|
/// Affiche la page d'inscription.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender">L'objet qui a déclenché l'événement.</param>
|
|
|
|
|
/// <param name="e">Les arguments de l'événement.</param>
|
|
|
|
|
private async void OnInscrire_Tapped(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
await Navigation.PushModalAsync(new PageInscription());
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* \brief Texte "Mot de Passe oublié"
|
|
|
|
|
* Réaction au clic sur le texte, affichage de pop-ups.
|
|
|
|
|
* \return void
|
|
|
|
|
*/
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Méthode appelée lorsqu'on appuie sur le texte "Mot de Passe oublié".
|
|
|
|
|
/// Affiche des pop-ups avec des messages.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender">L'objet qui a déclenché l'événement.</param>
|
|
|
|
|
/// <param name="e">Les arguments de l'événement.</param>
|
|
|
|
|
private async void OnMotDePasseOublie_Tapped(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
await DisplayAlert("Oh non !", "Le mot de passe va te revenir à force", "Concentration");
|
|
|
|
@ -79,14 +91,14 @@ public partial class PageConnexion : ContentPage
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* \brief Vérification et Chargement
|
|
|
|
|
* Vérification de la présence de l'utilisateur dans la Liste d'Utilisateurs.
|
|
|
|
|
* Si c'est le cas, comparaison du mot de passe fournis par celui de l'utilisateur.
|
|
|
|
|
* Si tout est bon, chargement de l'utilisateur dans ConnectedUser.
|
|
|
|
|
* Dans le cas contraire, on renvoie un message d'erreur et termine la vérification.
|
|
|
|
|
* \return bool true si la connexion a fonctionnée, false sinon.
|
|
|
|
|
*/
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Vérifie la présence de l'utilisateur dans la liste des utilisateurs et effectue la vérification du mot de passe.
|
|
|
|
|
/// Charge l'utilisateur connecté si la vérification est réussie.
|
|
|
|
|
/// Affiche un message d'erreur sinon.
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="username">Le nom d'utilisateur saisi.</param>
|
|
|
|
|
/// <param name="password">Le mot de passe saisi.</param>
|
|
|
|
|
/// <returns>True si la connexion a réussi, false sinon.</returns>
|
|
|
|
|
public bool Verification(string username, string password)
|
|
|
|
|
{
|
|
|
|
|
foreach (Utilisateur user in ConnexionManager.Utilisateurs.Concat(ConnexionManager.Admins))
|
|
|
|
|