Step one of the checkout process.
By changing the values of the control's properties in the SitePages.config file for your Site, you can enable or disable certain behaviors, set certain defaults, alter aspects of the display or otherwise cusomtize your site's implementaion of the control.
The following describes properties pertaining to key functional areas of the control that can be configured to suit your needs.
General properties
The AccountIsOnFile indicates if the logged on user is onFile.
The DropShipButtonText gets or sets the text for the "Drop Ship" button.
The DropShipLabel gets or sets the drop ship label.
The OnFileButtonText gets or sets the text for the "On File" button.
Multi Ship General Properties
The MultiShipHintText gets or sets the text for the multi ship hint.
The MultiShipLabelDropShip gets or sets the multi ship label with drop ship address.
The MultiShipLabelNoDropShip gets or sets the multi ship label with no drop ship address.
The ShowMultiShipShipToName gets or sets a value indicating whether the multi ship to name is shown.
Multi Ship Address Properties
The ShowMultiShipCountry gets or sets a value indicating whether the multi ship country is shown.
The ShowMultiShipState gets or sets a value indicating whether the multi ship state is shown.
The ShowMultiShipCity gets or sets a value indicating whether the multi ship city is shown.
The ShowMultiShipZip gets or sets a value indicating whether the multi ship zip is shown.
The ShowMultiShipAddress1 gets or sets a value indicating whether the first multi ship address is shown.
The ShowMultiShipAddress2 gets or sets a value indicating whether the second multi ship address is shown.
The ShowMultiShipAddress3 gets or sets a value indicating whether the third multi ship address is shown.
The ShowMultiShipAddressCode gets or sets a value indicating whether the multi ship address code is shown.
Properties Inherited from the Base CyberStoreBaseControl
Properties specific to the CyberStoreBaseControl can be listed in the following categories:
- Override Properties
- Contextual Properties
Override Properties
When the IgnoreControl property is set to true, all processing of a control is skipped, and the control's Visible property is set to false ensuring that it is not rendered in the resulting CyberStore page.
Contextual Properties
Contextual properties define specific details about the current instance of the control based on context. Context can be set by any number of factors including the log in state of the Shopper, the Site being visited, or the properties that have been established for a control.
The AttributesBag property is used internal to control processing and is the collection of attributes, or properties, and their values based on how the control is configured. The attributes in this property are set by processing the SitePages.config file as well as any specific declared property values in any registered sub controls. It allows for the passing down of all properties to a control and any registered sub controls.
The ComConfig, UserData and Site_ID properties are read-only values made available to all CyberStore controls to aid in processing and establishing context about the Site and Shopper.
The table below lists and describes sub controls used by the default CheckOutAddress control.
The following is the markup for this control.
Developer's Note:
To create a custom version of the control, copy all of the code below into a file of the same name and place it into your Site's control folder (e.g., ../YourSiteFolder/Control). The CyberStore page engine will then override the default markup with your customized version.
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="CheckOutAddress.ascx.cs"
Inherits="Dovetail.Ecommerce.Controls.CheckOutAddress" %>
<@ Register TagPrefix="uc1" TagName="CommonStateDropDownControl" Src="~/Control/CommonStateDropDownControl.ascx" >
<@ Register Src="~/Control/CatalogSearchControl.ascx" TagPrefix="uc1" TagName="CatalogSearchControl" >
<!--<P class="BodyHeader">Checkout Shipping and Billing Information</P>-->
<script>
function OnMultiAddressRow(selectedValues) {
pnlb2b.PerformCallback(selectedValues);
}
function BuildDisplayString() {
var e = document.getElementById('cmbDropCountry');
var cmbValue = e.options[e.selectedIndex].text;
return txtDropAddress1.GetText() + "<br />" + txtDropAddress2.GetText() + "<br />" + txtDropAddress3.GetText() + "<br />" + txtDropCity.GetText() + ", " + txtDropState.GetText() + " " + txtDropZip.GetText() + "<br />" + cmbValue;
}
function BuildHiddenString() {
var e = document.getElementById('cmbDropCountry');
var cmbValue = e.options[e.selectedIndex].text;
return txtDropAddress1.GetText() + "|" + txtDropAddress2.GetText() + "|" + txtDropAddress3.GetText() + "|" + txtDropCity.GetText() + "|" + txtDropState.GetText() + "|" + txtDropZip.GetText() + "|" + cmbValue + "|" + txtDropShipToName.GetText() + "|" + txtDropPhone.GetText();
}
</script>
<table id="Table1" cellspacing="1" cellpadding="1" width="500" class="DefaultTable">
<tr>
<td>
<asp:Label CssClass="InfoMessage" ID="messageLabel" runat="server" Visible="false"
EnableViewState="false" />
<asp:ValidationSummary ID="ValidationSummary1" runat="server" CssClass="ValidationMessage"
ForeColor="Transparent" HeaderText="Important Message:"></asp:ValidationSummary>
</td>
</tr>
</table>
<dx:ASPxPanel ID="pnlb2c" runat="server" ClientIDMode="Static" ClientInstanceName="pnlb2c" DefaultButton="continueButton"
Visible="false">
<PanelCollection>
<dx:PanelContent>
<div id="divShippingAddress" visibile="true" runat="Server">
<table id="Table1" cellspacing="1" cellpadding="1" width="500" class="DefaultTable">
<tr class="HighlightTableRow">
<td style="width: 161px; height: 20px" align="right" class="ColumnLabel">
Shipping Information:
</td>
<td style="height: 20px" valign="top">
<br clear="all" />
</td>
</tr>
<tr>
<td class="FormLabel" style="width: 161px" align="right" runat="server" id="ShippingFirstNameLabelCell">
Name:
</td>
<td>
<asp:TextBox ID="shpFirstNameTextBox" runat="server" ClientIDMode="Static" CssClass="FormField"
Width="201px" MaxLength="30" />
<asp:Label ID="requiredLabel" CssClass="RequiredFieldLabel" runat="server" />
<asp:RequiredFieldValidator ID="FirstNameRequiredFieldValidator" runat="server" ControlToValidate="shpFirstNameTextBox"
ErrorMessage="First Name of Shipping Address is required" Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr runat="server" id="TrShippingLastName">
<td style="width: 161px" align="right" class="FormLabel" runat="server" id="ShippingLastNameLabelCell">
Last Name:
</td>
<td>
<asp:TextBox ID="shpLastNameTextBox" runat="server" CssClass="FormField" Width="201px"
MaxLength="19" />
<asp:Label ID="requiredLabel2" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator ID="LastNameRequiredValidator" runat="server" ControlToValidate="shpLastNameTextBox"
ErrorMessage="Last name of shipping address is required" Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 161px" align="right" class="FormLabel" runat="server" id="ShippingAddress1LabelCell">
Address:
</td>
<td>
<asp:TextBox ID="shpAddress1TextBox" ClientIDMode="Static" runat="server" CssClass="FormField"
Width="201px" />
<asp:Label ID="requiredLabel3" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator ID="AddressLineOneRequiredFieldValidator" runat="server"
ControlToValidate="shpAddress1TextBox" ErrorMessage="Shipping Address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 161px" class="FormLabel" runat="server" id="ShippingAddress2LabelCell">
</td>
<td>
<asp:TextBox ID="shpAddress2TextBox" ClientIDMode="Static" runat="server" CssClass="FormField"
Width="201px" />
</td>
</tr>
<tr>
<td style="width: 161px" class="FormLabel" runat="server" id="ShippingAddress3LabelCell">
</td>
<td>
<asp:TextBox ID="shpAddress3TextBox" ClientIDMode="Static" runat="server" CssClass="FormField"
Width="201px" />
</td>
</tr>
<tr>
<td style="width: 161px" align="right" class="FormLabel" runat="server" id="ShippingCityLabelCell">
City:
</td>
<td>
<asp:TextBox ID="shpCityTextBox" ClientIDMode="Static" runat="server" CssClass="FormField"
Width="201px" />
<asp:Label ID="requiredLabel4" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator ID="CityRequiredFieldValidator" runat="server" ControlToValidate="shpCityTextBox"
ErrorMessage="City of shipping address is required" Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 161px" align="right" class="FormLabel" runat="server" id="ShippingStateLabelCell">
State:
</td>
<td>
<uc1:CommonStateDropDownControl ID="CommonStateDropDownControl1" runat="server" />
<asp:Label ID="shpStateLabel" runat="server" CssClass="CheckOutAddress" />
<asp:TextBox ID="shpStateTextBox" ClientIDMode="Static" runat="Server" CssClass="FormField"
Width="201px" />
<asp:RequiredFieldValidator ID="StateRequiredFieldValidator" CssClass="RequiredFieldLabel"
runat="server" Display="None" ErrorMessage="State of shipping address is required"
ControlToValidate="CommonStateDropDownControl1">*</asp:RequiredFieldValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" CssClass="RequiredFieldLabel"
runat="server" Display="None" ErrorMessage="State of shipping address is required"
ControlToValidate="shpStateTextBox">*</asp:RequiredFieldValidator>
<asp:Label ID="Label1" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
</td>
</tr>
<tr>
<td style="width: 161px; height: 22px" align="right" class="FormLabel" runat="server"
id="ShippingZipLabelCell">
Zip:
</td>
<td style="height: 22px">
<asp:TextBox ID="shpZipTextBox" ClientIDMode="Static" runat="server" Width="104px"
CssClass="FormField" MaxLength="9" />
<asp:Label ID="requiredLabel5" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator ID="ZipcodeRequiredFieldValidator" runat="server" ControlToValidate="shpZipTextBox"
ErrorMessage="Zip code of shipping address is required" Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 161px; height: 22px" align="right" class="FormLabel" runat="server"
id="ShippingCountryLabelCell">
Country:
</td>
<td style="height: 22px">
<asp:TextBox ID="shpCountryTextBox" ClientIDMode="Static" runat="server" CssClass="FormField" />
</td>
</tr>
<tr>
<td style="width: 161px" align="right" class="FormLabel" runat="server" id="ShippingPhoneLabelCell">
Phone:
</td>
<td>
<asp:TextBox ID="shpPhoneTextBox" ClientIDMode="Static" runat="server" Width="151px"
CssClass="FormField" />
</td>
</tr>
</table>
</div>
<!--
Begin Billing Address
-->
<div id="divBillingAddress" runat="Server">
<table id="Table2" cellspacing="1" cellpadding="1" width="500" class="DefaultTable">
<tr class="HighlightTableRow">
<td style="width: 146px" class="ColumnLabel">
Billing Information:
</td>
<td>
<p>
<asp:CheckBox ID="sameasshippingButton" AutoPostBack="true" runat="server" Text="Same as Shipping Info"
OnCheckedChanged="sameasshippingButton_CheckedChanged" />
<p>
If you plan to pay by Credit Card please use the billing address on the credit card
here.</p>
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingFirstNameLabelCell">
Name:
</td>
<td>
<asp:TextBox ID="blgFirstNameTextBox" runat="server" Width="201px" CssClass="FormField"
MaxLength="10" />
<asp:Label ID="requiredLabel6" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="bFirstNameRequiredFieldValidator"
runat="server" ControlToValidate="blgFirstNameTextBox" ErrorMessage="First name of billing address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr runat="server" id="TrBillingLastName">
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingLastNameLabelCell">
Last Name:
</td>
<td>
<asp:TextBox ID="blgLastNameTextBox" runat="server" Width="201px" CssClass="FormField"
MaxLength="19" />
<asp:Label ID="requiredLabel7" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="blastRequiredFieldValidator"
runat="server" ControlToValidate="blgLastNameTextBox" ErrorMessage="Last name of billing address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingAddress1LabelCell">
Address:
</td>
<td>
<asp:TextBox ID="blgAddress1TextBox" runat="server" Width="199px" CssClass="FormField" />
<asp:Label ID="requiredLabel8" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="bAddressLineOneFieldValidator"
runat="server" ControlToValidate="blgAddress1TextBox" ErrorMessage="Billing address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 146px" class="FormLabel" runat="server" id="BillingAddress2LabelCell">
</td>
<td>
<asp:TextBox ID="blgAddress2TextBox" runat="server" Width="197px" CssClass="FormField" />
</td>
</tr>
<tr>
<td style="width: 146px" class="FormLabel" runat="server" id="BillingAddress3LabelCell">
</td>
<td>
<asp:TextBox ID="blgAddress3TextBox" runat="server" Width="200px" CssClass="FormField" />
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingCityLabelCell">
City:
</td>
<td>
<asp:TextBox ID="blgCityTextBox" runat="server" Width="199px" CssClass="FormField" />
<asp:Label ID="requiredLabel9" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="bCityRequiredFieldValidator"
runat="server" ControlToValidate="blgCityTextBox" ErrorMessage="City of billing address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingStateLabelCell">
State:
</td>
<td>
<uc1:CommonStateDropDownControl ID="CommonStateDropDownControl2" runat="server" />
<asp:TextBox ID="blgStateTextBox" runat="Server" Width="201px" CssClass="FormField" />
<asp:RequiredFieldValidator ID="bStateRequiredFieldValidator" CssClass="RequiredFieldLabel"
runat="server" Display="None" ErrorMessage="State of billing address is required"
ControlToValidate="CommonStateDropDownControl2">*</asp:RequiredFieldValidator>
<asp:Label ID="requiredLabel10" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" CssClass="RequiredFieldLabel"
runat="server" Display="None" ErrorMessage="State of billing address is required"
ControlToValidate="blgStateTextBox">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel" runat="server" id="BillingZipLabelCell">
Zip:
</td>
<td>
<asp:TextBox ID="blgZipTextBox" runat="server" Width="82px" CssClass="FormField"
MaxLength="9" />
<asp:Label ID="requiredLabel11" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="bZipRequiredFieldValidator"
runat="server" ControlToValidate="blgZipTextBox" ErrorMessage="Zip code of billing address is required"
Display="None">*</asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td style="width: 161px; height: 22px" align="right" class="FormLabel" runat="server"
id="BillingCountryLabelCell">
Country:
</td>
<td style="height: 22px">
<asp:TextBox ID="blgCountryTextBox" runat="server" CssClass="FormField" />
</td>
</tr>
<tr>
<td style="width: 146px" align="right" class="FormLabel">
Phone:
</td>
<td>
<asp:TextBox ID="blgPhoneTextBox" runat="server" Width="151px" CssClass="FormField" />
<asp:RequiredFieldValidator CssClass="RequiredFieldLabel" ID="BillingPhoneRequiredfieldvalidator"
runat="server" ControlToValidate="blgPhoneTextBox" ErrorMessage="Phone number of billing address is required"
Display="None">*</asp:RequiredFieldValidator>
<asp:Label ID="Label2" CssClass="RequiredFieldLabel" runat="server">*</asp:Label>
</td>
</tr>
<tr>
<td colspan="2" class="FormButtonMatte">
<asp:Button ID="continueButton" runat="server" ClientIDMode="Static" Text="Continue" CssClass="FormButtonAlternate"
OnClick="continueButton_Click" />
<asp:Button ID="cancelButton" runat="server" Text="Cancel" CssClass="FormButtonAlternate"
OnClick="cancelButton_Click" />
</td>
</tr>
</table>
</div>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxPanel>
<dx:ASPxCallbackPanel ID="pnlb2b" runat="server" ClientIDMode="Static" ClientInstanceName="pnlb2b" DefaultButton="btnb2bContinue"
OnCallback="pnlb2b_Callback" Visible="false">
<PanelCollection>
<dx:PanelContent>
<asp:HiddenField ID="hfShippingCode" ClientIDMode="Static" runat="server" />
<div class="ShippingAddressDiv" >
<div class="CustomerAddressHeadingDiv">
<span class="CustomerAddressHeading">Shipping Information</span>
<dx:ASPxButton ID="btnChangeDefault" runat="server" ClientIDMode="Static" ClientInstanceName="btnChangeDefault"
Text="Change Address" AutoPostBack="false" CssClass="ChangeDefaultShipButton" />
</div>
<div class="AddressRow">
<div class="AddressLabel">
Ship To:</div>
<div class="AddressField">
<dx:ASPxLabel ID="shpnameLabel" runat="server" ClientIDMode="Static" ClientInstanceName="shpnameLabel" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Address:
</div>
<div class="AddressField">
<dx:ASPxLabel ID="shpaddressLabel" runat="server" ClientIDMode="Static" ClientInstanceName="shpaddressLabel" />
</div>
<asp:HiddenField ID="hfDropShipping" ClientIDMode="Static" runat="server" />
</div>
<div class="AddressRow">
<div class="AddressLabel">
Phone:</div>
<div class="AddressField">
<dx:ASPxLabel ID="shpphoneLabel" runat="server" ClientIDMode="Static" ClientInstanceName="shpphoneLabel" />
</div>
</div>
</div>
<div class="BillingAddressDiv">
<div class="CustomerAddressHeadingDiv">
<span class="CustomerAddressHeading">Billing Information</span></div>
<div class="AddressRow">
<div class="AddressLabel">
Name:</div>
<div class="AddressField">
<dx:ASPxLabel ID="blgnameLabel" runat="server" ClientIDMode="Static" ClientInstanceName="blgnameLabel" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Address:</div>
<div class="AddressField">
<dx:ASPxLabel ID="blgaddressLabel" runat="server" ClientIDMode="Static" ClientInstanceName="blgaddressLabel" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Phone:</div>
<div class="AddressField">
<dx:ASPxLabel ID="blgphoneLabel" runat="server" ClientIDMode="Static" ClientInstanceName="blgphoneLabel" />
</div>
</div>
</div>
<div style="clear: both;">
</div>
<div class="ContinueCancelButtons" style="float: left;">
<dx:ASPxButton ID="btnMakeDefault" ClientIDMode="Static" ClientInstanceName="btnMakeDefault"
runat="server" Text="Make this my Default Shipping Address" AutoPostBack="false"
ClientSideEvents-Click="function(s,e){pnlb2b.PerformCallback(document.getElementById('hfShippingCode').value + ';true');}"
Visible="false" />
</div>
<div class="ContinueCancelButtons">
<dx:ASPxButton ID="btnb2bContinue" runat="server" ClientIDMode="Static" ClientInstanceName="btnb2bContinue"
Text="Continue" OnClick="continueButton_Click" />
<dx:ASPxButton ID="btnb2bCancel" runat="server" ClientIDMode="Static" ClientInstanceName="btnb2bCancel"
Text="Cancel" OnClick="cancelButton_Click" CssClass="CancelLink" />
</div>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxCallbackPanel>
<dx:ASPxPopupControl ID="popupMultiAddress" runat="server" ClientIDMode="Static"
ClientInstanceName="popupMultiAddress" CloseAction="CloseButton" ShowCloseButton="true"
PopupHorizontalAlign="WindowCenter" PopupVerticalAlign="WindowCenter" HeaderText=""
Modal="true" AllowDragging="true" AllowResize="true" Width="800px">
<ContentCollection>
<dx:PopupControlContentControl>
<fieldset>
<legend>Additional Ship To Addresses</legend>
<div id="defaultShipInstructions">
<div id="defaultShipLabel">
<dx:ASPxLabel ID="lbl1" runat="server" ClientIDMode="Static" ClientInstanceName="lbl1" />
</div>
<div id="defaultShipButton">
<dx:ASPxButton ID="btnPopupSwitch" runat="server" ClientIDMode="Static" ClientInstanceName="btnPopupSwitch"
Text="Add a One-Time Address" AutoPostBack="false" Font-Size="X-Small" />
</div>
</div>
<dx:ASPxPanel ID="pnlDropShip" ClientIDMode="Static" runat="server" ClientInstanceName="pnlDropShip"
ClientSideEvents-Init="">
<PanelCollection>
<dx:PanelContent>
<div id="OneTimeShippingDiv">
<div class="AddressRow">
<div class="AddressLabel">
Ship To Name
</div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropShipToName" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropShipToName"
ValidationSettings-ValidationGroup="DropShip" ValidationSettings-RequiredField-IsRequired="true" />
</div>
<div class="RequiredFieldLabel">*</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Address </div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropAddress1" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropAddress1"
ValidationSettings-ValidationGroup="DropShip" ValidationSettings-RequiredField-IsRequired="true" />
</div>
<div class="RequiredFieldLabel">*</div>
</div>
<div class="AddressRow">
<div class="AddressLabel"></div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropAddress2" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropAddress2" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel"></div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropAddress3" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropAddress3" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
City</div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropCity" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropCity"
ValidationSettings-ValidationGroup="DropShip" ValidationSettings-RequiredField-IsRequired="true" />
</div>
<div class="RequiredFieldLabel">*</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
State</div>
<div class="AddressField">
<uc1:CommonStateDropDownControl ID="CommonStateDropDownControl3" runat="server" ClientIDMode="Static" />
<asp:HiddenField ID="hfDropShipStateDropDownID" ClientIDMode="Static" runat="server" />
</div>
<div class="RequiredFieldLabel">*</div>
</div>
<div class="AddressRow Hidden">
<div class="AddressLabel">
</div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropState" ClientIDMode="Static" ClientInstanceName="txtDropState"
runat="Server" CssClass="AddressField FormField" ValidationSettings-ValidationGroup="DropShip" ValidationSettings-ErrorDisplayMode="ImageWithText" ValidationSettings-RequiredField-IsRequired="true" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Zip</div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropZip" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropZip"
ValidationSettings-ValidationGroup="DropShip" ValidationSettings-RequiredField-IsRequired="true" AutoCompleteType="None" />
</div>
<div class="RequiredFieldLabel">*</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Country</div>
<div class="AddressField">
<asp:DropDownList ID="cmbDropCountry" runat="server" ClientIDMode="Static" />
</div>
</div>
<div class="AddressRow">
<div class="AddressLabel">
Phone</div>
<div class="AddressField">
<dx:ASPxTextBox ID="txtDropPhone" runat="server" ClientIDMode="Static" ClientInstanceName="txtDropPhone"
MaskSettings-IncludeLiterals="None" />
</div>
</div>
<div class="ContinueCancelButtons">
<dx:ASPxButton ID="btnDropContinue" ClientIDMode="Static" runat="server" ClientInstanceName="btnDropContinue"
AutoPostBack="false" Text="Continue" ClientSideEvents-Click="function(s,e){
if(ASPxClientEdit.ValidateGroup('DropShip') && document.getElementById(document.getElementById('hfDropShipStateDropDownID').value).selectedIndex != 0)
{
if (document.getElementById(document.getElementById('hfDropShipStateDropDownID').value).selectedIndex == (document.getElementById(document.getElementById('hfDropShipStateDropDownID').value).length-1) && txtDropState.GetText().trim().length == 0)
{
alert('Please enter Other State');
}
else
{
document.getElementById('hfShippingCode').value='DROPSHIP';
shpnameLabel.SetText(txtDropShipToName.GetText());
shpaddressLabel.SetText(BuildDisplayString());
shpphoneLabel.SetText(txtDropPhone.GetText());
document.getElementById('hfDropShipping').value = BuildHiddenString();
popupMultiAddress.Hide();
}
}
else if(document.getElementById(document.getElementById('hfDropShipStateDropDownID').value).selectedIndex == 0)
{
alert('Please select a State');
}
}" />
<dx:ASPxButton ID="ASPxButton2" runat="server" AutoPostBack="false" ClientSideEvents-Click="function(s,e){popupMultiAddress.Hide();}"
Text="Cancel" CssClass="CancelLink" />
</div>
</div>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxPanel>
<dx:ASPxPanel ID="pnlMultiAddress" ClientIDMode="Static" runat="server" ClientInstanceName="pnlMultiAddress">
<PanelCollection>
<dx:PanelContent>
<div id="defaultShipHint">
<dx:ASPxLabel ID="ASPxLabel1" runat="server" />
</div>
<dx:ASPxGridView ID="grdMultiAddress" runat="server" ClientIDMode="Static" ClientInstanceName="grdMultiAddress"
Width="725px" CssClass="MultiShipLookupTable" OnLoad="grdMultiAddress_Load">
<Columns>
<dx:GridViewDataColumn FieldName="AccountShipping_ID" Caption="Code" Settings-AutoFilterCondition="Contains"
Width="40" />
<dx:GridViewDataColumn FieldName="ShipToName" Caption="Ship To Name" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="ADDRESS1" Caption="Address Line 1" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="ADDRESS2" Caption="Address Line 2" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="ADDRESS3" Caption="Address Line 3" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="City" Caption="City" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="State" Caption="State" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="Zip" Caption="Zip Code" Settings-AutoFilterCondition="Contains" />
<dx:GridViewDataColumn FieldName="Country" Caption="Country" Settings-AutoFilterCondition="Contains" />
</Columns>
<ClientSideEvents RowClick="function(s,e){grdMultiAddress.GetRowValues(e.visibleIndex, 'AccountShipping_ID', OnMultiAddressRow);popupMultiAddress.Hide();}" />
<SettingsPager AlwaysShowPager="true" PageSize="10" ShowEmptyDataRows="true" />
<Settings ShowFilterRow="true" />
<SettingsBehavior EnableRowHotTrack="true" />
</dx:ASPxGridView>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxPanel>
</fieldset>
</dx:PopupControlContentControl>
</ContentCollection>
</dx:ASPxPopupControl>