You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
CShark/WpfApp1/SeConnecter.xaml.cs

104 lines
3.3 KiB

using Business;
using Modèle;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;
namespace WpfApp1
{
/// <summary>
/// Logique d'interaction pour SeConnecter.xaml
/// </summary>
public partial class SeConnecter : Window
{
/// <summary>
/// ManagerUser lié à celui de l'app
/// </summary>
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUsers;
/// <summary>
/// Page qui permet à l'utilisateur de se connecter
/// </summary>
public SeConnecter()
{
InitializeComponent();
DataContext = MgrUser;
}
/// <summary>
/// Evénement qui permet de quitter la page
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void exit_Click(object sender, RoutedEventArgs e)
{
Close();
}
/// <summary>
/// Evénement qui permet d'ouvrir la page CreerCompte et de fermer celle la
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Inscription_Click(object sender, RoutedEventArgs e)
{
var inscrireWindow = new CreerCompte();
Close();
inscrireWindow.ShowDialog();
}
/// <summary>
/// Evénement qui permet à l'utilisateur de ce connecter quand il a rentré son email et son mot de passe
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void connect_Click(object sender, RoutedEventArgs e)
{
//Récupère les informations rentrées par l'utilisateur
string email = mail.LeContenu.Text;
string password = mdp.Password;
//Regarde si elles ne sont pas vides
if (string.IsNullOrWhiteSpace(email) || string.IsNullOrWhiteSpace(password))
{
MessageBox.Show("Veuillez remplir toutes les cases");
return;
}
//Cherche dans la liste d'Utilisateur si un Utilisateur à cette email et ce mot de passe
foreach(Personne p in MgrUser.Utilisateurs)
{
if (p.Email==email && password == p.MotDePasse)
{
MgrUser.SelectedUser = p; //Le selectedUser de ManagerUser devient maintenant l'Utilisateur connecté
Close();
return;
}
}
//Fais de même pour la liste d'Expert
foreach(Personne p in MgrUser.Experts)
{
if (p.Email==email && p.MotDePasse == password)
{
MgrUser.SelectedUser = p; //Le selectedUser de ManagerUser devient maintenant l'Expert connecté
Close();
return;
}
}
MessageBox.Show("L'Email ou le mot de passe est incorrect");
}
}
}