Beispiel #1
0
        private void LoginUser()
        {
            bool isUserValid = true;

            if (Login_Username_Text.Text.Equals("Username"))
            {
                isUserValid = false;
                Login_Username_Error_Text.Visibility = Visibility.Visible;
                Login_Username_Error_Text.Text       = "*Please enter a username";
            }
            else
            {
                Login_Username_Error_Text.Visibility = Visibility.Collapsed;
            }
            if (Login_Password_Text.Password.Length == 0)
            {
                isUserValid = false;
                Login_Password_Error_Text.Visibility = Visibility.Visible;
                Login_Password_Error_Text.Text       = "*Please enter a password";
            }
            else
            {
                Login_Password_Error_Text.Visibility = Visibility.Collapsed;
            }
            if (isUserValid)
            {
                try
                {
                    DataController.GetInstance.StartTransaction();
                    User user = DataController.GetInstance.Login(Login_Username_Text.Text, Login_Password_Text.Password);
                    if (!user.User_Correct_User_Name)
                    {
                        isUserValid = false;
                        Login_Username_Error_Text.Visibility = Visibility.Visible;
                        Login_Username_Error_Text.Text       = "*Incorrect username";
                    }
                    else
                    {
                        Login_Username_Error_Text.Visibility = Visibility.Collapsed;
                    }
                    if (!user.User_Correct_Password)
                    {
                        isUserValid = false;
                        Login_Password_Error_Text.Visibility = Visibility.Visible;
                        Login_Password_Error_Text.Text       = "*Incorrect password";
                        Login_Password_Text.SelectAll();
                    }
                    else
                    {
                        Login_Password_Error_Text.Visibility = Visibility.Collapsed;
                    }

                    if (isUserValid)
                    {
                        if (DataController.GetInstance.InsertLog(new List <Log>()
                        {
                            new Log()
                            {
                                Log_Performed_Action = "Logged In",
                                Log_Date_Time = DateTime.Now,
                                Log_User = Login_Username_Text.Text
                            }
                        }))
                        {
                            DataController.GetInstance.Commit();
                            isLoginButtonPressed = true;
                            if (Login_Remember_Me_Check_Box.IsChecked.Value)
                            {
                                Settings.Default.Login_Remember_Me = true;
                                Settings.Default.Login_User_Name   = Login_Username_Text.Text;
                            }
                            else
                            {
                                Settings.Default.Login_Remember_Me = false;
                                Settings.Default.Login_User_Name   = "";
                            }
                            Settings.Default.Save();
                            GlobalSingleton.GetInstance.Logged_In_User = user;
                            mainWindow.UserTypeSetup();
                            Dispatcher.BeginInvoke((Action)(() => mainWindow.MainWindow_TabControl.SelectedItem = mainWindow.Stock_List_TabItem));
                            Close();
                        }
                        else
                        {
                            DataController.GetInstance.Rollback();
                            Login_Username_Error_Text.Visibility = Visibility.Collapsed;
                            Login_Password_Error_Text.Visibility = Visibility.Visible;
                            Login_Password_Error_Text.Text       = "Failed to log user, try again";
                        }
                    }
                    else
                    {
                        DataController.GetInstance.Rollback();
                    }
                    isLoginButtonPressed = false;
                }
                catch (MySqlException ex)
                {
                    Login_Username_Error_Text.Visibility = Visibility.Collapsed;
                    Login_Password_Error_Text.Visibility = Visibility.Visible;
                    Login_Password_Error_Text.Text       = ex.Message;
                }
            }
        }
Beispiel #2
0
 private void Password_Text_GotFocus(object sender, RoutedEventArgs e)
 {
     Login_Password_Text.SelectAll();
 }