/// <summary> /// Fetches the shipping service settings. /// </summary> /// <returns></returns> private static ShippingServiceSettings FetchShippingServiceSettings() { DatabaseConfigurationProvider _databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = _databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; return(shippingServiceSettings); }
/// <summary> /// Sets the default shipping provider. /// </summary> /// <param name="defaultTaxProvider">The default tax provider.</param> /// <returns></returns> public static int SetDefaultShippingProvider(string defaultShippingProvider, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(defaultShippingProvider, DEFAULT_SHIPPING_PROVIDER); DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; shippingServiceSettings.DefaultProvider = defaultShippingProvider; int id = databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); return(id); }
/// <summary> /// Saves the specified shipping service settings. /// </summary> /// <param name="shippingServiceSettings">The shipping service settings.</param> /// <returns></returns> public static int Save(ShippingServiceSettings shippingServiceSettings, string userName) { Validator.ValidateObjectIsNotNull(shippingServiceSettings, SHIPPING_SERVICE_SETTINGS); Validator.ValidateObjectType(shippingServiceSettings, typeof(ShippingServiceSettings)); //Set a default provider, regardless of whether or not the service uses one. if (shippingServiceSettings.ProviderSettingsCollection.Count == 1) { shippingServiceSettings.DefaultProvider = shippingServiceSettings.ProviderSettingsCollection[0].Name; } DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); int id = databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); return(id); }
/// <summary> /// Loads the providers. /// </summary> private void LoadProviders() { DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; IShippingProvider shippingProvider = null; Type type = null; foreach (ProviderSettings providerSettings in shippingServiceSettings.ProviderSettingsCollection) { type = Type.GetType(providerSettings.Type); shippingProvider = Activator.CreateInstance(type, providerSettings.Arguments) as IShippingProvider; Validator.ValidateObjectIsNotNull(shippingProvider, SHIPPING_PROVIDER); _shippingProviderCollection.Add(shippingProvider); } }
/// <summary> /// Removes the shipping provider. /// </summary> /// <param name="providerName">Name of the provider.</param> public static void RemoveShippingProvider(string providerName, string userName) { Validator.ValidateStringArgumentIsNotNullOrEmptyString(providerName, PROVIDER_NAME); DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); ShippingServiceSettings shippingServiceSettings = databaseConfigurationProvider.FetchConfigurationByName(ShippingServiceSettings.SECTION_NAME) as ShippingServiceSettings; if (providerName == shippingServiceSettings.DefaultProvider) { throw new InvalidOperationException(Strings.ResourceManager.GetString("UnableToDeleteDefaultProvider")); } ProviderSettings providerSettings = shippingServiceSettings.ProviderSettingsCollection.Find(delegate(ProviderSettings theProviderSettings) { return(theProviderSettings.Name == providerName); }); if (providerSettings != null) { shippingServiceSettings.ProviderSettingsCollection.Remove(providerSettings); databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); } }
/// <summary> /// Handles the Load event of the Page control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param> protected void Page_Load(object sender, EventArgs e) { try { SetShippingGeneralSettingsProperties(); shippingServiceSettings = ShippingService.FetchConfiguredShippingProviders(); if(shippingServiceSettings == null) { shippingServiceSettings = new ShippingServiceSettings(); } if(!Page.IsPostBack) { LoadCountries(); chkUseShipping.Checked = shippingServiceSettings.UseShipping; txtShipFromZip.Text = shippingServiceSettings.ShipFromZip; ddlShipFromCountry.SelectedValue = shippingServiceSettings.ShipFromCountryCode; txtShippingBuffer.Text = StoreUtility.GetFormattedAmount(shippingServiceSettings.ShippingBuffer, false); } } catch(Exception ex) { Logger.Error(typeof(shippinggeneralsettings).Name + ".Page_Load", ex); base.MasterPage.MessageCenter.DisplayCriticalMessage(ex.Message); } }
/// <summary> /// Initializes a new instance of the <see cref="T:ShippingService"/> class. /// </summary> public ShippingService() { _shippingServiceSettings = ShippingService.FetchShippingServiceSettings(); _shippingProviderCollection = new ShippingProviderCollection(); LoadProviders(); }
/// <summary> /// Saves the specified shipping service settings. /// </summary> /// <param name="shippingServiceSettings">The shipping service settings.</param> /// <returns></returns> public static int Save(ShippingServiceSettings shippingServiceSettings, string userName) { Validator.ValidateObjectIsNotNull(shippingServiceSettings, SHIPPING_SERVICE_SETTINGS); Validator.ValidateObjectType(shippingServiceSettings, typeof(ShippingServiceSettings)); //Set a default provider, regardless of whether or not the service uses one. if(shippingServiceSettings.ProviderSettingsCollection.Count == 1) { shippingServiceSettings.DefaultProvider = shippingServiceSettings.ProviderSettingsCollection[0].Name; } DatabaseConfigurationProvider databaseConfigurationProvider = new DatabaseConfigurationProvider(); int id = databaseConfigurationProvider.SaveConfiguration(ShippingServiceSettings.SECTION_NAME, shippingServiceSettings, userName); return id; }
/// <summary> /// Saves the specified payment service settings. /// </summary> /// <param name="paymentServiceSettings">The payment service settings.</param> public int Save(ShippingServiceSettings shippingServiceSettings, string userName) { int id = ShippingService.Save(shippingServiceSettings, userName); return id; }
/// <summary> /// Initializes a new instance of the <see cref="T:ShippingService"/> class. /// </summary> public ShippingService() { _shippingServiceSettings = ShippingService.FetchShippingServiceSettings(); _shippingProviderCollection = new ShippingProviderCollection(); LoadProviders(); }
/// <summary> /// Fetches the configured shipping providers. /// </summary> /// <returns></returns> public static ShippingServiceSettings FetchConfiguredShippingProviders() { ShippingServiceSettings shippingServiceSettings = FetchShippingServiceSettings(); return(shippingServiceSettings); }
/// <summary> /// Handles the Load event of the Page control. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="e">The <see cref="T:System.EventArgs"/> instance containing the event data.</param> protected void Page_Load(object sender, EventArgs e) { try { SetSimpleWeightConfigurationProperties(); shippingServiceSettings = ShippingService.FetchConfiguredShippingProviders(); if(shippingServiceSettings != null) { foreach(ProviderSettings providerSettings in shippingServiceSettings.ProviderSettingsCollection) { if(providerSettings.Name == typeof(SimpleWeightShippingProvider).Name) { simpleWeightConfigurationSettings = providerSettings; } } } else { shippingServiceSettings = new ShippingServiceSettings(); } view = Utility.GetParameter("view"); switch(view) { case "c": pnlConfiguration.Visible = true; pnlData.Visible = false; break; case "d": LoadSimpleShippingWeightRates(); pnlData.Visible = true; pnlConfiguration.Visible = false; break; default: pnlConfiguration.Visible = true; pnlData.Visible = false; break; } } catch(Exception ex) { Logger.Error(typeof(simpleweightconfiguration).Name + ".Page_Load", ex); base.MasterPage.MessageCenter.DisplayCriticalMessage(ex.Message); } }