Example #1
0
        // Create tour
        protected void tourCreationController(object sender, EventArgs e)
        {
            TourErrorHandler tourHandler = new TourErrorHandler();
            string           tempStart   = createStartDate.Text;
            string           tempEnd     = createEndDate.Text;
            double           test;
            bool             tryDouble = double.TryParse(createPrice.Text, out test);

            if (createTourName.Text == "")
            {
                tourHandler.emptyTourName();
            }
            if (createCapacity.Text == "")
            {
                tourHandler.emptyCapacity();
            }
            if (!createCapacity.Text.All(char.IsDigit))
            {
                tourHandler.invalidCapacity();
            }
            if (createLocation.Text == "")
            {
                tourHandler.emptyLocation();
            }
            if (createDescription.Text == "")
            {
                tourHandler.emptyDescription();
            }

            if (createStartDate.Text == "")
            {
                tourHandler.emptyStartDate();
            }
            else if (!System.Text.RegularExpressions.Regex.IsMatch(tempStart, "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}"))
            {
                tourHandler.invalidStartDate();
            }

            if (createEndDate.Text == "")
            {
                tourHandler.emptyEndDate();
            }
            else if (!System.Text.RegularExpressions.Regex.IsMatch(tempEnd, "[0-9]{4}-[0-9]{2}-[0-9]{2} [0-9]{2}:[0-9]{2}:[0-9]{2}"))
            {
                tourHandler.invalidEndDate();
            }

            if (createPrice.Text == "")
            {
                tourHandler.emptyPrice();
            }
            if (tryDouble == false)
            {
                tourHandler.invalidPrice();
            }

            if (tourHandler.error == "")
            {
                DateTime startDate = DateTime.ParseExact(tempStart, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);
                DateTime endDate   = DateTime.ParseExact(tempEnd, "yyyy-MM-dd HH:mm:ss", System.Globalization.CultureInfo.InvariantCulture);

                if (endDate <= startDate)
                {
                    tourHandler.endBeforeStart();
                }

                if (tourHandler.error == "")
                {
                    tour newTour = new tour(currUser.getUserID(), createTourName.Text, int.Parse(createCapacity.Text), createLocation.Text, createDescription.Text, startDate, endDate, double.Parse(createPrice.Text), ddCreateStatus.SelectedValue);
                    newTour.createTour();
                    general_dialog.Visible = false;
                    Session["success"]     = "tourCreated";
                    Response.Redirect("main.aspx");
                }

                else
                {
                    general_dialog.InnerHtml = tourHandler.error;
                    general_dialog.Visible   = true;
                }
            }

            else
            {
                general_dialog.InnerHtml = tourHandler.error;
                general_dialog.Visible   = true;
            }
        }