protected void Page_Load(object sender, EventArgs e) { if (IsMultiStoreConfiguration) { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Ecommerce.GlobalShippingOptions.ShippingCosts"); } else { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Configuration.ShippingOptions.ShippingCosts"); } shippingOption = EditedObjectParent as ShippingOptionInfo; if (shippingOption != null) { CheckEditedObjectSiteID(shippingOption.ShippingOptionSiteID); currency = CurrencyInfoProvider.GetMainCurrency(shippingOption.ShippingOptionSiteID); } // Init unigrid gridElem.OnAction += gridElem_OnAction; gridElem.OnExternalDataBound += gridElem_OnExternalDataBound; gridElem.OnAfterRetrieveData += gridElem_OnAfterRetrieveData; gridElem.ZeroRowsText = GetString("com.ui.shippingcost.edit_nodata"); gridElem.GridView.AllowSorting = false; }
protected void Page_Load(object sender, EventArgs e) { bool offerGlobalPaymentMethods = false; mShippingOptionId = QueryHelper.GetInteger("objectid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { int editedSiteId = mShippingOptionInfoObj.ShippingOptionSiteID; // Check object's site id CheckEditedObjectSiteID(editedSiteId); // Offer global payment methods when allowed offerGlobalPaymentMethods = ECommerceSettings.AllowGlobalPaymentMethods(editedSiteId); DataSet ds = PaymentOptionInfoProvider.GetPaymentOptionsForShipping(mShippingOptionId).OrderBy("PaymentOptionDisplayName"); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", DataHelper.GetStringValues(ds.Tables[0], "PaymentOptionID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.WhereCondition = GetSelectorWhereCondition(offerGlobalPaymentMethods); }
protected void Page_Load(object sender, EventArgs e) { mShippingOptionId = QueryHelper.GetInteger("objectid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { // Check object's site id CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); DataSet ds = ShippingOptionTaxClassInfoProvider.GetShippingOptionTaxClasses(mShippingOptionId); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", DataHelper.GetStringValues(ds.Tables[0], "TaxClassID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.OrderBy = "TaxClassDisplayName"; uniSelector.WhereCondition = GetSelectorWhereCondition(); }
/// <summary> /// Load data of editing shippingOption. /// </summary> /// <param name="shippingOptionObj">ShippingOption object</param> protected void LoadData(ShippingOptionInfo shippingOptionObj) { txtShippingOptionDisplayName.Text = shippingOptionObj.ShippingOptionDisplayName; txtShippingOptionCharge.Value = shippingOptionObj.ShippingOptionCharge; txtShippingOptionName.Text = shippingOptionObj.ShippingOptionName; chkShippingOptionEnabled.Checked = shippingOptionObj.ShippingOptionEnabled; }
protected void Page_Load(object sender, EventArgs e) { lblAvialable.Text = GetString("com.shippingoption.taxes"); mShippingOptionId = QueryHelper.GetInteger("shippingoptionid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { // Check object's site id CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); DataSet ds = ShippingOptionTaxClassInfoProvider.GetShippingOptionTaxClasses(mShippingOptionId); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", SystemDataHelper.GetStringValues(ds.Tables[0], "TaxClassID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.IconPath = GetObjectIconUrl("ecommerce.taxclass", "object.png"); uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.OrderBy = "TaxClassDisplayName"; uniSelector.WhereCondition = GetSelectorWhereCondition(); }
protected void Page_Load(object sender, EventArgs e) { mShippingOptionId = QueryHelper.GetInteger("shippingoptionid", 0); mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); currency = CurrencyInfoProvider.GetMainCurrency(mShippingOptionInfoObj.ShippingOptionSiteID); } // Init unigrid gridElem.OnAction += new OnActionEventHandler(gridElem_OnAction); gridElem.OnExternalDataBound += new OnExternalDataBoundEventHandler(gridElem_OnExternalDataBound); gridElem.OnAfterRetrieveData += new OnAfterRetrieveData(gridElem_OnAfterRetrieveData); gridElem.WhereCondition = "ShippingCostShippingOptionID = " + mShippingOptionId; gridElem.ZeroRowsText = GetString("com.ui.shippingcost.edit_nodata"); gridElem.GridView.AllowSorting = false; // Prepare the new shipping cost header action CurrentMaster.HeaderActions.AddAction(new HeaderAction() { Text = GetString("com.ui.shippingcost.edit_new"), RedirectUrl = ResolveUrl("ShippingOption_Edit_ShippingCosts_Edit.aspx?shippingCostShippingOptionId=" + mShippingOptionId + "&siteId=" + SiteID), ImageUrl = GetImageUrl("Objects/Ecommerce_ShippingOption/add.png"), ControlType = HeaderActionTypeEnum.Hyperlink }); }
/// <summary> /// Calculates prices of the given shipping option. /// </summary> /// <param name="shippingInfo">Shipping option info object (<see cref="ShippingOptionInfo"/>) for which the prices are calculated.</param> /// <param name="cart">Shopping cart (<see cref="ShoppingCart"/>) used to gather the price calculation information.</param> /// <returns><see cref="ShippingPrice"/> object containing the shipping's prices.</returns> public virtual ShippingPrice CalculateShippingOptionPrice(ShippingOptionInfo shippingInfo, ShoppingCart cart) { if (shippingInfo == null) { throw new ArgumentNullException(nameof(shippingInfo)); } if (cart == null) { throw new ArgumentNullException(nameof(cart)); } var originalCart = cart.OriginalCart; // Evaluate the cart to get total items price originalCart.Evaluate(); var request = Service.Resolve <IShoppingCartAdapterService>().GetCalculationRequest(originalCart); request.ShippingOption = shippingInfo; var calculatorData = new CalculatorData(request, new CalculationResult()); // Get shipping price var shippingPrice = Service.Resolve <IShippingPriceService>().GetShippingPrice(calculatorData, originalCart.TotalItemsPrice).Price; var roundingService = Service.Resolve <IRoundingServiceFactory>().GetRoundingService(originalCart.ShoppingCartSiteID); return(new ShippingPrice { Currency = cart.Currency, Price = roundingService.Round(shippingPrice, cart.Currency.OriginalCurrency), Tax = 0m }); }
protected void InitPaymentShipping() { if (currentSite != null) { // Get shipping option name ShippingOptionInfo shippingObj = ShoppingCart.ShippingOption; if (shippingObj != null) { mAddressCount++; tdShippingAddress.Visible = true; plcShipping.Visible = true; plcShippingOption.Visible = true; lblShippingOptionValue.Text = HTMLHelper.HTMLEncode(ResHelper.LocalizeString(shippingObj.ShippingOptionDisplayName)); lblShippingValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.TotalShipping, ShoppingCart.Currency); } else { tdShippingAddress.Visible = false; plcShippingOption.Visible = false; plcShipping.Visible = false; } } // Get payment method name PaymentOptionInfo paymentObj = PaymentOptionInfoProvider.GetPaymentOptionInfo(ShoppingCart.ShoppingCartPaymentOptionID); if (paymentObj != null) { lblPaymentMethodValue.Text = HTMLHelper.HTMLEncode(ResHelper.LocalizeString(paymentObj.PaymentOptionDisplayName)); } // Total price initialization lblTotalPriceValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.GrandTotal, ShoppingCart.Currency); lblTotalTaxValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.TotalTax, ShoppingCart.Currency); }
protected void Page_Load(object sender, EventArgs e) { mShippingOptionId = QueryHelper.GetInteger("shippingOptionID", 0); string shippingOptionName = ""; ShippingOptionInfo soi = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); if (soi != null) { editedSiteId = soi.ShippingOptionSiteID; // Check site ID CheckEditedObjectSiteID(editedSiteId); shippingOptionName = ResHelper.LocalizeString(soi.ShippingOptionDisplayName); } // Initializes page title and breadcrumbs string[,] breadcrumbs = new string[2, 3]; breadcrumbs[0, 0] = GetString("ShippingOption_EditHeader.ItemListLink"); breadcrumbs[0, 1] = "~/CMSModules/Ecommerce/Pages/Tools/Configuration/ShippingOptions/ShippingOption_List.aspx?siteId=" + SiteID; breadcrumbs[0, 2] = "configEdit"; breadcrumbs[1, 0] = FormatBreadcrumbObjectName(shippingOptionName, editedSiteId); breadcrumbs[1, 1] = ""; breadcrumbs[1, 2] = ""; CMSMasterPage master = (CMSMasterPage)CurrentMaster; master.Title.Breadcrumbs = breadcrumbs; master.Tabs.OnTabCreated += Tabs_OnTabCreated; }
/// <summary> /// Handles the UniGrid's OnAction event. /// </summary> /// <param name="actionName">Name of item (button) that throws event</param> /// <param name="actionArgument">ID (value of Primary key) of corresponding data row</param> protected void uniGrid_OnAction(string actionName, object actionArgument) { if (actionName == "edit") { URLHelper.Redirect("ShippingOption_Edit_Frameset.aspx?shippingOptionID=" + Convert.ToString(actionArgument) + "&siteId=" + SelectSite.SiteID); } else if (actionName == "delete") { ShippingOptionInfo shippingInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(ValidationHelper.GetInteger(actionArgument, 0)); // Nothing to delete if (shippingInfoObj == null) { return; } // Check permissions CheckConfigurationModification(shippingInfoObj.ShippingOptionSiteID); // Check dependencies if (ShippingOptionInfoProvider.CheckDependencies(shippingInfoObj.ShippingOptionID)) { lblError.Visible = true; lblError.Text = GetString("Ecommerce.DeleteDisabled"); return; } // Delete ShippingOptionInfo object from database ShippingOptionInfoProvider.DeleteShippingOptionInfo(shippingInfoObj); } }
/// <summary> /// Creates a shipping option model. /// </summary> /// <param name="shippingOption">Shipping option.</param> /// <param name="shippingOptions">List of shipping options.</param> public ShippingOptionModel(ShippingOptionInfo shippingOption, SelectList shippingOptions) { ShippingOptions = shippingOptions; if (shippingOption != null) { ShippingOptionID = shippingOption.ShippingOptionID; } }
protected void Page_Load(object sender, EventArgs e) { // Required field validator error messages initialization rfvDisplayName.ErrorMessage = GetString("general.requiresdisplayname"); rfvName.ErrorMessage = GetString("COM_ShippingOption_Edit.NameError"); txtShippingOptionCharge.EmptyErrorMessage = GetString("COM_ShippingOption_Edit.ChargeError"); txtShippingOptionCharge.ValidationErrorMessage = GetString("COM_ShippingOption_Edit.ChargePositive"); // Control initializations lblShippingOptionCharge.Text = GetString("COM_ShippingOption_Edit.ShippingOptionChargeLabel"); // Get shippingOption id from querystring mShippingOptionID = QueryHelper.GetInteger("shippingOptionID", 0); mEditedSiteId = ConfiguredSiteID; // Edit shipping option if (mShippingOptionID > 0) { ShippingOptionInfo shippingOptionObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionID); EditedObject = shippingOptionObj; if (shippingOptionObj != null) { mEditedSiteId = shippingOptionObj.ShippingOptionSiteID; CheckEditedObjectSiteID(mEditedSiteId); // Init file uploader file.ObjectID = mShippingOptionID; file.ObjectType = ECommerceObjectType.SHIPPINGOPTION; file.Category = MetaFileInfoProvider.OBJECT_CATEGORY_THUMBNAIL; file.SiteID = mEditedSiteId; // Fill editing form if (!RequestHelper.IsPostBack()) { LoadData(shippingOptionObj); // Show that the shippingOption was created or updated successfully if (QueryHelper.GetString("saved", "") == "1") { // Show message ShowChangesSaved(); } } } } // Ensure currency code after price value txtShippingOptionCharge.CurrencySiteID = mEditedSiteId; // Check presence of main currency string currencyWarning = CheckMainCurrency(mEditedSiteId); if (!string.IsNullOrEmpty(currencyWarning)) { ShowWarning(currencyWarning, null, null); } }
/// <summary> /// Creates a shipping option model. /// </summary> /// <param name="shippingOption">Shipping option.</param> /// <param name="shippingOptions">List of shipping options.</param> public ShippingOptionViewModel(ShippingOptionInfo shippingOption, SelectList shippingOptions) { ShippingOptions = shippingOptions; if (shippingOption != null) { ShippingOptionID = shippingOption.ShippingOptionID; ShippingOptionDisplayName = shippingOption.ShippingOptionDisplayName; } }
protected void Page_Load(object sender, EventArgs e) { // Check permissions for CMS Desk -> Ecommerce if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Configuration.ShippingOptions.PaymentMethods")) { RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Configuration.ShippingOptions.PaymentMethods"); } bool offerGlobalPaymentMethods = false; lblAvialable.Text = GetString("com.shippingoption.payments"); mShippingOptionId = QueryHelper.GetInteger("shippingoptionid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { int editedSiteId = mShippingOptionInfoObj.ShippingOptionSiteID; // Check object's site id CheckEditedObjectSiteID(editedSiteId); // Offer global payment methods when allowed or configuring global shipping option if (editedSiteId != 0) { SiteInfo si = SiteInfoProvider.GetSiteInfo(editedSiteId); if (si != null) { offerGlobalPaymentMethods = ECommerceSettings.AllowGlobalPaymentMethods(si.SiteName); } } // Configuring global shipping option else { offerGlobalPaymentMethods = true; } DataSet ds = PaymentOptionInfoProvider.GetPaymentOptionsForShipping(mShippingOptionId, false); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", SqlHelperClass.GetStringValues(ds.Tables[0], "PaymentOptionID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.IconPath = GetObjectIconUrl("ecommerce.paymentoption", "object.png"); uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.WhereCondition = GetSelectorWhereCondition(offerGlobalPaymentMethods); }
internal IEnumerable <ShippingOptionInfo> InitShippingOptions() { return(new[] { ShippingOptionDefault = new ShippingOptionInfo { ShippingOptionSiteID = SiteInfo.SiteID, ShippingOptionName = "Default", ShippingOptionDisplayName = "Default", ShippingOptionEnabled = true, ShippingOptionCarrierID = CarrierBasic.CarrierID } }); }
protected void Page_Load(object sender, EventArgs e) { shippingOption = EditedObjectParent as ShippingOptionInfo; if (shippingOption != null) { CheckEditedObjectSiteID(shippingOption.ShippingOptionSiteID); currency = CurrencyInfoProvider.GetMainCurrency(shippingOption.ShippingOptionSiteID); } // Init unigrid gridElem.OnExternalDataBound += gridElem_OnExternalDataBound; gridElem.ZeroRowsText = GetString("com.ui.shippingcost.edit_nodata"); gridElem.GridView.AllowSorting = false; }
protected void Page_Load(object sender, EventArgs e) { shippingOption = EditedObjectParent as ShippingOptionInfo; if (shippingOption != null) { CheckEditedObjectSiteID(shippingOption.ShippingOptionSiteID); currency = CurrencyInfoProvider.GetMainCurrency(shippingOption.ShippingOptionSiteID); } // Init unigrid gridElem.OnAction += gridElem_OnAction; gridElem.OnExternalDataBound += gridElem_OnExternalDataBound; gridElem.ZeroRowsText = GetString("com.ui.shippingcost.edit_nodata"); gridElem.GridView.AllowSorting = false; }
private decimal CalculateShipping(ShippingOptionInfo option) { if (option == null || (ShoppingCart.Currency == null)) { return(0m); } var request = Service.Resolve <IShoppingCartAdapterService>().GetCalculationRequest(ShoppingCart); request.ShippingOption = option; var result = Service.Resolve <IShoppingCartAdapterService>().GetCalculationResult(ShoppingCart); var shippingService = Service.Resolve <IShippingPriceService>(); return(shippingService.GetShippingPrice(new CalculatorData(request, result), ShoppingCart.TotalItemsPrice - ShoppingCart.OrderDiscount).Price); }
protected void Page_Load(object sender, EventArgs e) { if (IsMultiStoreConfiguration) { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Ecommerce.GlobalShippingOptions.ShippingCosts"); } else { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Configuration.ShippingOptions.ShippingCosts"); } // Register item validation EditForm.OnItemValidation += EditForm_OnItemValidation; mShippingOptionObj = EditedObjectParent as ShippingOptionInfo; if (mShippingOptionObj != null) { // Register check permissions EditForm.OnCheckPermissions += (s, args) => CheckConfigurationModification(mShippingOptionObj.ShippingOptionSiteID); } else { // Invalid shipping option EditedObject = null; return; } ShippingCostInfo shippingCostObj = EditedObject as ShippingCostInfo; if (shippingCostObj != null) { // Check if edited shipping cost is assigned to shipping option if ((shippingCostObj.ShippingCostID != 0) && (shippingCostObj.ShippingCostShippingOptionID != mShippingOptionObj.ShippingOptionID)) { EditedObject = null; } // Check if not editing object from another site CheckEditedObjectSiteID(mShippingOptionObj.ShippingOptionSiteID); // Check presence of main currency CheckMainCurrency(mShippingOptionObj.ShippingOptionSiteID); } }
protected void InitPaymentShipping() { // shipping option and payment method lblShippingOption.Text = GetString("Ecommerce.CartContent.ShippingOption"); lblPaymentMethod.Text = GetString("Ecommerce.CartContent.PaymentMethod"); lblShipping.Text = GetString("Ecommerce.CartContent.Shipping"); if (IsShippingNeeded && currentSite != null) { // get shipping option name ShippingOptionInfo shippingObj = ShoppingCart.ShippingOption; if (shippingObj != null) { mAddressCount++; //plcShippingAddress.Visible = true; tdShippingAddress.Visible = true; plcShipping.Visible = true; plcShippingOption.Visible = true; lblShippingOptionValue.Text = HTMLHelper.HTMLEncode(shippingObj.ShippingOptionDisplayName); lblShippingValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.TotalShipping, ShoppingCart.Currency); } else { //plcShippingAddress.Visible = false; tdShippingAddress.Visible = false; plcShippingOption.Visible = false; lblShippingValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.TotalShipping, ShoppingCart.Currency); //plcShipping.Visible = false; } } // get payment method name PaymentOptionInfo paymentObj = PaymentOptionInfoProvider.GetPaymentOptionInfo(ShoppingCart.ShoppingCartPaymentOptionID); if (paymentObj != null) { lblPaymentMethodValue.Text = HTMLHelper.HTMLEncode(paymentObj.PaymentOptionDisplayName); } // total price initialization lblTotalPrice.Text = GetString("ecommerce.cartcontent.totalprice"); lblTotalPriceValue.Text = CurrencyInfoProvider.GetFormattedPrice(ShoppingCart.RoundedTotalPrice, ShoppingCart.Currency); }
/// <summary> /// Ensures that the shipping option is applicable only if user is not purchasing one fo the excluded products /// </summary> /// <param name="cart">Shopping cart data.</param> /// <param name="shippingOption">Shipping option which is being checked for applicability.</param> /// <returns>True if the shipping option is allowed to be applied for the current cart items, otherwise returns false.</returns> protected override bool IsShippingOptionApplicableInternal(ShoppingCartInfo cart, ShippingOptionInfo shippingOption) { bool blnOptionAllowed = true; try { // Does not check availability if shopping cart or shipping option object is not available if ((cart == null) || (shippingOption == null)) { return true; } // Gets data for the ShippingOptionExcludedProducts field var shippingOptionExcludedProducts = shippingOption.GetValue("ShippingOptionExcludedProducts"); // Does not check availability if no products were permitted if (shippingOptionExcludedProducts == null) { return true; } // Parses retrieved data var excludedProducts = shippingOptionExcludedProducts.ToString().Split(';'); // Loop through the cart to see if it contains any of the selected products. // If so, do not allow the shipping option foreach (ShoppingCartItemInfo sci in cart.CartItems) { if (excludedProducts.Contains(ValidationHelper.GetString(sci.SKUID, ""))) { //Set the flag to false so the option is not allowed blnOptionAllowed = false; break; } } } catch(Exception ex) { EventLogProvider.LogException("CustomShippingOptionInfoProvider - IsShippingOptionApplicableInternal", "EXCEPTION", ex); } return blnOptionAllowed; }
/// <summary> /// Calculates prices of the given shipping option. /// </summary> /// <param name="shippingInfo">Shipping option info object (<see cref="ShippingOptionInfo"/>) for which the prices are calculated.</param> /// <param name="cart">Shopping cart (<see cref="ShoppingCart"/>) used to gather the price calculation information.</param> /// <param name="applyTaxes">Indicates if the prices are returned after applying taxes.</param> /// <returns><see cref="ShippingPrice"/> object containing the shipping's prices.</returns> public virtual ShippingPrice CalculateShippingOptionPrice(ShippingOptionInfo shippingInfo, ShoppingCart cart, bool applyTaxes = true) { var originalCart = cart.OriginalCart; lock (originalCart) { // Store the original shipping option ID var origShippingOptionId = originalCart.ShoppingCartShippingOptionID; // Calculate a hypothetical shipping cost for the shipping option from the supplied list item originalCart.ShoppingCartShippingOptionID = shippingInfo.ShippingOptionID; var price = CalculateShippingOptionPrice(originalCart, applyTaxes); // Restore the original shipping option ID originalCart.ShoppingCartShippingOptionID = origShippingOptionId; return(price); } }
/// <summary> /// If you sent an invoice requesting a shipping address and the parameter is_flexible was specified, /// the Bot API will send an <see href="https://core.telegram.org/bots/api#update">Update</see> with a shipping_query field to the bot. /// Use this method to reply to shipping queries. /// </summary> /// <param name="shippingQueryId">Unique identifier for the query to be answered</param> /// <param name="ok">Specify True if delivery to the specified address is possible and False if there are any problems /// (for example, if delivery to the specified address is not possible)</param> /// <param name="shippingOption">Required if ok is True. /// A JSON-serialized array of available shipping options.</param> /// <param name="errorMessage">Required if ok is False. /// Error message in human readable form that explains why it is impossible to complete the order (e.g. "Sorry, delivery to your desired address is unavailable'). /// Telegram will display this message to the user.</param> /// <returns>On success, True is returned.</returns> public BooleanResult AnswerShippingQuery(string shippingQueryId, bool ok, ShippingOptionInfo[] shippingOption = null, string errorMessage = null) { RestRequest request = NewRestRequest(mAnswerShippingQueryUri); request.AddParameter("shipping_query_id", shippingQueryId); request.AddParameter("ok", ok); if (shippingOption != null) { request.AddParameter("shipping_options", ShippingOptionInfo.GetJson(shippingOption)); } if (!string.IsNullOrEmpty(errorMessage)) { request.AddParameter("error_message", errorMessage); } return(ExecuteRequest <BooleanResult>(request) as BooleanResult); }
protected void Page_Load(object sender, EventArgs e) { if (IsMultiStoreConfiguration) { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Ecommerce.GlobalShippingOptions.TaxClasses"); } else { CheckUIElementAccessHierarchical(ModuleName.ECOMMERCE, "Configuration.ShippingOptions.TaxClasses"); } mShippingOptionId = QueryHelper.GetInteger("objectid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { // Check object's site id CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); DataSet ds = ShippingOptionTaxClassInfoProvider.GetShippingOptionTaxClasses(mShippingOptionId); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", DataHelper.GetStringValues(ds.Tables[0], "TaxClassID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.OrderBy = "TaxClassDisplayName"; uniSelector.WhereCondition = GetSelectorWhereCondition(); }
protected void Page_Load(object sender, EventArgs e) { // Check permissions for shipping costs if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Configuration.ShippingOptions.ShippingCosts")) { RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Configuration.ShippingOptions.ShippingCosts"); } mShippingOptionId = QueryHelper.GetInteger("shippingoptionid", 0); mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); currency = CurrencyInfoProvider.GetMainCurrency(mShippingOptionInfoObj.ShippingOptionSiteID); } gridElem.OnAction += new OnActionEventHandler(gridElem_OnAction); gridElem.OnExternalDataBound += new OnExternalDataBoundEventHandler(gridElem_OnExternalDataBound); gridElem.OnAfterRetrieveData += new OnAfterRetrieveData(gridElem_OnAfterRetrieveData); gridElem.WhereCondition = "ShippingCostShippingOptionID = " + mShippingOptionId; gridElem.ZeroRowsText = GetString("com.ui.shippingcost.edit_nodata"); gridElem.GridView.AllowSorting = false; // Set the master page actions element string[,] actions = new string[1, 10]; actions[0, 0] = HeaderActions.TYPE_HYPERLINK; actions[0, 1] = GetString("com.ui.shippingcost.edit_new"); actions[0, 3] = ResolveUrl("~/CMSModules/Ecommerce/Pages/Tools/Configuration/ShippingOptions/ShippingOption_Edit_ShippingCosts_Edit.aspx?shippingCostShippingOptionId=" + mShippingOptionId + "&siteId=" + SiteID); actions[0, 4] = null; actions[0, 5] = GetImageUrl("Objects/Ecommerce_ShippingOption/add.png"); this.CurrentMaster.HeaderActions.Actions = actions; this.CurrentMaster.Title.HelpTopicName = "shippingcosts_list"; this.CurrentMaster.Title.HelpName = "helpTopic"; }
protected void Page_Load(object sender, EventArgs e) { // Check permissions for Tax clases if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Configuration.ShippingOptions.TaxClasses")) { RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Configuration.ShippingOptions.TaxClasses"); } lblAvialable.Text = GetString("com.shippingoption.taxes"); mShippingOptionId = QueryHelper.GetInteger("shippingoptionid", 0); if (mShippingOptionId > 0) { mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); EditedObject = mShippingOptionInfoObj; if (mShippingOptionInfoObj != null) { // Check object's site id CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); DataSet ds = ShippingOptionTaxClassInfoProvider.GetShippingOptionTaxClasses(mShippingOptionId); if (!DataHelper.DataSourceIsEmpty(ds)) { mCurrentValues = TextHelper.Join(";", SqlHelperClass.GetStringValues(ds.Tables[0], "TaxClassID")); } if (!RequestHelper.IsPostBack()) { uniSelector.Value = mCurrentValues; } } } uniSelector.IconPath = GetObjectIconUrl("ecommerce.taxclass", "object.png"); uniSelector.OnSelectionChanged += uniSelector_OnSelectionChanged; uniSelector.OrderBy = "TaxClassDisplayName"; uniSelector.WhereCondition = GetSelectorWhereCondition(); }
protected void Page_Load(object sender, EventArgs e) { mShippingOptionId = QueryHelper.GetInteger("shippingOptionID", 0); string shippingOptionName = ""; ShippingOptionInfo soi = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); if (soi != null) { editedSiteId = soi.ShippingOptionSiteID; // Check site ID CheckEditedObjectSiteID(editedSiteId); shippingOptionName = ResHelper.LocalizeString(soi.ShippingOptionDisplayName); } // Initializes page title and breadcrumbs string[,] breadcrumbs = new string[2, 3]; breadcrumbs[0, 0] = GetString("ShippingOption_EditHeader.ItemListLink"); breadcrumbs[0, 1] = "~/CMSModules/Ecommerce/Pages/Tools/Configuration/ShippingOptions/ShippingOption_List.aspx?siteId=" + SiteID; breadcrumbs[0, 2] = "configEdit"; breadcrumbs[1, 0] = FormatBreadcrumbObjectName(shippingOptionName, editedSiteId); breadcrumbs[1, 1] = ""; breadcrumbs[1, 2] = ""; CMSMasterPage master = (CMSMasterPage)this.CurrentMaster; master.Title.Breadcrumbs = breadcrumbs; master.Title.TitleText = GetString("ShippingOption_EditHeader.TitleText"); master.Title.TitleImage = GetImageUrl("Objects/Ecommerce_ShippingOption/object.png"); master.Title.HelpTopicName = "newgeneral_tab2"; master.Title.HelpName = "helpTopic"; master.Tabs.ModuleName = "CMS.Ecommerce"; master.Tabs.ElementName = "Configuration.ShippingOptions"; master.Tabs.UrlTarget = "shippingOptionContent"; master.Tabs.OnTabCreated += new UITabs.TabCreatedEventHandler(Tabs_OnTabCreated); }
/// <summary> /// Ensures that only applicable shipping options are displayed in selector. /// </summary> /// <param name="ds"></param> /// <returns></returns> protected override DataSet OnAfterRetrieveData(DataSet ds) { if ((ds == null) || (ShoppingCart == null)) { return(ds); } var shippingOptions = ds.Tables[0].Select(); foreach (DataRow optionRow in shippingOptions) { int optionID = ValidationHelper.GetInteger(optionRow["ShippingOptionID"], 0); ShippingOptionInfo option = ShippingOptionInfoProvider.GetShippingOptionInfo(optionID); if ((option != null) && !ShippingOptionInfoProvider.IsShippingOptionApplicable(ShoppingCart, option)) { ds.Tables[0].Rows.Remove(optionRow); } } return(ds); }
protected void Page_Load(object sender, EventArgs e) { // Register item validation EditForm.OnItemValidation += EditForm_OnItemValidation; mShippingOptionObj = EditedObjectParent as ShippingOptionInfo; if (mShippingOptionObj != null) { // Register check permissions EditForm.OnCheckPermissions += (s, args) => CheckConfigurationModification(); } else { // Invalid shipping option EditedObject = null; return; } ShippingCostInfo shippingCostObj = EditedObject as ShippingCostInfo; if (shippingCostObj != null) { // Check if edited shipping cost is assigned to shipping option if ((shippingCostObj.ShippingCostID != 0) && (shippingCostObj.ShippingCostShippingOptionID != mShippingOptionObj.ShippingOptionID)) { EditedObject = null; } // Check if not editing object from another site CheckEditedObjectSiteID(mShippingOptionObj.ShippingOptionSiteID); // Check presence of main currency CheckMainCurrency(mShippingOptionObj.ShippingOptionSiteID); } }
public void AnswerShippingQueryTest() { ShippingOptionInfo shippingOption1 = new ShippingOptionInfo { Id = "idTest", Title = "titleTest", LabelPrice = new[] { new LabeledPriceInfo { Label = "LableTest1", Amount = 123 }, new LabeledPriceInfo { Label = "LabelTest2", Amount = 456 } } }; ShippingOptionInfo shippingOption2 = new ShippingOptionInfo { Id = "idTest", Title = "titleTest", LabelPrice = new[] { new LabeledPriceInfo { Label = "LableTest3", Amount = 123 }, new LabeledPriceInfo { Label = "LabelTest4", Amount = 456 } } }; ShippingOptionInfo[] shippingOption = { shippingOption1, shippingOption2 }; mBotOkResponse.AnswerShippingQuery("AnswerIdTest", false, shippingOption, "TestErrorMessage"); var request = MockServer.ServerOkResponse.SearchLogsFor(Requests.WithUrl("/botToken/answerShippingQuery").UsingPost()); ConsoleUtlis.PrintResult(request); Assert.Multiple(() => { Assert.AreEqual("shipping_query_id=AnswerIdTest&" + "ok=False&" + "shipping_options=%7B%0D%0A%20%20%22prices" + "%22%3A%20%5B%0D%0A%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%22id" + "%22%3A%20%22idTest%22%2C%0D%0A%20%20%20%20%20%20%22title" + "%22%3A%20%22titleTest%22%2C%0D%0A%20%20%20%20%20%20%22prices" + "%22%3A%20%5B%0D%0A%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%22label" + "%22%3A%20%22LableTest1" + "%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22amount" + "%22%3A%20123%0D%0A%20%20%20%20%20%20%20%20%7D%2C%0D%0A%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%22label" + "%22%3A%20%22LabelTest2%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22amount" + "%22%3A%20456%0D%0A%20%20%20%20%20%20%20%20%7D%0D%0A%20%20%20%20%20%20%5D%0D%0A%20%20%20%20%7D%2C%0D%0A%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%22id" + "%22%3A%20%22idTest%22%2C%0D%0A%20%20%20%20%20%20%22title%22%3A%20%22titleTest%22%2C%0D%0A%20%20%20%20%20%20%22prices" + "%22%3A%20%5B%0D%0A%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%22label" + "%22%3A%20%22LableTest3%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22amount" + "%22%3A%20123%0D%0A%20%20%20%20%20%20%20%20%7D%2C%0D%0A%20%20%20%20%20%20%20%20%7B%0D%0A%20%20%20%20%20%20%20%20%20%20%22label" + "%22%3A%20%22LabelTest4%22%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%22amount" + "%22%3A%20456%0D%0A%20%20%20%20%20%20%20%20%7D%0D%0A%20%20%20%20%20%20%5D%0D%0A%20%20%20%20%7D%0D%0A%20%20%5D%0D%0A%7D&" + "error_message=TestErrorMessage", request.FirstOrDefault()?.Body); Assert.AreEqual("/botToken/answerShippingQuery", request.FirstOrDefault()?.Url); Assert.Throws <Exception>( () => mBotBadResponse.AnswerShippingQuery("AnswerIdTest", false, shippingOption, "TestErrorMessage")); }); }
/// <summary> /// Sets data to database. /// </summary> protected void btnOK_Click(object sender, EventArgs e) { // Check permissions CheckConfigurationModification(ConfiguredSiteID); string errorMessage = new Validator() .NotEmpty(txtShippingOptionDisplayName.Text.Trim(), rfvDisplayName.ErrorMessage) .NotEmpty(txtShippingOptionName.Text.Trim(), rfvName.ErrorMessage).Result; if (!ValidationHelper.IsCodeName(txtShippingOptionName.Text.Trim())) { errorMessage = GetString("General.ErrorCodeNameInIdentifierFormat"); } if (errorMessage == "") { errorMessage = txtShippingOptionCharge.Validate(false); } if (errorMessage == "") { // ShippingOptionName must be unique ShippingOptionInfo shippingOptionObj = null; string siteWhere = (ConfiguredSiteID > 0) ? " AND (ShippingOptionSiteID = " + ConfiguredSiteID + " OR ShippingOptionSiteID IS NULL)" : ""; DataSet ds = ShippingOptionInfoProvider.GetShippingOptions("ShippingOptionName = '" + txtShippingOptionName.Text.Trim().Replace("'", "''") + "'" + siteWhere, null, 1, null); if (!DataHelper.DataSourceIsEmpty(ds)) { shippingOptionObj = new ShippingOptionInfo(ds.Tables[0].Rows[0]); } // If shippingOptionName value is unique if ((shippingOptionObj == null) || (shippingOptionObj.ShippingOptionID == mShippingOptionID)) { // If shippingOptionName value is unique -> determine whether it is update or insert if ((shippingOptionObj == null)) { // Get ShippingOptionInfo object by primary key shippingOptionObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionID); if (shippingOptionObj == null) { // Create new item -> insert shippingOptionObj = new ShippingOptionInfo(); shippingOptionObj.ShippingOptionSiteID = ConfiguredSiteID; } } shippingOptionObj.ShippingOptionDisplayName = txtShippingOptionDisplayName.Text.Trim(); shippingOptionObj.ShippingOptionDescription = txtDescription.Text.Trim(); shippingOptionObj.ShippingOptionCharge = txtShippingOptionCharge.Price; shippingOptionObj.ShippingOptionName = txtShippingOptionName.Text.Trim(); shippingOptionObj.ShippingOptionEnabled = chkShippingOptionEnabled.Checked; // Save record ShippingOptionInfoProvider.SetShippingOptionInfo(shippingOptionObj); // Upload file file.ObjectID = shippingOptionObj.ShippingOptionID; file.UploadFile(); URLHelper.Redirect("ShippingOption_Edit_Frameset.aspx?ShippingOptionID=" + Convert.ToString(shippingOptionObj.ShippingOptionID) + "&saved=1&siteId=" + SiteID); } else { // Show error message ShowError(GetString("ShippingOption_Edit.ShippingOptionNameExists")); } } else { // Show error message ShowError(errorMessage); } }
public ShippingOptionViewModel(ShippingOptionInfo shippingOption, SelectList shippingOptions) { ShippingOptions = shippingOptions; ShippingOptionID = shippingOption?.ShippingOptionID ?? 0; }
public ShippingOptionViewModel(ShippingOptionInfo shippingOption, SelectList shippingOptions, bool isVisible = true) { ShippingOptions = shippingOptions; ShippingOptionID = shippingOption?.ShippingOptionID ?? 0; IsVisible = isVisible; }
/// <summary> /// Creates shipping option. Called when the "Create option" button is pressed. /// </summary> private bool CreateShippingOption() { // Create new shipping option object ShippingOptionInfo newOption = new ShippingOptionInfo(); // Set the properties newOption.ShippingOptionDisplayName = "My new option"; newOption.ShippingOptionName = "MyNewOption"; newOption.ShippingOptionSiteID = CMSContext.CurrentSiteID; newOption.ShippingOptionCharge = 1.0; newOption.ShippingOptionEnabled = true; // Create the shipping option ShippingOptionInfoProvider.SetShippingOptionInfo(newOption); return true; }
protected void Page_Load(object sender, EventArgs e) { // Check permissions for CMS Desk -> Ecommerce if (!CMSContext.CurrentUser.IsAuthorizedPerUIElement("CMS.Ecommerce", "Configuration.ShippingOptions.ShippingCosts")) { RedirectToCMSDeskUIElementAccessDenied("CMS.Ecommerce", "Configuration.ShippingOptions.ShippingCosts"); } // Init labels lblShippingCostValue.Text = GetString("com.shippingcost.costlabel"); lblShippingCostMinWeight.Text = GetString("com.shippingcost.minweightlabel"); rfvMinWeight.ErrorMessage = GetString("com.shippingcost.minweightempty"); rvMinWeight.ErrorMessage = GetString("com.shippingcost.minweightrange"); txtShippingCostCharge.EmptyErrorMessage = GetString("com.shippingcost.costempty"); txtShippingCostCharge.ValidationErrorMessage = GetString("com.shippingcost.costrange"); btnOk.Text = GetString("General.OK"); // Get parameters from querystring mShippingCostId = QueryHelper.GetInteger("shippingCostId", 0); mShippingOptionId = QueryHelper.GetInteger("shippingCostShippingOptionId", 0); // Check if configured shipping option record belongs to correct site mShippingOptionInfoObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionId); if (mShippingOptionInfoObj != null) { CheckEditedObjectSiteID(mShippingOptionInfoObj.ShippingOptionSiteID); txtShippingCostCharge.CurrencySiteID = mShippingOptionInfoObj.ShippingOptionSiteID; // Check presence of main currency string currencyErr = CheckMainCurrency(mShippingOptionInfoObj.ShippingOptionSiteID); if (!string.IsNullOrEmpty(currencyErr)) { // Show message lblError.Text = currencyErr; lblError.Visible = true; } } string[,] breadcrumbs = new string[2, 4]; breadcrumbs[0, 0] = GetString("com.ui.shippingcost"); breadcrumbs[0, 1] = ResolveUrl("ShippingOption_Edit_ShippingCosts.aspx?shippingoptionid=" + mShippingOptionId + "&siteId=" + SiteID); // If true, then we will edit existing record if (mShippingCostId > 0) { // Check if there is already ShippingCostInfo with this shippingCostID ShippingCostInfo shippingCostInfo = ShippingCostInfoProvider.GetShippingCostInfo(mShippingCostId); // Check if shipping cost belongs to edited shipping option if ((shippingCostInfo != null) && (shippingCostInfo.ShippingCostShippingOptionID != mShippingOptionId)) { shippingCostInfo = null; } EditedObject = shippingCostInfo; if (shippingCostInfo != null) { // Fill editing form with existing data when not postback if (!RequestHelper.IsPostBack()) { LoadData(shippingCostInfo); // Show that the shippingCost was created or updated successfully if (QueryHelper.GetString("saved", "") == "1") { lblInfo.Visible = true; lblInfo.Text = GetString("General.ChangesSaved"); } } } // Set title to "shipping cost properties" breadcrumbs[1, 0] = GetString("com.ui.shippingcost.edit"); breadcrumbs[1, 1] = ""; } // Do this when creating new cost else { // Set header to "new item" breadcrumbs[1, 0] = GetString("com.ui.shippingcost.edit_new"); } this.CurrentMaster.Title.Breadcrumbs = breadcrumbs; }
/// <summary> /// Sets data to database. /// </summary> protected void btnOK_Click(object sender, EventArgs e) { // Check permissions CheckConfigurationModification(mEditedSiteId); string errorMessage = new Validator() .NotEmpty(txtShippingOptionDisplayName.Text.Trim(), rfvDisplayName.ErrorMessage) .NotEmpty(txtShippingOptionName.Text.Trim(), rfvName.ErrorMessage).Result; if (!ValidationHelper.IsCodeName(txtShippingOptionName.Text.Trim())) { errorMessage = GetString("General.ErrorCodeNameInIdentificatorFormat"); } if (errorMessage == "") { errorMessage = txtShippingOptionCharge.ValidatePrice(false); } if (errorMessage == "") { // ShippingOptionName must be unique ShippingOptionInfo shippingOptionObj = null; string siteWhere = (mEditedSiteId > 0) ? " AND (ShippingOptionSiteID = " + mEditedSiteId + " OR ShippingOptionSiteID IS NULL)" : ""; DataSet ds = ShippingOptionInfoProvider.GetShippingOptions("ShippingOptionName = '" + txtShippingOptionName.Text.Trim().Replace("'", "''") + "'" + siteWhere, null, 1, null); if (!DataHelper.DataSourceIsEmpty(ds)) { shippingOptionObj = new ShippingOptionInfo(ds.Tables[0].Rows[0]); } if ((shippingOptionObj == null) || (shippingOptionObj.ShippingOptionID == mShippingOptionID)) { // Get object if ((shippingOptionObj == null)) { shippingOptionObj = ShippingOptionInfoProvider.GetShippingOptionInfo(mShippingOptionID); if (shippingOptionObj == null) { shippingOptionObj = new ShippingOptionInfo(); shippingOptionObj.ShippingOptionSiteID = mEditedSiteId; } } shippingOptionObj.ShippingOptionDisplayName = txtShippingOptionDisplayName.Text.Trim(); shippingOptionObj.ShippingOptionCharge = txtShippingOptionCharge.Value; shippingOptionObj.ShippingOptionName = txtShippingOptionName.Text.Trim(); shippingOptionObj.ShippingOptionEnabled = chkShippingOptionEnabled.Checked; // Save changes ShippingOptionInfoProvider.SetShippingOptionInfo(shippingOptionObj); URLHelper.Redirect("ShippingOption_Edit_General.aspx?shippingOptionID=" + shippingOptionObj.ShippingOptionID + "&saved=1&siteId=" + SiteID); } else { lblError.Visible = true; lblError.Text = GetString("ShippingOption_Edit.ShippingOptionNameExists"); } } else { lblError.Visible = true; lblError.Text = errorMessage; } }
/// <summary> /// Gets and bulk updates shipping options. Called when the "Get and bulk update options" button is pressed. /// Expects the CreateShippingOption method to be run first. /// </summary> private bool GetAndBulkUpdateShippingOptions() { // Prepare the parameters string where = "ShippingOptionName LIKE N'MyNewOption%'"; where = SqlHelperClass.AddWhereCondition(where, "ShippingOptionSiteID = " + CMSContext.CurrentSiteID, "AND"); // Get the data DataSet options = ShippingOptionInfoProvider.GetShippingOptions(where, null); if (!DataHelper.DataSourceIsEmpty(options)) { // Loop through the individual items foreach (DataRow optionDr in options.Tables[0].Rows) { // Create object from DataRow ShippingOptionInfo modifyOption = new ShippingOptionInfo(optionDr); // Update the properties modifyOption.ShippingOptionDisplayName = modifyOption.ShippingOptionDisplayName.ToUpper(); // Update the shipping option ShippingOptionInfoProvider.SetShippingOptionInfo(modifyOption); } return true; } return false; }