private void OnReservationDeleteButtonClicked(object sender, RoutedEventArgs e)
 {
     try {
         if (isUserMode)
         {
             if (nowSelectedItem.type == StatusItem.RESERVATION_TYPE)
             {
                 (new PasswordForm((form, password) => {
                     if (ServerClient.getInstance().reservationDeleteOne(nowSelectedItem.reservID, LoginClient.EncryptString(password), isUserMode))
                     {
                         refresh();
                         form.Close();
                         MessageBox.Show("예약 삭제에 성공했습니다", "예약 삭제 성공", MessageBoxButton.OK, MessageBoxImage.Information);
                     }
                     else
                     {
                         MessageBox.Show("비밀번호가 틀렸습니다", "예약 삭제 실패", MessageBoxButton.OK, MessageBoxImage.Error);
                     }
                 })).ShowDialog();
             }
             else
             {
                 MessageBox.Show("강의는 관리자만 삭제할 수 있습니다", "예약 삭제 실패", MessageBoxButton.OK, MessageBoxImage.Warning);
             }
         }
         else
         {
             if (nowSelectedItem.type == StatusItem.RESERVATION_TYPE)
             {
                 ServerClient.getInstance().reservationDeleteOne(nowSelectedItem.reservID, "", isUserMode);
                 refresh();
                 MessageBox.Show("예약 삭제에 성공했습니다", "예약 삭제 성공", MessageBoxButton.OK, MessageBoxImage.Information);
             }
             else
             {
                 ServerClient.getInstance().lectureDelete(nowSelectedItem.reservID);
                 refresh();
                 MessageBox.Show("강의 삭제에 성공했습니다", "강의 삭제 성공", MessageBoxButton.OK, MessageBoxImage.Information);
             }
         }
     } catch (ServerResult ex) {
         MessageBox.Show("알 수 없는 오류가 발생해서 삭제에 실패했습니다.", "삭제", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }
Пример #2
0
        private void Reserve(object sender, RoutedEventArgs e)
        {
            if (calendar.SelectedDate == null)
            {
                MessageBox.Show("날짜를 선택해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (!timeSelectControl.HasSeletedTime())
            {
                MessageBox.Show("시간을 선택해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (!classroomSelectControl.HasSelectedClassroom())
            {
                MessageBox.Show("강의실을 선택해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (nameTextBox.Text.Equals(""))
            {
                MessageBox.Show("이름을 입력해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (nameTextBox.Text.Length > 100)
            {
                MessageBox.Show("이름은 100자를 넘을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (Essential.hasSpecialChar(nameTextBox.Text))
            {
                MessageBox.Show("이름에 특수문자(\" \' ; : \\ / + = * # |)및 query구문(union, select 등)을 넣을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (numberTextBox.Text.Equals(""))
            {
                MessageBox.Show("연락처를 입력해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (numberTextBox.Text.Length > 100)
            {
                MessageBox.Show("연락처는 100자를 넘을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (Essential.hasSpecialChar(numberTextBox.Text))
            {
                MessageBox.Show("연락처에 특수문자(\" \' ; : \\ / + = * # |)및 query구문(union, select 등)을 넣을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (contentTextBox.Text.Equals(""))
            {
                MessageBox.Show("예약 내용을 입력해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (contentTextBox.Text.Length > 1000)
            {
                MessageBox.Show("예약 내용은 1000자를 넘을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (Essential.hasSpecialChar(contentTextBox.Text))
            {
                MessageBox.Show("예약 내용에 특수문자(\" \' ; : \\ / + = * # |)및 query구문(union, select 등)을 넣을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (passwordTextBox.Password.Equals(""))
            {
                MessageBox.Show("비밀번호을 입력해 주세요", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (passwordTextBox.Password.Length > 100)
            {
                MessageBox.Show("비밀번호는 100자를 넘을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (Essential.hasSpecialChar(passwordTextBox.Password))
            {
                MessageBox.Show("비밀번호에 특수문자(\" \' ; : \\ / + = * # |)및 query구문(union, select 등)을 넣을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else if (Essential.hasKorean(passwordTextBox.Password))
            {
                MessageBox.Show("비밀번호에 한글을 넣을 수 없습니다", "예약 불가", MessageBoxButton.OK, MessageBoxImage.Warning);
            }
            else
            {
                DateTime startDate = calendar.SelectedDates[0];
                DateTime endDate   = calendar.SelectedDates[calendar.SelectedDates.Count - 1];
                int[]    time      = timeSelectControl.GetSelectedTime();
                string   classroom = classroomSelectControl.GetSelectedClassroom();

                string name     = nameTextBox.Text;
                string contact  = numberTextBox.Text;
                string content  = contentTextBox.Text;
                string password = LoginClient.EncryptString(passwordTextBox.Password);
                Logger.logNext(passwordTextBox.Password);

                item = new ReservationItem(startDate, endDate, time[0], time[1], classroom, name, contact, content, password);

                MessageBoxResult result = MessageBox.Show(item.ToString() + "이 맞습니까?", "예약 하기", MessageBoxButton.YesNo, MessageBoxImage.Information);
                if (result == MessageBoxResult.Yes)
                {
                    overlapAll.Visibility = Visibility.Visible;
                    BackgroundWorker _backgroundWorker = new BackgroundWorker();
                    _backgroundWorker.DoWork             += _backgroundWorker_DoWork;
                    _backgroundWorker.RunWorkerCompleted += _backgroundWorker_RunWorkerCompleted;
                    _backgroundWorker.RunWorkerAsync();
                }
            }
        }
 private void OnReservationModifyButtonClicked(object sender, RoutedEventArgs e)
 {
     try {
         if (isUserMode)
         {
             if (nowSelectedItem.type == StatusItem.RESERVATION_TYPE)
             {
                 (new PasswordForm((form, password) => {
                     if (ServerClient.getInstance().reservationModify(nowSelectedItem.reservID, LoginClient.EncryptString(password), userNameTextBox.Text, contactTextBox.Text, contentTextBox.Text, isUserMode))
                     {
                         refresh();
                         form.Close();
                         MessageBox.Show("예약 정보 수정에 성공했습니다", "예약 수정 성공", MessageBoxButton.OK, MessageBoxImage.Information);
                     }
                     else
                     {
                         MessageBox.Show("비밀번호가 틀렸습니다", "예약 수정 실패", MessageBoxButton.OK, MessageBoxImage.Error);
                     }
                 })).ShowDialog();
             }
             else
             {
                 MessageBox.Show("강의 정보는 관리자만 수정할 수 있습니다", "예약 수정 실패", MessageBoxButton.OK, MessageBoxImage.Warning);
             }
         }
         else
         {
             if (nowSelectedItem.type == StatusItem.RESERVATION_TYPE)
             {
                 ServerClient.getInstance().reservationModify(nowSelectedItem.reservID, "", userNameTextBox.Text, contactTextBox.Text, contentTextBox.Text, isUserMode);
                 refresh();
                 MessageBox.Show("예약 정보 수정에 성공했습니다", "예약 수정 성공", MessageBoxButton.OK, MessageBoxImage.Information);
             }
             else
             {
                 MessageBox.Show("강의는 수정 할 수 없습니다.", "강의 수정", MessageBoxButton.OK, MessageBoxImage.Warning);
             }
         }
     } catch (ServerResult ex) {
         MessageBox.Show("알 수 없는 오류가 발생해서 예약 수정에 실패했습니다.", "예약 수정", MessageBoxButton.OK, MessageBoxImage.Error);
     }
 }