private void buttonSignUp_Click(object sender, RoutedEventArgs e) { if (string.IsNullOrWhiteSpace(textBoxUsername.Text)) { MessageBox.Show("Необходимо ввести логин", "Ошибка!"); textBoxUsername.Focus(); return; } if (!Data.checkUsernameValidity(textBoxUsername.Text)) { MessageBox.Show("Использованы запрещенные символы. Разрешены: латинские символы, цифры и нижнее подчёркивание", "Ошибка!"); textBoxUsername.Focus(); return; } if (!Data.checkIfUsernameIsUsed(textBoxUsername.Text)) { MessageBox.Show("Данный логин занят. Необходимо использовать другой логин", "Ошибка!"); textBoxUsername.Focus(); return; } if (string.IsNullOrWhiteSpace(textBoxName.Text)) { MessageBox.Show("Необходимо ввести имя", "Ошибка!"); textBoxName.Focus(); return; } if (string.IsNullOrWhiteSpace(textBoxSurname.Text)) { MessageBox.Show("Необходимо ввести фамилию", "Ошибка!"); textBoxSurname.Focus(); return; } if (string.IsNullOrWhiteSpace(passwordBox.Password)) { MessageBox.Show("Необходимо ввести пароль", "Ошибка!"); passwordBox.Focus(); return; } if (string.IsNullOrWhiteSpace(passwordBoxRepeat.Password)) { MessageBox.Show("Необходимо повторно ввести пароль", "Ошибка!"); passwordBoxRepeat.Focus(); return; } else if (passwordBox.Password != passwordBoxRepeat.Password) { MessageBox.Show("Введенные пароли не совпадают", "Ошибка!"); return; } Data.ReadUsersData(); int usersCount = Data.Users.Count; if (usersCount == 0) { Data.Users.Add(new User(textBoxUsername.Text, textBoxName.Text, textBoxSurname.Text, passwordBox.Password, true)); MessageBox.Show($"{textBoxName.Text}, вы были успешно зарегистрированы в системе, как \"{textBoxUsername.Text}\".\nТак как вы являетесь первым пользователем, вам предоставлены права администратора.", "Успешно!"); } else { Data.Users.Add(new User(textBoxUsername.Text, textBoxName.Text, textBoxSurname.Text, passwordBox.Password)); MessageBox.Show($"{textBoxName.Text}, вы были успешно зарегистрированы в системе, как \"{textBoxUsername.Text}\"", "Успешно!"); } Data.LoggedUser = Data.Users.LastOrDefault(); Data.UpdateUsersData(); Pages.ChangeFrameSize(500, 750); Pages.MainPageAsUser.UpdateSearchState(); Logger.Log($"Регистрация и вход пользователя: \"{textBoxUsername.Text}\""); if (Data.LoggedUser != null && Data.LoggedUser.IsAdmin) { NavigationService.Navigate(Pages.MainPageAsAdmin); } if (Data.LoggedUser != null && !Data.LoggedUser.IsAdmin) { NavigationService.Navigate(Pages.MainPageAsUser); } }