//login button //checks user's username & pass from users list private void LoginButton_Click(object sender, RoutedEventArgs e) { LabelPassed.Content = ""; string UserName = txt_Usuario.Text; string Password = txt_Password.Password.ToString(); ReadWriteJson file = new ReadWriteJson(); try { User userDetails = file.searchUser(UserName); if (Password == userDetails.Password && userDetails.Role == "Manager") { AdminWindow main = new AdminWindow(userDetails); this.Close(); main.ShowDialog(); } else if (Password != userDetails.Password && userDetails.Role == "Manager") { LabelPassed.Content = "Wrong password"; txt_Password.BorderBrush = Brushes.Red; } else { LabelPassed.Content = "Students can't login!"; } } catch (FormatException) { LabelPassed.Content = "Wrong Input,please check national code!"; txt_Password.BorderBrush = Brushes.Red; } catch (FileNotFoundException) { LabelPassed.Content = "User not found!"; txt_Usuario.BorderBrush = Brushes.Red; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
// Searches for user (by name or national code) // Returns user' info private void Search_Click(object sender, RoutedEventArgs e) { resultTextBox.Content = ""; ReadWriteJson file = new ReadWriteJson(); try { string byType = typeDetectorBox.SelectedItem.ToString(); string searchMethod = searchArgTextBox.Text; User foundUser = new User(); if (byType.Equals("By Name")) { foundUser = file.searchUser(searchMethod); } else if (byType.Equals("By National Code")) { int nationalCode = int.Parse(searchMethod); foundUser = file.searchUser(nationalCode); } if (foundUser.Role.Equals("Manager") && IsAdmin == false) { MessageBox.Show("Access limited"); } else { UserControls.UserDetails userDetailUserControl = new UserControls.UserDetails(foundUser, admin.Name); userDetailStackPanel.Children.Clear(); userDetailStackPanel.Children.Add(userDetailUserControl); //if (searchMethod.Equals(admin.Name)) // userDetailUserControl.nameTextBox.IsEnabled = true; } } catch (FormatException excp) { ErrorLogger.LogError(excp); resultTextBox.Content = "Wrong format,please check national code!"; searchArgTextBox.BorderBrush = Brushes.Red; //throw new userControl/ ArgumentNullException(); } catch (FileNotFoundException) { resultTextBox.Content = "UserName not Found!!"; searchArgTextBox.BorderBrush = Brushes.Red; //throw new userControl/ArgumentNullException(); } catch (ArgumentNullException excp) { ErrorLogger.LogError(excp); resultTextBox.Content = "Data not Found!"; //throw new userControl/ArgumentNullException(); } catch (Exception ex) { ErrorLogger.LogError(ex); MessageBox.Show(ex.Message); } }