Imports BVSoftware.BVC.Core Public Class configuration_shipping Inherits BaseAdminPage Protected WithEvents dgShipMethods As System.Web.UI.WebControls.DataGrid Protected WithEvents DeleteButton As MetaBuilders.WebControls.ConfirmedImageButton Protected WithEvents EditButton As System.Web.UI.WebControls.ImageButton Protected WithEvents MetaDescriptionControl As BVSoftware.WebControls.MetaTag Protected WithEvents MetaKeywordsControl As BVSoftware.WebControls.MetaTag Protected WithEvents chkTax As System.Web.UI.WebControls.CheckBox Protected WithEvents HandlingFee As System.Web.UI.WebControls.TextBox Protected WithEvents HandlingFeeType As System.Web.UI.WebControls.RadioButtonList Protected WithEvents btnCancel As System.Web.UI.WebControls.ImageButton Protected WithEvents btnSave As System.Web.UI.WebControls.ImageButton Protected WithEvents btnFedEx As System.Web.UI.WebControls.ImageButton Protected WithEvents btnUPS As System.Web.UI.WebControls.ImageButton Protected WithEvents btnUSPostal As System.Web.UI.WebControls.ImageButton Protected WithEvents msg As BVSoftware.WebControls.WebPageMessage Protected WithEvents ShippingNoAvailableMethodsMessageField As System.Web.UI.WebControls.TextBox Protected WithEvents RealTimeProviderField As BVSoftware.WebControls.SelectDropDownList Protected WithEvents btnAddShipMethod As System.Web.UI.WebControls.ImageButton #Region " Web Form Designer Generated Code " 'This call is required by the Web Form Designer. Private Sub InitializeComponent() End Sub Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init 'CODEGEN: This method call is required by the Web Form Designer 'Do not modify it using the code editor. InitializeComponent() End Sub #End Region Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load BVC2004Store.CheckThisPage(Security.RolePermission.LoginToAdmin) BVC2004Store.CheckThisPage(Security.RolePermission.AccessSettingsArea) If Not Page.IsPostBack Then MetaKeywordsControl.Content = WebAppSettings.MetaKeywords MetaDescriptionControl.Content = WebAppSettings.MetaDescription End If If Not Page.IsPostBack Then LoadMethods() HandlingFee.Text = WebAppSettings.HandlingFee chkTax.Checked = WebAppSettings.ChargeTaxOnShipping '2004.6 Select Case WebAppSettings.HandlingFeeType Case Shipping.HandlingFeeType.PerItem Me.HandlingFeeType.Items(1).Selected = True Case Shipping.HandlingFeeType.PerOrder Me.HandlingFeeType.Items(0).Selected = True Case Shipping.HandlingFeeType.PerPackage Me.HandlingFeeType.Items(2).Selected = True End Select Me.ShippingNoAvailableMethodsMessageField.Text = WebAppSettings.ShippingNoAvailableMethodsMessage Me.RealTimeProviderField.SelectByValue(WebAppSettings.ShippingRealTimeProvider) End If End Sub Private Sub LoadMethods() dgShipMethods.DataSource = ShippingServices.GetAllShippingMethods() dgShipMethods.DataBind() End Sub Private Sub dgShipMethods_Delete(ByVal sender As Object, ByVal e As DataGridCommandEventArgs) Handles dgShipMethods.DeleteCommand Dim deleteID As String = dgShipMethods.DataKeys(e.Item.ItemIndex) SaveChanges() Dim ShipMethods As New Shipping.ShipMethod ShipMethods.DeleteMethod(deleteID) LoadMethods() End Sub Private Sub dgShipMethods_Edit(ByVal sender As Object, ByVal e As DataGridCommandEventArgs) Handles dgShipMethods.EditCommand Dim editID As String = dgShipMethods.DataKeys(e.Item.ItemIndex) SaveChanges() Response.Redirect("configuration_shipping_edit.aspx?id=" & editID, True) End Sub Private Sub btnAddShipMethod_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnAddShipMethod.Click SaveChanges() Dim ShipMethod As New Shipping.ShipMethod Try Dim NewID As Integer = -1 ShipMethod.Name = "New Ship Method" ShipMethod.Type = Shipping.ShippingMethodType2.ByPrice ShipMethod.Adjustment = 0.0 ShipMethod.AdjustmentType = Shipping.ShippingMethodAdjustmentType.DollarAmount NewID = ShipMethod.Save() If NewID > 0 Then Response.Redirect("configuration_shipping_edit.aspx?id=" & NewID, True) Else msg.ShowError("Couldn't Add New Ship Method") End If Catch Ex As Exception msg.ShowException(Ex) End Try End Sub Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnCancel.Click Response.Redirect("configuration_display.aspx") End Sub Private Function SaveChanges() As Boolean Dim result As Boolean = False Try WebAppSettings.HandlingFee = String.Format("{0:0.00}", HandlingFee.Text) WebAppSettings.ChargeTaxOnShipping = Me.chkTax.Checked '2004.6 Select Case Me.HandlingFeeType.SelectedValue Case 1 WebAppSettings.HandlingFeeType = Shipping.HandlingFeeType.PerItem Case 2 WebAppSettings.HandlingFeeType = Shipping.HandlingFeeType.PerOrder Case 3 WebAppSettings.HandlingFeeType = Shipping.HandlingFeeType.PerPackage End Select WebAppSettings.ShippingNoAvailableMethodsMessage = Me.ShippingNoAvailableMethodsMessageField.Text WebAppSettings.ShippingRealTimeProvider = Me.RealTimeProviderField.SelectedValue msg.ShowOK("Changes Saved") result = True Catch Ex As Exception msg.ShowException(Ex) EventLog.LogEvent(Ex) End Try Return result End Function Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnSave.Click msg.Clear() SaveChanges() End Sub Private Sub btnFedEx_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnFedEx.Click SaveChanges() Response.Redirect("configuration_shipping_FedEx.aspx") End Sub Private Sub btnUPS_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnUPS.Click SaveChanges() Response.Redirect("configuration_shipping_UPS.aspx") End Sub Private Sub btnUSPostal_Click(ByVal sender As System.Object, ByVal e As System.Web.UI.ImageClickEventArgs) Handles btnUSPostal.Click SaveChanges() Response.Redirect("configuration_shipping_USPS.aspx") End Sub End Class