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/ChangerMotDePasse.xaml.cs

88 lines
2.6 KiB

using Business;
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 ChangerMotDePasse.xaml
/// Page qui permet à un utilisateur de changer son mot de passe
/// </summary>
public partial class ChangerMotDePasse : Window
{
public ChangerMotDePasse()
{
InitializeComponent();
}
public ManagerUsers MgrUser => (Application.Current as App).LeManagerUsers; //Manager lié à celui de l'app
/// <summary>
/// Evénement qui permet de valider le changement du mot de passe
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void valider_Click(object sender, RoutedEventArgs e)
{
if (verifierConf())
{
if (verifierAncienMdp())
{
//Change le mot de passe de l'utilisateur
MgrUser.SelectedUser.ChangerMotDePasse(nvMdp.Password);
Close();
}
else
{
MessageBox.Show("Le mot de passe actuel saisi est incorrect");
}
}
else
{
MessageBox.Show("Les mots de passe de correspondent pas");
}
}
/// <summary>
/// Méthode qui vérifie que le mot de passe et le même que celui de la confirmation
/// </summary>
/// <returns>Booléen : true si ils sont égaux, false sinon</returns>
private bool verifierConf()
{
return nvMdp.Password == confMdp.Password;
}
/// <summary>
/// Méthode qui vérifie que l'ancien mot de passe et bien le mot de passe actuel de l'utilisateur
/// </summary>
/// <returns>Booléen : true si ils sont égaux, false sinon</returns>
private bool verifierAncienMdp()
{
return ancienMdp.Password == MgrUser.SelectedUser.MotDePasse;
}
/// <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();
}
}
}