Example #1
0
    /// <summary>
    /// Sets data to database.
    /// </summary>
    protected void btnOK_Click(object sender, EventArgs e)
    {
        // Check module permissions
        bool global = (editedSiteId <= 0);

        if (!ECommerceContext.IsUserAuthorizedToModifyDiscountLevel(global))
        {
            if (global)
            {
                RedirectToAccessDenied("CMS.Ecommerce", "EcommerceGlobalModify");
            }
            else
            {
                RedirectToAccessDenied("CMS.Ecommerce", "EcommerceModify OR ModifyDiscounts");
            }
        }

        string errorMessage = new Validator().NotEmpty(txtDiscountLevelDisplayName.Text.Trim(), GetString("DiscountLevel_Edit.rfvDiscountLevelDisplayName.ErrorMessage"))
                              .NotEmpty(txtDiscountLevelName.Text.Trim(), GetString("DiscountLevel_Edit.rfvDiscountLevelName.ErrorMessage"))
                              .IsCodeName(txtDiscountLevelName.Text.Trim(), GetString("General.ErrorCodeNameInIdentificatorFormat"))
                              .NotEmpty(txtDiscountLevelValue.Text.Trim(), GetString("DiscountLevel_Edit.rfvDiscountLevelValue.ErrorMessage")).Result;

        // Is discount level name in code name format?
        if (errorMessage == "")
        {
            if (!ValidationHelper.IsCodeName(txtDiscountLevelName.Text.Trim()))
            {
                errorMessage = GetString("General.ErrorCodeNameInIdentificatorFormat");
            }
        }

        // Discount value validation
        if (errorMessage == "")
        {
            if (!ValidationHelper.IsInRange(0, 100, ValidationHelper.GetDouble(this.txtDiscountLevelValue.Text.Trim(), -1)))
            {
                errorMessage = GetString("Com.Error.RelativeDiscountValue");
            }
        }

        // From/to date validation
        if (errorMessage == "")
        {
            if ((!dtPickerDiscountLevelValidTo.IsValidRange()) || (!dtPickerDiscountLevelValidFrom.IsValidRange()))
            {
                errorMessage = GetString("general.errorinvaliddatetimerange");
            }

            if ((dtPickerDiscountLevelValidFrom.SelectedDateTime != DateTime.MinValue) &&
                (dtPickerDiscountLevelValidTo.SelectedDateTime != DateTime.MinValue) &&
                (dtPickerDiscountLevelValidFrom.SelectedDateTime >= dtPickerDiscountLevelValidTo.SelectedDateTime))
            {
                errorMessage = GetString("General.DateOverlaps");
            }
        }

        if (errorMessage == "")
        {
            // Discount level code name must be unique
            DiscountLevelInfo discountLevelObj = null;
            string            siteWhere        = (ConfiguredSiteID > 0) ? " AND (DiscountLevelSiteID = " + ConfiguredSiteID + " OR DiscountLevelSiteID IS NULL)" : "";
            DataSet           ds = DiscountLevelInfoProvider.GetDiscountLevels("DiscountLevelName = '" + txtDiscountLevelName.Text.Trim().Replace("'", "''") + "'" + siteWhere, null, 1, null);
            if (!DataHelper.DataSourceIsEmpty(ds))
            {
                discountLevelObj = new DiscountLevelInfo(ds.Tables[0].Rows[0]);
            }

            if ((discountLevelObj == null) || (discountLevelObj.DiscountLevelID == mDiscountLevelId))
            {
                // Get the object
                if (discountLevelObj == null)
                {
                    discountLevelObj = DiscountLevelInfoProvider.GetDiscountLevelInfo(mDiscountLevelId);
                    if (discountLevelObj == null)
                    {
                        discountLevelObj = new DiscountLevelInfo();
                        discountLevelObj.DiscountLevelSiteID = ConfiguredSiteID;
                    }
                }

                // Set values
                discountLevelObj.DiscountLevelValidFrom   = dtPickerDiscountLevelValidFrom.SelectedDateTime;
                discountLevelObj.DiscountLevelEnabled     = chkDiscountLevelEnabled.Checked;
                discountLevelObj.DiscountLevelName        = txtDiscountLevelName.Text.Trim();
                discountLevelObj.DiscountLevelValue       = Convert.ToDouble(txtDiscountLevelValue.Text.Trim());
                discountLevelObj.DiscountLevelValidTo     = dtPickerDiscountLevelValidTo.SelectedDateTime;
                discountLevelObj.DiscountLevelDisplayName = txtDiscountLevelDisplayName.Text.Trim();

                // Save to the database
                DiscountLevelInfoProvider.SetDiscountLevelInfo(discountLevelObj);

                URLHelper.Redirect("DiscountLevel_Edit.aspx?discountLevelId=" + Convert.ToString(discountLevelObj.DiscountLevelID) + "&saved=1&siteId=" + SiteID);
            }
            else
            {
                lblError.Visible = true;
                lblError.Text    = GetString("DiscountLevel_Edit.DiscountLevelNameExists");
            }
        }
        else
        {
            lblError.Visible = true;
            lblError.Text    = errorMessage;
        }
    }