private void btnSignUp_Click(object sender, EventArgs ex) { string email = txtUsername.Text; string password = txtPassword.Text; string confirmPassword = txtConfirm.Text; if (password == confirmPassword) { if (String.IsNullOrEmpty(email) || !email.Contains("@")) { MessageBox.Show("This email is not correct"); return; } User user = new User(); user.Email = email; user.Password = Helper.Encrypt(password); user.UserTypeId = 2; db.Users.Add(user); db.SaveChanges(); } else { MessageBox.Show("Password is not confirmed"); return; } this.Close(); }
/// <summary> /// Добавить новый фильм /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void AddNewFilm(object sender, RoutedEventArgs e) { if (NewFilmNameTextBox.Text == "") { MessageBox.Show("Неверное название фильма", Error); } else if (NewFilmDateReleaseDatePicker.SelectedDate == null) { MessageBox.Show("Укажите дату релиза", Error); } else if (NewFilmDateEndDatePicker.SelectedDate == null) { MessageBox.Show("Укажите дату окончания проката", Error); } else if (NewFilmDateReleaseDatePicker.SelectedDate > NewFilmDateEndDatePicker.SelectedDate) { MessageBox.Show("Прокат фильма не может закончиться раньше, чем он начнется", Error); } else if (NewFilmDateEndDatePicker.SelectedDate < DateTime.Now) { MessageBox.Show("Фильм уже вышел из проката", Error); } else if (!(Regex.IsMatch(NewFilmDurationHourTextBox.Text, reg2) || Regex.IsMatch(NewFilmDurationHourTextBox.Text, reg1)) || !(Regex.IsMatch(NewFilmDurationMinuteTextBox.Text, reg2) || Regex.IsMatch(NewFilmDurationMinuteTextBox.Text, reg1)) || int.Parse(NewFilmDurationMinuteTextBox.Text) > 59 || (int.Parse(NewFilmDurationMinuteTextBox.Text) == 0 && int.Parse(NewFilmDurationHourTextBox.Text) == 0)) { MessageBox.Show("Неверная длительность фильма", Error); } else if (NewFilmPosterLabel.Background == null) { MessageBox.Show("Ваберите постер", Error); } else { Films film = new Films() { Film_name = NewFilmNameTextBox.Text, Date_release = (DateTime)NewFilmDateReleaseDatePicker.SelectedDate, Date_end = NewFilmDateEndDatePicker.SelectedDate, Duration = new TimeSpan(int.Parse(NewFilmDurationHourTextBox.Text), int.Parse(NewFilmDurationMinuteTextBox.Text), 0), Description = NewFilmDescriptionTextBox.Text, Poster = ImageWork.ImageToByteArray(System.Drawing.Image.FromFile(posterWay)) }; using (var db = new CinemaEntities()) { db.Films.Add(film); db.SaveChanges(); MessageBox.Show("Фильм добавлен"); } LoadPosters(); FromAddFilmToManu(null, null); } }
/// <summary> /// Оплатить билеты /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void PayTickets(object sender, RoutedEventArgs e) { string regNum = @"\d\d\d\d"; string regDate = @"\d\d"; if (!Regex.IsMatch(PayNumberCardTextBox1.Text, regNum) || !Regex.IsMatch(PayNumberCardTextBox2.Text, regNum) || !Regex.IsMatch(PayNumberCardTextBox3.Text, regNum) || !Regex.IsMatch(PayNumberCardTextBox4.Text, regNum)) { MessageBox.Show("Неверный номер карты", Error); } else if (!Regex.IsMatch(PayMonthCardTextBox.Text, regDate) || !Regex.IsMatch(PayYearCardTextBox.Text, regDate) || int.Parse(PayMonthCardTextBox.Text) > 12 || int.Parse(PayMonthCardTextBox.Text) < 1) { MessageBox.Show("Неверная дата", Error); } else if (PayUserCardTextBox.Text == "") { MessageBox.Show("Укажите владельца карты", Error); } else if (!Regex.IsMatch(PayCVC2CardTextBox.Text, @"\d\d\d")) { MessageBox.Show("Неверный код CVC2", Error); } else { using (var db = new CinemaEntities()) { Purchases purchases = new Purchases() { Buyer = user.Login, Purchase_date = DateTime.Now }; db.Purchases.Add(purchases); foreach (var t in ListPlacesToBuy) { var o = from f in db.Tickets where f.Ticket_id == t.Ticket_id select f; foreach (var p in o) { purchases.Tickets.Add(p); } } db.SaveChanges(); } MessageBox.Show("Билеты куплены"); PayGrid.Visibility = Visibility.Hidden; ListPosterGrid.Visibility = Visibility.Visible; } }
/// <summary> /// изменение роли /// </summary> /// <param name="role"></param> private void ChangeUserRole(string role) { UserRole userRole = new UserRole(); var o = UsersRoleDataGrid.SelectedCells; foreach (var l in o) { userRole = (UserRole)l.Item; } using (var db = new CinemaEntities()) { var u = from f in db.Users where f.Login == userRole.Login select f; foreach (var u2 in u) { u2.Role = role; if (user.Login == u2.Login) { user.Role = role; } } db.SaveChanges(); } }
/// <summary> /// Регистрация нового посетителя /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void RegistrationUserButton_Click(object sender, RoutedEventArgs e) { string login = LoginRegistrationTextBox.Text.ToString(); //для более легкого обращения к введеному логину string password = PasswordRegistrationPasswordBox.Password.ToString(); //для более легкого обращения к введенному паролю if (login == "") { MessageBox.Show("Введите логин", Error); } else if (password == "") { MessageBox.Show("Введите пароль", Error); } else if (password.Length < 6) { MessageBox.Show("Пароль не должен быть короче 6 символов", Error); } else if (password != PasswordRegistration2PasswordBox.Password.ToString()) { MessageBox.Show("Пароли не сопадают", Error); } else { using (var db = new CinemaEntities()) { bool enter = false; //существует ли логин в БД foreach (var log in from f in db.Users select f) { if (log.Login.ToString() == login) { enter = true; MessageBox.Show("Такой логин уже существует", Error); break; } } if (!enter) { user = new Users { Login = login, Password = password, Role = role.Visiter }; if (LastNameRegistrationTextBox.Text.ToString() == "") { user.Last_name = null; } else { user.Last_name = LastNameRegistrationTextBox.Text.ToString(); } if (FirstNameRegistrationTextBox.Text.ToString() == "") { user.First_name = null; } else { user.First_name = FirstNameRegistrationTextBox.Text.ToString(); } db.Users.Add(user); db.SaveChanges(); MessageBox.Show("Пользователь зарегистрирован."); lastGrid.Visibility = Visibility.Visible; RegistrationGrid.Visibility = Visibility.Hidden; ChangeVisibilityUserButtons(); } } } }