private void Save_Click(object sender, RoutedEventArgs e)
        {
            if (Save.Content == "Add")
            {
                try
                {
                    TesterForPL.TesterAdress = new Address(Street.Text, BuidingNumber.Text, City.Text);
                    TesterForPL.setSchedual(SundayArr, MondayArr, TuesdayArr, WednesdayArr, ThursdayArr);
                    bl.AddTester(TesterForPL);
                    TesterGrid.Visibility = Visibility.Hidden;
                    MessageBox.Show("Tester saved successfully", "", MessageBoxButton.OK, MessageBoxImage.Information);
                    UpdateTester.IsEnabled = true;
                    DeleteTester.IsEnabled = true;
                }
                catch (Exception exception)
                {
                    MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    TesterGrid.Visibility = Visibility.Visible;
                }
            }

            if (Save.Content == "Update")
            {
                TesterForPL.TesterAdress = new Address(Street.Text, BuidingNumber.Text, City.Text);
                TesterForPL.setSchedual(SundayArr, MondayArr, TuesdayArr, WednesdayArr, ThursdayArr);
                bl.UpdateTester(TesterForPL);
                TesterForPL = new Tester();
                TesterComboBox.SelectedItem = null;
                this.TesterGrid.DataContext = TesterForPL;
                TesterGrid.Visibility       = Visibility.Hidden;
                MessageBox.Show("Tester saved successfully", "", MessageBoxButton.OK, MessageBoxImage.Information);
            }

            if (Save.Content == "Delete")
            {
                MessageBoxResult dialogResult = MessageBox.Show("Are you sure you want to delete?", "Warning", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
                if (dialogResult == MessageBoxResult.Yes)
                {
                    bl.DeleteTester(TesterForPL);
                    TesterGrid.Visibility = Visibility.Hidden;
                    MessageBox.Show("Tester successfully deleted.", "", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    TesterForPL            = new Tester();
                    TesterGrid.DataContext = TesterForPL;
                    if (bl.GetListOfTesters() == null)
                    {
                        UpdateTester.IsEnabled = false;
                        DeleteTester.IsEnabled = false;
                    }
                    else if (bl.GetListOfTesters().Count == 0)
                    {
                        UpdateTester.IsEnabled = false;
                        DeleteTester.IsEnabled = false;
                    }
                }
                else if (dialogResult == MessageBoxResult.No)
                {
                    TesterForPL            = new Tester();
                    TesterGrid.DataContext = TesterForPL;
                    TesterGrid.Visibility  = Visibility.Hidden;
                    MessageBox.Show("Tester not deleted.", "", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
            }

            if (Save.Content == "Check")
            {
                isWarnings();//empty filed
                switch (winCondition)
                {
                case "Add":
                    if (noErrors())
                    {
                        if (bl.TesterInSystem(TesterForPL.TesterId))
                        {
                            MessageBoxResult dialogResult = MessageBox.Show("Tester alredy exists in the system! Do you want to update?", "Warning", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
                            if (dialogResult == MessageBoxResult.Yes)
                            {
                                TesterComboBox.Visibility    = Visibility.Visible;
                                TesterComboBox.SelectedValue = (object)TesterForPL.TesterId;
                                TesterForPL = bl.GetListOfTesters()
                                              .FirstOrDefault(x => x.TesterId == testerIdTextBox.Text);
                            }
                            else if (dialogResult == MessageBoxResult.No)
                            {
                                TesterForPL            = new Tester();
                                TesterGrid.DataContext = TesterForPL;
                            }
                        }
                        else
                        {
                            Save.Content = "Add";
                        }
                    }
                    else
                    {
                        MessageBox.Show("Can't add Tester. Fill ID " +
                                        "and fix errors.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                    break;

                case "Update":
                    if (noErrors())
                    {
                        Save.Content = "Update";
                    }
                    break;

                case "Delete":
                    if (noErrors())
                    {
                        Save.Content = "Delete";
                    }
                    break;
                }
            }
        }
        private void Save_Click(object sender, RoutedEventArgs e)
        {
            if (Save.Content == "Add")
            {
                try
                {
                    //TesterForPL.TesterAddress = new Address(Street.Text, BuidingNumber.Text, City.Text);
                    TesterForPL.setSchedual(SundayArr, MondayArr, TuesdayArr, WednesdayArr, ThursdayArr);
                    bl.AddTester(TesterForPL);
                    TesterGrid.Visibility = Visibility.Hidden;
                    MessageBox.Show("Tester saved successfully", "", MessageBoxButton.OK, MessageBoxImage.Information);
                }

                catch (Exception exception)
                {
                    MessageBox.Show(exception.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                    TesterGrid.Visibility = Visibility.Visible;
                }
            }
            if (Save.Content == "Update")
            {
                //TesterForPL.TesterAddress = new Address(Street.Text, BuidingNumber.Text, City.Text);

                bl.UpdateTester(TesterForPL);
                TesterGrid.Visibility = Visibility.Hidden;
                MessageBox.Show("Tester saved successfully", "", MessageBoxButton.OK, MessageBoxImage.Information);
            }

            if (Save.Content == "Delete")
            {
                MessageBoxResult dialogResult = MessageBox.Show("Are you sure you want to delete?", "Warning", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
                if (dialogResult == MessageBoxResult.Yes)
                {
                    bl.DeleteTester(TesterForPL);
                    TesterGrid.Visibility = Visibility.Hidden;
                    MessageBox.Show("Tester successfully deleted.", "", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    TesterForPL            = new Tester();
                    TesterGrid.DataContext = TesterForPL;
                }
                else if (dialogResult == MessageBoxResult.No)
                {
                    TesterForPL            = new Tester();
                    TesterGrid.DataContext = TesterForPL;
                    TesterGrid.Visibility  = Visibility.Hidden;
                    MessageBox.Show("Tester not deleted.", "", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
            }

            if (Save.Content == "Check")
            {
                //empty filed
                if (string.IsNullOrWhiteSpace(firstNameTextBox.Text))
                {
                    NameErrors.Text              = "Warning. Filed is empty";
                    NameErrors.Foreground        = Brushes.Orange;
                    firstNameTextBox.BorderBrush = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(sirnameTextBox.Text))
                {
                    SirNameErrors.Text         = "Warning. Filed is empty";
                    SirNameErrors.Foreground   = Brushes.Orange;
                    sirnameTextBox.BorderBrush = Brushes.Orange;
                }
                if (testerGenderComboBox.SelectedItem == null)
                {
                    GenderError.Text                 = "Warning. No item selected";
                    GenderError.Foreground           = Brushes.Orange;
                    testerGenderComboBox.BorderBrush = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(phoneNumberTextBox.Text))
                {
                    PhoneNumberErrors.Text         = "Warning. Filed is empty";
                    PhoneNumberErrors.Foreground   = Brushes.Orange;
                    phoneNumberTextBox.BorderBrush = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(phoneNumberTextBox.Text))
                {
                    PhoneNumberErrors.Text         = "Warning. Filed is empty";
                    PhoneNumberErrors.Foreground   = Brushes.Orange;
                    phoneNumberTextBox.BorderBrush = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(emailTextBox.Text))
                {
                    EmailErrors.Text         = "Warning. Filed is empty";
                    EmailErrors.Foreground   = Brushes.Orange;
                    emailTextBox.BorderBrush = Brushes.Orange;
                }
                if (testercarComboBox.SelectedItem == null)
                {
                    CarError.Text                 = "Warning. No item selected";
                    CarError.Foreground           = Brushes.Orange;
                    testercarComboBox.BorderBrush = Brushes.Orange;
                }
                if (maxDistanceForTestTextBox.Text == "0" || maxDistanceForTestTextBox.Text == null)
                {
                    DistanceError.Text       = "Warning. Filed is empty";
                    DistanceError.Foreground = Brushes.Orange;
                    maxDistanceForTestTextBox.BorderBrush = Brushes.Orange;
                }
                if (yearsOfExperienceTextBox.Text == "0" || yearsOfExperienceTextBox.Text == null)
                {
                    ExperienceErrors.Text                = "Warning. Filed is empty";
                    ExperienceErrors.Foreground          = Brushes.Orange;
                    yearsOfExperienceTextBox.BorderBrush = Brushes.Orange;
                }
                if (maxTestsInaWeekTextBox.Text == "0" || maxTestsInaWeekTextBox.Text == null)
                {
                    MaxTestsError.Text                 = "Warning. Filed is empty";
                    MaxTestsError.Foreground           = Brushes.Orange;
                    maxTestsInaWeekTextBox.BorderBrush = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(City.Text))
                {
                    AddressErrors.Text       = "Warning. Filed is empty";
                    AddressErrors.Foreground = Brushes.Orange;
                    City.BorderBrush         = Brushes.Orange;
                }
                if (string.IsNullOrWhiteSpace(Street.Text))
                {
                    AddressErrors.Text       = "Warning. Filed is empty";
                    AddressErrors.Foreground = Brushes.Orange;
                    Street.BorderBrush       = Brushes.Orange;
                }
                if (!SundayArr.Any(x => x) && !MondayArr.Any(x => x) && !TuesdayArr.Any(x => x) && !WednesdayArr.Any(x => x) && !ThursdayArr.Any(x => x))//if schedule is empty
                {
                    ScheduleError.Text       = "Warning, No times selected";
                    ScheduleError.Foreground = Brushes.Orange;
                }



                if (noErrors() && TesterComboBox.Visibility == Visibility.Hidden)
                {
                    if (bl.TesterInSystem(TesterForPL.TesterId))
                    {
                        MessageBoxResult dialogResult = MessageBox.Show("Tester alredy exists in the system! Do you want to update?", "Warning", MessageBoxButton.YesNo, MessageBoxImage.Exclamation);
                        if (dialogResult == MessageBoxResult.Yes)
                        {
                            TesterComboBox.Visibility    = Visibility.Visible;
                            TesterComboBox.SelectedValue = (object)TesterForPL.TesterId;
                            TesterForPL = bl.GetListOfTesters()
                                          .FirstOrDefault(x => x.TesterId == testerIdTextBox.Text);
                        }
                        else if (dialogResult == MessageBoxResult.No)
                        {
                            TesterForPL            = new Tester();
                            TesterGrid.DataContext = TesterForPL;
                        }
                    }
                    else
                    {
                        Save.Content = "Add";
                    }
                }
                else if (noErrors())
                {
                    Save.Content = "Update";
                }
                else
                {
                    MessageBox.Show("Can't add Tester. Fill ID " +
                                    "and fix errors.", "Error", MessageBoxButton.OK, MessageBoxImage.Error);
                }
            }
        }