﻿//patterns
var emailPattern = /^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
//var sqlscriptPattern = /(<)|(>)|(SCRIPT)|(&lt;)|(&gt;)|(%3c)|(%3e)|(\bSELECT\b)|(\bUPDATE\b)|(\bINSERT\b)|(\bDELETE\b)|(\bREVOKE\b)|(\bUNION\b)|(\bDROP\b)|(\bDATABASE\b)|(\bEXEC\b)|(&amp;lt;)|(&amp;gt;)|(--)/;
var sqlscriptPattern = /(<)|(>)|(SCRIPT)|(&lt;)|(&gt;)|(%3c)|(%3e)|(\bSELECT\b)|(\bUPDATE\b)|(\bINSERT\b)|(\bDELETE\b)|(\bREVOKE\b)|(\bTRUNCATE\b)|(\bDROP\b)|(\bDATABASE\b)|(\bEXEC\b)|(\bCREATE\b)|(\bALTER\b)|(\bCOMMENT\b)|(\bMERGE\b)|(&amp;lt;)|(&amp;gt;)|(--)/;
var zipPattern = /(^\d{5}(-\d{4})?$)|(^[ABCEGHJKLMNPRSTVXY]{1}\d{1}[A-Z]{1} *\d{1}[A-Z]{1}\d{1}$)/;
var datePattern = /^(?=\d)(?:(?:(?:(?:(?:0?[13578]|1[02])(\/|-|\.)31)\1|(?:(?:0?[1,3-9]|1[0-2])(\/|-|\.)(?:29|30)\2))(?:(?:1[6-9]|[2-9]\d)?\d{2})|(?:0?2(\/|-|\.)29\3(?:(?:(?:1[6-9]|[2-9]\d)?(?:0[48]|[2468][048]|[13579][26])|(?:(?:16|[2468][048]|[3579][26])00))))|(?:(?:0?[1-9])|(?:1[0-2]))(\/|-|\.)(?:0?[1-9]|1\d|2[0-8])\4(?:(?:1[6-9]|[2-9]\d)?\d{2}))($|\ (?=\d)))?(((0?[1-9]|1[012])(:[0-5]\d){0,2}(\ [AP]M))|([01]\d|2[0-3])(:[0-5]\d){1,2})?$/;
var passwordPattern = /^.*(?=.{6,}).*$/;
var blankPattern = /[\s]+/;

/*The following variables are used for "RemoveItem for your Cart" confirmation message*/
/*done by arengifo September 16, 2009*/
/*updated by arengifo September 17, 2009*/
var PopUp = null;
var insideDiv = 0;
var _x = 0;
var _y = 0;
var me = 0;
var constanty = 35;
var constantx = -217;
var arrow1 = 'url(/Images/a.png) top left no-repeat';
var arrow2 = 'url(/Images/b.png) top left no-repeat';
var image1 = 'url(/Images/bg.png) no-repeat left top';
var image2 = 'url(/Images/bg.png) no-repeat left top';
var xpos = 0;
var ypos = 0;
var divArrow = "arrow";
var divMsg = "msg"
/**/
function SearchProductExecute(e) 
{
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }

    if (keynum == 13) 
    {
        SearchProduct();
        return false;
    }
}
function ApplyCheckOutAsGuest() 
{
    PageMethods.ApplyCheckOutAsGuest(function(result) 
    {
        // success
        window.location = result;
    }, function() {
        // failed       
        window.location = ErrorPage;
    });
}

function ApplyCheckOutCreateAccount() {
    PageMethods.ApplyCheckOutCreateAccount(function() {
        // success
    window.location = CheckOutAccountUrl;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}

function EnabledStartButton() {
    var btnStart = $('ucCheckOutContent_wzdCheckOut_StartNavigationTemplateContainerID_StartNextButton');
    btnStart.disabled = true;
}

function DisabledStartButton() {
    var btnStart = $('ucCheckOutContent_wzdCheckOut_StartNavigationTemplateContainerID_StartNextButton');
    btnStart.disabled = false;
}

//Validate Selected Shipping Method
function ValidateSelectedShipping() {
    var hdnControls = $('ucCheckOutContent_wzdCheckOut_ssmShippingMethod_hdnDdlControlShipping');

    if (hdnControls) {
        var executeValid = 'Y';
        var groupForm = hdnControls.value.split('|');

        for (var i = 0; i < groupForm.length; i++) {
            var controls = groupForm[i].split(',');

            var ddlShippingMethod = $(controls[0]);
            var RequiredField = $(controls[1]);
            var myindexName = ddlShippingMethod.selectedIndex;
            var SelValueName = ddlShippingMethod.options[myindexName].value;
            if (SelValueName == 'selectshippingmethod') {
                executeValid = 'N';
                RequiredField.style.display = "block";
            }
            else {
                RequiredField.style.display = "none";
            }
        }

        if (executeValid == 'N') {
            return false;
        }
        else {
            return true;
        }
    }
    else {
        return false;
    }
}

//Validate keydown choose Billing Address
function ExecuteSubmitChooseBillingAddress(e, btn) {
    var boton = $(btn);
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        if (ValidateAddressControls('ucCheckOutContent_wzdCheckOut_cbaBillingAddress_')) { boton.disabled = true; } else { return false; } __doPostBack('ucCheckOutContent$wzdCheckOut$cbaBillingAddress$btnEnterAddress', '');
    }
    else {
        return true;
    }
}

//Validate keydown choose Billing Address
function ExecuteSubmitViewCartAddress(e, btn) {
    var boton = $(btn);
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        if (ValidateAddressControls('ucViewCartContent_ucViewCart_')) { boton.disabled = true; } else { return false; } __doPostBack('ucViewCartContent$ucViewCart$btnEnterAddress', '');
    }
    else {
        return true;
    }
}

var showWithSlide = true;

/*Part to Review Contract*/
function ViewOrderDetail(URL) {
    window.location = URL;
}

function CloseConfirmContract() {
    switchEmailBox(false, $('dvReviewContract'));
}
function OpenConfirmContract() {
    switchEmailBox(true, $('dvReviewContract'));
}

function SetCurrentContract(valueContract, imgContract) {
    if (!ValidateContractControlsFor()) {
        return;
    }
    var CurrentValue = $('ucCheckOutContent_wzdCheckOut_sscSummary_hdnCurrentValue');
    var CurrentImg = $('ucCheckOutContent_wzdCheckOut_sscSummary_hdnCurrentImg');
    CurrentValue.value = valueContract;
    CurrentImg.value = imgContract;
    switchEmailBox(true, $('dvReviewContract'));
}


function ValidateContractControlsFor() {
    //Divs
    var divCardNumberMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCardNumberMessage');
    var divCardValidNumberMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCardValidNumberMessage');
    var divNameOnCardMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivNameOnCardMessage');
    var divCVVMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCVVMessage');
    var dvExpirationDate = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvExpirationDate');
    var dvTermsOfConditionsMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvTermsOfConditionsMessage');

    //Values
    var cardNumber = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtCardNumber');
    var nameOnCard = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtNameOnCard');
    var cvv = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtCvv');
    var expirationDateMonth = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlExpirationDateMonth');
    var expirationDateYear = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlExpirationDateYear');
    var chkTermsOfConditions = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_chkTermsOfConditions');
    
    var executeSave = 'Y';

    var hdnMonthValue = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_hdnMonthValue');
    var hdnYearValue = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_hdnYearValue');

    if (cardNumber.value.trim() == "") {
        divCardValidNumberMessage.style.display = "none";
        divCardNumberMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        divCardNumberMessage.style.display = "none";
        if (isValidCreditCardNumber()) {
            divCardValidNumberMessage.style.display = "none";
        }
        else {
            divCardValidNumberMessage.style.display = "block";
            executeSave = 'N';
        }
    }
    if (nameOnCard.value.trim() == "") {
        divNameOnCardMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        divNameOnCardMessage.style.display = "none";
    }

    if (cvv.value.trim() == "") {
        divCVVMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        divCVVMessage.style.display = "none";
    }

    if (expirationDateMonth.value == '-1' || expirationDateYear.value == "-1") {
        dvExpirationDate.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvExpirationDate.style.display = "none";
    }

    if (expirationDateMonth.value != '-1' && expirationDateYear.value != "-1") {
        if (parseInt(expirationDateYear.value) < parseInt(hdnYearValue.value)) {
            dvExpirationDate.style.display = "block";
            executeSave = 'N';
        }
        else {
            if (parseInt(expirationDateYear.value) == parseInt(hdnYearValue.value) && parseInt(expirationDateMonth.value) < parseInt(hdnMonthValue.value)) {
                dvExpirationDate.style.display = "block";
                executeSave = 'N';
            }
            else {
                dvExpirationDate.style.display = "none";
            }
        }
    }
    
    if (!chkTermsOfConditions.checked) {
        dvTermsOfConditionsMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvTermsOfConditionsMessage.style.display = "none";
    }

    if (executeSave == 'N') {
        scroll(0,0);
        return false;
    }
    else {
        return true;
    }
}
/**/
function RetrieveCart() {
    PageMethods.RetrieveCart(function() {
        // success
    window.location = LoginPage;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function SaveCart() {
    PageMethods.SaveCart(function(result) {
        // success
        if (result) {
            switchEmailBox(true, $('dvSaveCartControlNotLogged'));
            return false;
        }
        else {
            switchEmailBox(true, $('dvSaveCartControl'));
        }
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function SearchProduct() {
    var searchProductCriteria = $('ucSearchProduct_txtSearchProduct').value.trim();

    if (sqlscriptPattern.test(searchProductCriteria.toUpperCase())) {
        $('dvSearchProductMessage').style.display = "block";
        return;
    }
    else {
        $('dvSearchProductMessage').style.display = "none";

        PageMethods.SearchProduct(searchProductCriteria, function() {
            // success
            window.location = ProductListPage;
        }, function() {
            // failed		
            window.location = ErrorPage;
        });
    }
}
function ActionDivPopUp(div, action) {
    var divSelected = $(div);
    if (divSelected) {
        divSelected.style.display = action;
    }
}

function OpenCloseAddressShipping(action, div) {
    if (action == '1')
        switchEmailBox(true, $(div));
    else
        switchEmailBox(false, $(div));

    return false;
}

function FinishButtonShow(action) {
    var FinishButton = $('ucCheckOutContent_wzdCheckOut_FinishNavigationTemplateContainerID_FinishButton');
    var FinishPreviousButton = $('ucCheckOutContent_wzdCheckOut_FinishNavigationTemplateContainerID_FinishPreviousButton');
    var btnOrder = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_btnOrder');
    var dvCreditCardControl = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvCreditCardControl');

    if (FinishButton) {
        FinishButton.style.display = action;
    }
    if (FinishPreviousButton) {
        FinishPreviousButton.style.display = action;
    }
}
function EnabledPlaceOrder() {
    var chkTermsOfConditions = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_chkTermsOfConditions');
    var btnOrder = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_btnOrder');

    if (chkTermsOfConditions.checked) {
        btnOrder.disabled = false;
        btnOrder.removeClassName("disabled");
    }
    else {
        btnOrder.disabled = true;
        btnOrder.addClassName("disabled");
    }
}
function StartNextButtonShow(action) {
    var NextButton = $('ucCheckOutContent_wzdCheckOut_StartNavigationTemplateContainerID_StartNextButton');
    if (NextButton) {
        NextButton.style.display = action;
    }
}

function NextButtonShow(action) {
    var NextButton = $('ucCheckOutContent_wzdCheckOut_StepNavigationTemplateContainerID_StepNextButton');
    if (NextButton) {
        NextButton.style.display = action;
    }
}

function clearText(thefield, type) {
    if (thefield.defaultValue == type && thefield.defaultValue == thefield.value) {
        thefield.value = "";
    }
}
function clearEmailText(thefield, value1, value2) {
    if (thefield.defaultValue == value1 && thefield.defaultValue == thefield.value || thefield.value == value2) {
        thefield.value = "";
    }
}
function replaceText(thefield, type) {
    if (thefield.value == "") {
        thefield.value = type;
    }
}
function VisibleAddressPanel(dropdown, control) {
    var myindex = dropdown.selectedIndex;
    var SelValue = dropdown.options[myindex].value;
    if (SelValue == 'SM2')
        document.getElementById(control).style.display = "none";
    else
        document.getElementById(control).style.display = "block";
}
function AddNewName2(dropdown, IsAnnualPass, controlLastName, controlFirstName, controlEmail, ddlGender, lblEmail, RequiredField) {
    var myindexName = dropdown.selectedIndex;
    var SelValueName = dropdown.options[myindexName].value;

    NameFriend = '';
    EmailFriend = '';
    Friend = SelValueName.split("|");
    if (Friend.length == 1) {
        NameFriend = Friend[0];
    }
    else if (Friend.length == 2) {
        NameFriend = Friend[0];
        EmailFriend = Friend[1];
    }

    var myindexGender = $(ddlGender).selectedIndex;
    var SelValueGender = $(ddlGender).options[myindexGender].text;
    $(RequiredField).style.display = "none";
    if (NameFriend == 'AddNewName') {
        $(controlLastName).style.display = "block";
        $(controlFirstName).style.display = "block";

        if (Friend.length == 1) {
            $(controlLastName).value = 'Last Name';
            $(controlFirstName).value = 'First Name';
        }
        else if (Friend.length == 2) {
            args = NameFriend.split(',');
            $(controlLastName).value = args[1].substr(1, args[0].length - 1);
            $(controlFirstName).value = args[0];
        }

        if (IsAnnualPass == 'true') {
            $(controlEmail).style.display = "block";
            $(ddlGender).style.display = "block";
            $(lblEmail).style.display = "none";
            if (Friend.length == 1)
                $(controlEmail).value = 'Email';
            else
                $(controlEmail).value = EmailFriend;
        }
    }
    else {
        $(controlLastName).style.display = "none";
        $(controlFirstName).style.display = "none";
        var args = NameFriend.split(',');
        $(controlLastName).value = args[0];
        $(controlFirstName).value = args[1].substr(1, args[0].length - 1);

        if (IsAnnualPass == 'true') {
            $(lblEmail).style.display = "none";
            $(ddlGender).style.display = "block";
            $(controlEmail).style.display = "block";
            $(lblEmail).innerHTML = $(controlEmail).value;
        }
    }

}
function AddNewName(dropdown, controlLastName, controlFirstName) {
    var myindex = dropdown.selectedIndex;
    var SelValue = dropdown.options[myindex].text;
    if (SelValue == 'Add new Name') {
        $(controlLastName).style.display = "block";
        $(controlFirstName).style.display = "block";
        $(controlLastName).value = 'Last Name';
        $(controlFirstName).value = 'First Name';
    }
    else {
        $(controlLastName).style.display = "none";
        $(controlFirstName).style.display = "none";
        var args = SelValue.split(',');
        $(controlLastName).value = args[0];
        $(controlFirstName).value = args[1].substr(1, args[0].length - 1);
    }
}
function ChangeAddressAnnualPass(dropdown, controlNewAddress, controlEditAddress) {
    var myindex = dropdown.selectedIndex;
    var SelValue = dropdown.options[myindex].text;
    if (SelValue == 'Select Address') {
        $(controlEditAddress).style.display = "none";
    }
    else {
        $(controlEditAddress).style.display = "block";
    }
}
function ShowWaitBox() {
    $('waitBox').style.display = "block";
}
function ValidateEventControl(e) {
    var keynum = 0;
    if (window.event) // IE 
    {
        keynum = e.keyCode;
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which;
    }
    if (keynum) {
        if (keynum == 9)
            return false;
        else
            return true;
    }
    else
        return true;
}
function OnChange(dropdown, control) {
    var myindex = dropdown.selectedIndex;
    var SelValue = dropdown.options[myindex].value;
    document.getElementById(control).innerHTML = SelValue;
}
function OpenAddressDiv() {
    switchEmailBox(true, $('dvAddress'));
}
function CloseAddressDiv() {
    switchEmailBox(false, $('dvAddress'));
}
function ActionRedirectDiv(action, controlDiv, PageRedirect) {
    if (action == '1') {
        switchEmailBox(true, $(controlDiv));
    }
    else {
        switchEmailBox(false, $(controlDiv));
    }

    if ($('ucViewCartContent_ucEnterPromoCode_hdnRedirect') == null) return;

    if ($('ucViewCartContent_ucEnterPromoCode_hdnRedirect').value == '1')
        window.location = PageRedirect;
}
function ActionDiv(action, controlDiv, PostRedirect) {
    $('ucViewCartContent_ucEnterPromoCode_hdnRedirect').value = PostRedirect;
    if (action == '1') {
        switchEmailBox(true, $(controlDiv));
    }
    else {
        switchEmailBox(false, $(controlDiv));
    }
}
function ActionDiv2(action, controlDiv, PostRedirect) {
    $('content_right_usercontrol_EnterPromoCode1_hdnRedirect').value = PostRedirect;
    if (action == '1') {
        switchEmailBox(true, $(controlDiv));
    }
    else {
        switchEmailBox(false, $(controlDiv));
    }

}
function CloseDivActionExecute(e, controlDiv, PageRedirect) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        ActionRedirectDiv('2', controlDiv, PageRedirect);
    }
    if (keynum == 27) {
        ActionRedirectDiv('2', controlDiv, PageRedirect);
    }
}
function CloseResultProcessOrderExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        CloseResultProcessOrderDiv();
    }
    if (keynum == 27) {
        CloseResultProcessOrderDiv();
    }
}

function OpenResultProcessAddressDiv() {
    NextButtonShow('none');
    switchEmailBox(true, $('dvResultSetShipping'));
    return false;
}
function CloseResultSetShippingExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        CloseResultSetShippingDiv();
    }
    if (keynum == 27) {
        CloseResultSetShippingDiv();
    }
}
function CloseResultSetShippingDiv() {
    switchEmailBox(false, $('dvResultSetShipping'));
    return false;
}
function OpenResultSetShippingDiv() {
    NextButtonShow('none');
    switchEmailBox(true, $('dvResultSetShipping'));
    return false;
}
function CloseAddressExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter
    if (keynum == 27) {
        CloseAddressDiv();
    }
}
function CloseContractExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        CloseContractDiv();
    }
    if (keynum == 27) {
        CloseContractDiv();
    }
}
function CloseContractDiv() {
    switchEmailBox(false, $('dvReviewContract'));
}
function CloseViewCartExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 13) {
        CloseViewCartDiv();
    }
    if (keynum == 27) {
        CloseAddressDiv();
    }
}
function CloseViewCartDiv() {
    switchEmailBox(false, $('dvViewCartUpdate'));
}
function OpenViewCartDiv() {
    switchEmailBox(true, $('dvViewCartUpdate'));
}
function ShowWaitBoxPromocode() {
    $('waitBoxPromocode').style.display = "block";
}
function EnterBirthday(obj, e) {
    opc = false;
    if (window.event) {
        keynum = e.keyCode;
    }
    else if (e.which) {
        keynum = e.which;
    }

    if (keynum > 47 && keynum < 58) {
        opc = true;
    }
    else {
        if (keynum == 0 || keynum == 8) {
            opc = true;
        }
    }
    return opc;
}
function mask(str, textbox, loc, delim) {
    var locs = loc.split(',');

    for (var i = 0; i <= locs.length; i++) {
        for (var k = 0; k <= str.length; k++) {
            if (k == locs[i]) {
                if (str.substring(k, k + 1) != delim) {
                    str = str.substring(0, k) + delim + str.substring(k, str.length)
                }
            }
        }
    }
    textbox.value = str
}
function GetInformationProduct(virtualCatalogName, productID, variantID) {
    switchEmailBox(true, $('dvProductDetailBox'));
    PageMethods.GetInformationProduct(virtualCatalogName, productID, variantID, function(result) {
        // success            
        if (result != "") {
            var args = result.split('|');
            $('lblFullDetailTitle').innerHTML = args[0];
            $('lblFullDetailSubTitle').innerHTML = args[0];
            $('dvProductDetail').innerHTML = args[1];
        }
    }, function() {
        // failed
    window.location = ErrorPage;
    });
}

function OpenSendEmailCart() 
{
    switchEmailBox(true, $('EmailCartbox'));
    $('ucViewCartContent_emailCart').focus();
}
function OpenPrintCart() {
    switchEmailBox(true, $('PrintCartBox'));
}
function ValidateEmailCart() 
{
    var execute = 'Y';

    if (!ValidateEmailMap($('ucViewCartContent_emailCart').value.trim())) 
    {
        $('dvMessageEmailCart').show();
        execute = 'N';
    }
    else {
        $('dvMessageEmailCart').hide();
    }

    if (execute == 'Y') 
    {
        switchEmailBox(false, $('EmailCartbox'));
        switchEmailBox(true, $('dvEmailCartConfirm'));         
    }
}
function SendEmailCart() 
{    
    PageMethods.SendEmailCart($('ucViewCartContent_emailCart').value.trim(), $('messageCart').value.trim(), function() {
        // success            
        var messageConfirm = $("ucViewCartContent_hdnTextEmailCartConfirm").value;
        $("ucViewCartContent_lblTextEmailCartConfirm").innerHTML = messageConfirm.replace("[email]", $('ucViewCartContent_emailCart').value.trim());
        
        CloseEmailCart();
        switchEmailBox(true, $("dvEmailCartCongratulations"));
    }, function() {
        // failed		    
        window.location = ErrorPage;
    });
}
function CloseEmailCart() 
{    
    if (UserLogged == "N") 
    {
        $('ucViewCartContent_emailCart').value = "";
    }
    $('messageCart').value = "";
    $('dvMessageEmailCart').hide();    
    switchEmailBox(false, $("EmailCartbox"));
    switchEmailBox(false, $("dvEmailCartConfirm"));
}
function CloseBoxCart(e, control, type) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }
    //27 ESC, 13 Enter     
    if (keynum == 27) {
        if (type == 'Login') {
            CloseLoginTop();
        }
        else {
            switchEmailBox(false, control);
        }
        return false;
    }
    else if (keynum == 13) {
        if (type == 'Print') {
            window.print();
        }
        else if (type == 'Email') {
            SendEmailCart();
        }
        else if (type == 'EmailConfirm') {
            switchEmailBox(false, control);
        }
        else if (type == 'Login') {
            LogIn();
        }
        return false;
    }
}
function ChangeDivPosition(controlName) {
    var html = document.documentElement;
    var control = $(controlName);
    control.setStyle({
        top: "-5px",
        left: (html.clientWidth - control.getWidth()) / 2
				+ (isIE6 ? html.scrollLeft : 0) + "px",
        display: "block",
        position: isIE6 ? "absolute" : "fixed",
        "z-index": 20001
    });
}

function ValidateControls() {
    //Divs        
    var dvEmailMessage = $('uccustomerprofile1_dvEmailMessage');
    var dvZipMessage = $('uccustomerprofile1_dvZipMessage');
    var dvFirstName = $('uccustomerprofile1_dvFirstName');
    var dvLastNameMessage = $('uccustomerprofile1_dvLastNameMessage');
    var dvCountryMessage = $('uccustomerprofile1_dvCountryMessage');
    var dvMessageOver18 = $('uccustomerprofile1_dvMessageOver18');
    var dvPassword = $('uccustomerprofile1_dvPassword');
    dvPassword.addClassName("error");
    var dvQuestion = $('uccustomerprofile1_dvQuestion');
    var dvAnswer = $('uccustomerprofile1_dvAnswer');
    var dvBirthdateMessage = $('uccustomerprofile1_dvBirthdateMessage');
    var dvSectionLogin = $('uccustomerprofile1_dvSectionLogin');

    //Values
    var email = $('uccustomerprofile1_txtEmail');
    var firstName = $('uccustomerprofile1_txtFirstName').value.trim();
    var lastName = $('uccustomerprofile1_txtLastName').value.trim();
    var zipCode = $('uccustomerprofile1_txtZipCode').value.trim();
    var countryControl = $("uccustomerprofile1_ddlCountry");
    var password = $('uccustomerprofile1_txtPassword');
    var confirmPassword = $('uccustomerprofile1_txtConfirmPassword');
    var securityQuestion = $('uccustomerprofile1_ddlSecurityQuestions');
    var securityAnswer = $('uccustomerprofile1_txtSecurityAnswer').value.trim();
    var lblMessagePassword = $('uccustomerprofile1_lblMessagePassword');
    var isZipCodeInvalid = false;

    var executeSave = 'Y';

    if (firstName == "" || sqlscriptPattern.test(firstName.toUpperCase())) {
        dvFirstName.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvFirstName.style.display = "none";
    }

    if (lastName == "" || sqlscriptPattern.test(lastName.toUpperCase())) {
        dvLastNameMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvLastNameMessage.style.display = "none";
    }

    if (countryControl.value == "-1") {
        dvCountryMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvCountryMessage.style.display = "none";
    }

    if (zipCode != "" && sqlscriptPattern.test(zipCode.toUpperCase())) {
        isZipCodeInvalid = true;
        dvZipMessage.style.display = "block";
        $('uccustomerprofile1_lblMessageZip').innerHTML = $('uccustomerprofile1_hdnReqexZipCodeMessage').value;
        executeSave = 'N';
    }
    else {
        isZipCodeInvalid = false;
        dvZipMessage.style.display = "none";
    }

    if (!isZipCodeInvalid) {
        if (countryControl.value == USValue) {
            if (zipCode == "" || !zipPattern.test(zipCode)) {
                $('uccustomerprofile1_lblMessageZip').innerHTML = $('uccustomerprofile1_hdnReqexZipCodeMessage').value;
                dvZipMessage.style.display = "block";
                executeSave = 'N';
            }
            else {
                dvZipMessage.style.display = "none";
            }
        }
        else {
            dvZipMessage.style.display = "none";
        }
    }

    var day = $('uccustomerprofile1_ddlDay').value.trim();
    var month = $('uccustomerprofile1_ddlMonth').value.trim();
    var year = $('uccustomerprofile1_ddlYear').value.trim();
    var date = month + '/' + day + '/' + year;

    //Birthdate
    if (day == -1 || month == -1 || year == -1) {
        dvBirthdateMessage.style.display = "block";
        $('uccustomerprofile1_lblMessageBirthdate').innerHTML = $('uccustomerprofile1_hdnRequiredBirthdateMessage').value;
        executeSave = 'N';
    }
    else if (!datePattern.test(date)) {
        dvBirthdateMessage.style.display = "block";
        $('uccustomerprofile1_lblMessageBirthdate').innerHTML = $('uccustomerprofile1_hdnRequiredBirthdateMessage').value;
        executeSave = 'N';
    }
    else {
        dvBirthdateMessage.style.display = "none";
    }

    if (dvSectionLogin.style.display == "block") {
        if (!emailPattern.test(email.value)) {
            $('uccustomerprofile1_lblMessageEmail').innerHTML = $('uccustomerprofile1_hdnRegexEmailMessage').value;
            dvEmailMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvEmailMessage.style.display = "none";
        }

        if (!passwordPattern.test(password.value.trim())) {
            lblMessagePassword.innerHTML = $('uccustomerprofile1_hdnRegexPasswordMessage').value;
            dvPassword.removeClassName("error");
            dvPassword.addClassName("error5");
            dvPassword.style.display = "block";
            executeSave = 'N';
        }
        else {
            if (password.value.trim() != confirmPassword.value.trim()) {
                $('uccustomerprofile1_lblMessagePassword').innerHTML = $('uccustomerprofile1_hdnPasswordNotMatch').value;
                dvPassword.style.display = "block";
                dvPassword.removeClassName("error5");
                dvPassword.addClassName("error");
                executeSave = 'N';
            }
            else {
                $('uccustomerprofile1_lblMessagePassword').innerHTML = "";
                dvPassword.style.display = "none";
            }
        }

        if (securityQuestion.value == "-1") {
            dvQuestion.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvQuestion.style.display = "none";
        }

        if (securityAnswer == "" || sqlscriptPattern.test(securityAnswer.toUpperCase())) {
            dvAnswer.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvAnswer.style.display = "none";
        }
    }

    if (executeSave == 'N') {
        return false;
    }
    else {
        return true;
    }
}
function OpenCustomerProfileConfirmation(IsNew, IsCommerceProfile) {
    switchEmailBox(true, $('customerProfile_boxConfirm'));

    if (IsNew == "N") {
        $("dvCPAdded").style.display = "none";
        $("dvCPUpdated").style.display = "block";
        $('uccustomerprofile1_lblTitleProfile').innerHTML = $('uccustomerprofile1_lblTitleProfileUpdateConfirm').innerHTML;
    }
    else {
        $('uccustomerprofile1_lblTitleProfile').innerHTML = $('uccustomerprofile1_lblTitleProfileConfirm').innerHTML;
    }    
}
function CloseEmailDiv(control) {
    switchEmailBox(false, control);
}
function OpenCommerceDiv() {
    switchEmailBox(true, $('dvCommerce'));
    var commerceText = $("uccustomerprofile1_hdnCommerceText").value;
    $("uccustomerprofile1_lblCommerceText").innerHTML = commerceText.replace("[email]", $("uccustomerprofile1_txtEmail").value);
    $("uccustomerprofile1_lblCommerceTitleTemp").innerHTML = $("uccustomerprofile1_lblCommerceTitle").innerHTML;

}
function CommerceRememberMe() {
    var email = $("uccustomerprofile1_txtEmail").value;
    var cspId = $("uccustomerprofile1_hdnCSPID").value;

    PageMethods.CommerceRememberMe(email, cspId, function() {
        // success    		
        switchEmailBox(false, $('customerProfile_boxConfirm'));
        window.location = CustomerProfilePage;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function CloseSaveGeneral(Option) {
    if (Option == "ViewCartInfo") {
        switchEmailBox(false, $('content_right_usercontrol_dvSaveCartControl'));
    }
}
function OpenBlockedUserPopup() {
    switchEmailBox(true, $('dvLoginErrorGeneral'));
    return false;
}
function CloseDivExecute(e, Control) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }

    if (keynum == 13 || keynum == 27) {
        CloseEmailDiv(Control);
        return false;
    }
}
function CustomerProfileConfirmationExecute(e) {
    if (window.event) // IE 
    {
        keynum = e.keyCode
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        keynum = e.which
    }

    if (keynum == 13 || keynum == 27) {
        CloseCustomerProfileConfirmation();
        return false;
    }
}
function ValidatePassword(password, ControlName) {
    var dvPassword = $(ControlName + '_dvPassword');
    if (!passwordPattern.test(password.trim())) {
        $(ControlName + '_lblMessagePassword').innerHTML = $(ControlName + '_hdnRegexPasswordMessage').value;
        dvPassword.style.display = "block";
        dvPassword.removeClassName("error");
        dvPassword.addClassName("error5");
    }
    else {
        $(ControlName + '_lblMessagePassword').innerHTML = "";
        dvPassword.style.display = "none";
        dvPassword.removeClassName("error5");
        dvPassword.addClassName("error");
    }
}
function password_strength(password) {
    var desc = new Array();
    desc[0] = "Very Weak";
    desc[1] = "Very Weak";
    desc[2] = "Weak";
    desc[3] = "Medium";
    desc[4] = "Strong";
    desc[5] = "Strongest";

    var points = 0;

    //---- if password has at least 1 lowercase characters, give 1 point.        
    if (password.match(/[a-z]/)) points++;

    //---- if password has at least 1 uppercase characters, give 1 point.        
    if (password.match(/[A-Z]/)) points++;

    //---- if password has at least one number , give 1 point.
    if (password.match(/\d+/)) points++;

    if (points > 2) {
        //---- if password has at least one special caracther , give 1 point.
        if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/)) points++;

        //---- if password is bigger than 7 ,  give 1 point.
        if (password.length > 5) points++;

        if (points < 5) {
            //---- if password is bigger than 15 ,  give 1 point.
            if (password.length > 15) points++;
        }
    }
    //---- Showing  description for password strength.
    document.getElementById("passwordDescription").innerHTML = desc[points];
    //---- Changeing Bar Images.
    document.getElementById("passwordStrengthBar").src = "/images/bar_securityLevel" + points + ".gif";
    document.getElementById("passwordStrengthBar").alt = desc[points];
}
function genericpopwin(windowURL, windowWidth, windowHeight, scrollBars, reSizable) {

    if (scrollBars) {
        //
    } else {
        scrollBars = 'no'
    }

    if (reSizable) {
        //
    } else {
        reSizable = 'no'
    }

    var windowName = "generic" + Math.round(Math.random(1) * 1000);

    var windowOptions = "toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=" + scrollBars + ",resizable=" + reSizable + ",width=" + windowWidth + ",height=" + windowHeight;

    var mywin = window.open(windowURL, windowName, windowOptions);
}
function ValidateAddressControls(ControlName) 
{
    //divs
    var divAddressName = $(ControlName + 'ucAdress_dvAddressName');
    var divFirstName = $(ControlName + 'ucAdress_dvFirstName');
    var divLastName = $(ControlName + 'ucAdress_dvLastName');
    var divAddress = $(ControlName + 'ucAdress_dvAddress');
    var divCity = $(ControlName + 'ucAdress_dvCity');
    var divState = $(ControlName + 'ucAdress_dvState');
    var divCountry = $(ControlName + 'ucAdress_dvCountry');
    var divPhoneNumber = $(ControlName + 'ucAdress_dvPhoneNumber');
    var dvZipMessage = $(ControlName + 'ucAdress_dvZipCode');
    var dvAddress2 = $(ControlName + 'ucAdress_dvAddress2');
    var dvEmailMessage = $(ControlName + 'ucAdress_dvEmail');
    var dvEmailConfirmationMessage = $(ControlName + 'ucAdress_dvEmailConfirm');
    var dvMobileMessage = $(ControlName + 'ucAdress_dvMobile');
    var dvGuestSection1 = $(ControlName + 'ucAdress_dvGuestSection1');

    //Values
    var AddressName = $(ControlName + 'ucAdress_txtAddressName');
    var FirstName = $(ControlName + 'ucAdress_txtFirstName');
    var LastName = $(ControlName + 'ucAdress_txtLastName');
    var Address1 = $(ControlName + 'ucAdress_txtAddress1');
    var Address2 = $(ControlName + 'ucAdress_txtAddress2');
    var City = $(ControlName + 'ucAdress_txtCity');
    var stateControl = $(ControlName + 'ucAdress_ddlState');
    var state = $(ControlName + 'ucAdress_txtState');
    var Country = $(ControlName + 'ucAdress_ddlCountry');
    var PhoneNumber = $(ControlName + 'ucAdress_txtPhoneNumber');
    var zipCode = $(ControlName + 'ucAdress_txtZipPostalCode').value.trim();
    var lblErrorInvalidName = $(ControlName + 'ucAdress_lblErrorInvalidName');
    var hdnAddressNameInvalid = $(ControlName + 'ucAdress_hdnAddressNameInvalid');
    var isZipCodeInvalid = false;
    var executeSave = 'Y';
    var email = $(ControlName + 'ucAdress_txtEmail').value.trim();
    var emailConfirmation = $(ControlName + 'ucAdress_txtEmailConfirm').value.trim();
    var chkMessageSubscriptions = $(ControlName + 'ucAdress_chkMessageSubscriptions');
    var mobile = $(ControlName + 'ucAdress_txtMobile').value.trim();

    if (AddressName.value.trim() == "" || sqlscriptPattern.test(AddressName.value.trim().toUpperCase())) {
        lblErrorInvalidName.innerHTML = hdnAddressNameInvalid.value;
        divAddressName.style.display = "block";
        executeSave = 'N';
    }
    else {
        lblErrorInvalidName.innerHTML = "";
        divAddressName.style.display = "none";
    }
    if (FirstName.value.trim() == "" || sqlscriptPattern.test(FirstName.value.trim().toUpperCase())) {
        divFirstName.style.display = "block";
        executeSave = 'N';
    }
    else {
        divFirstName.style.display = "none";
    }

    if (LastName.value.trim() == "" || sqlscriptPattern.test(LastName.value.trim().toUpperCase())) {
        divLastName.style.display = "block";
        executeSave = 'N';
    }
    else {
        divLastName.style.display = "none";
    }
    if (Address1.value.trim() == "" || sqlscriptPattern.test(Address1.value.trim().toUpperCase())) {
        divAddress.style.display = "block";
        executeSave = 'N';
    }
    else {
        divAddress.style.display = "none";
    }
    if (sqlscriptPattern.test(Address2.value.trim().toUpperCase())) {
        dvAddress2.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvAddress2.style.display = "none";
    }
    if (City.value.trim() == "" || sqlscriptPattern.test(City.value.trim().toUpperCase())) {
        divCity.style.display = "block";
        executeSave = 'N';
    }
    else {
        divCity.style.display = "none";
    }

    if (PhoneNumber.value.trim() == "" || sqlscriptPattern.test(PhoneNumber.value.trim().toUpperCase())) {
        divPhoneNumber.style.display = "block";
        executeSave = 'N';
    }
    else {
        divPhoneNumber.style.display = "none";
    }

    if (Country.value == '-1') {
        divCountry.style.display = "block";
        executeSave = 'N';
    }
    else
        divCountry.style.display = "none";

    if (zipCode != "" && sqlscriptPattern.test(zipCode.toUpperCase())) {
        isZipCodeInvalid = true;
        dvZipMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        isZipCodeInvalid = false;
        dvZipMessage.style.display = "none";
    }

    if (!isZipCodeInvalid) {
        if (Country.value == USValue || Country.value == CAValue || Country.value == MXValue)
        {
            if (zipCode == "" || !zipPattern.test(zipCode)) {
                dvZipMessage.style.display = "block";
                executeSave = 'N';
            }
            else {
                dvZipMessage.style.display = "none";
            }
        }
        else
        {
            if (zipCode == "") {
                dvZipMessage.style.display = "block";
                executeSave = 'N';
            }
            else {
                dvZipMessage.style.display = "none";
            }
        }
    }

    if (Country.value == USValue || Country.value == CAValue || Country.value == MXValue) {
        if (stateControl.value == "-1") {
            $(ControlName + 'ucAdress_lblErrorLocation').innerHTML = $(ControlName + 'ucAdress_hdnRequiredStateMessage').value;
            divState.style.display = "block";
            executeSave = 'N';
        }
        else {
            divState.style.display = "none";
        }
    }
    else {
        if (state.value.trim() == "" || sqlscriptPattern.test(state.value.trim().toUpperCase())) {
            if (state.value.trim() == "") {
                $(ControlName + 'ucAdress_lblErrorLocation').innerHTML = $(ControlName + 'ucAdress_hdnRequiredStateMessage').value;
            }
            else {
                $(ControlName + 'ucAdress_lblErrorLocation').innerHTML = $(ControlName + 'ucAdress_hdnInvalidStateMessage').value;
            }
            divState.style.display = "block";
            executeSave = 'N';
        }
        else {
            divState.style.display = "none";
        }
    }

    if (dvGuestSection1.style.display == "block") 
    {
        //Email
        if (email == "") {
            dvEmailMessage.style.display = "block";
            $(ControlName + 'ucAdress_lblErrorEmail').innerHTML = $(ControlName + 'ucAdress_hdnRequiredEmailMessage').value;
            executeSave = 'N';
        }
        else if (!emailPattern.test(email)) {
            $(ControlName + 'ucAdress_lblErrorEmail').innerHTML = $(ControlName + 'ucAdress_hdnRegexEmailMessage').value;
            dvEmailMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvEmailMessage.style.display = "none";
        }

        //Email Confirmation
        if (!emailPattern.test(emailConfirmation)) {
            dvEmailConfirmationMessage.style.display = "block";
            $(ControlName + 'ucAdress_lblErrorEmailConfirm').innerHTML = $(ControlName + 'ucAdress_hdnEmailConfirmationMessage').value;
            executeSave = 'N';
        }
        else {
            dvEmailConfirmationMessage.style.display = "none";
        }

        if (emailPattern.test(email) && emailPattern.test(emailConfirmation)) {
            if (email != emailConfirmation) {
                dvEmailConfirmationMessage.style.display = "block";
                $(ControlName + 'ucAdress_lblErrorEmailConfirm').innerHTML = $(ControlName + 'ucAdress_hdnEmailCompareMessage').value;
                executeSave = 'N';
            }
            else {
                dvEmailConfirmationMessage.style.display = "none";
            }
        }

        if (sqlscriptPattern.test(mobile.toUpperCase()) || (chkMessageSubscriptions.checked && mobile == "")) {
            dvMobileMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvMobileMessage.style.display = "none";
        }    
    }
    
    if (executeSave == 'N') 
    {
        if (ControlName == 'ucCheckOutContent_wzdCheckOut_ssmShippingMethod_')
            ChangeDivPosition('dvAddress');

        return false;
    }
    else 
    {
        return true;
    }
}
function ValidateQuantity(QuantityControl) {
    if (parseInt(QuantityControl.value) < 1) {
        QuantityControl.value = "1";
    }
}
function ValidateEmailAddressControls() {
    //divs
    var dvValidation = $('ChangeEmailAddress1_dvCaptchaEmailValidation');
    var divConfirmEmailDifferent = $('ChangeEmailAddress1_DivConfirmEmailDifferent');
    var DivEmailExist2 = $('ChangeEmailAddress1_DivEmailExist2');
    var dvCaptchaMessage = $('ChangeEmailAddress1_dvCaptchaMessage');

    divConfirmEmailDifferent.style.display = "none";
    DivEmailExist2.style.display = "none";
    dvCaptchaMessage.style.display = "none";

    //Values
    var NewEmail = $('ChangeEmailAddress1_txtNewEmail');
    var ConfirmNewEmail = $('ChangeEmailAddress1_txtConfirmNewEmail');
    var Password = $('ChangeEmailAddress1_txtPassword');
    var lblErrorConfirmMail = $('ChangeEmailAddress1_lblErrorConfirmMail');

    if (!emailPattern.test(NewEmail.value) || !emailPattern.test(ConfirmNewEmail.value)) {
        divConfirmEmailDifferent.style.display = "block";
        dvValidation.style.display = "block";
        lblErrorConfirmMail.innerHTML = $('ChangeEmailAddress1_hdnChangeEmailInvalid').value;
        $('ChangeEmailAddress1_hdnShowCaptchaControl').value = "Y";
        return false;
    }
    else {
        if (NewEmail.value != ConfirmNewEmail.value) {
            divConfirmEmailDifferent.style.display = "block";
            dvValidation.style.display = "block";
            lblErrorConfirmMail.innerHTML = $('ChangeEmailAddress1_hdnChangeEmailNotMatch').value;
            $('ChangeEmailAddress1_hdnShowCaptchaControl').value = "Y";
            return false;
        }
    }

    return true;
}
function showMessagePassword() {
    var userPassword = $('ForgotPassword1_txtUserPassword');
    var userPassword2 = $('ForgotPassword1_txtConfirmUserPassword');
    var message = $('ForgotPassword1_dvPassword');
    var lblMessagePassword = $('ForgotPassword1_lblMessagePassword');
    var ErrorMessageNewPassword = $('ForgotPassword1_ErrorMessageNewPassword');
    var dvValidation = $('ForgotPassword1_dvCaptcha3');

    message.style.display = 'none';
    ErrorMessageNewPassword.style.display = 'none';

    if (blankPattern.test(userPassword.value)) {
        lblMessagePassword.innerHTML = $('ForgotPassword1_hdnNotAllowCharacters').value;
        message.style.display = 'block';
        return false;
    }
    if (!passwordPattern.test(userPassword.value)) {
        lblMessagePassword.innerHTML = $('ForgotPassword1_hdnRegexPasswordMessage').value;
        message.style.display = 'block';
        return false;
    }
    if (userPassword.value != userPassword2.value) {
        ErrorMessageNewPassword.style.display = 'block';
        dvValidation.style.display = "block";
        $('ForgotPassword1_hdnShowCaptchaControl').value = "Y";
        return false;
    }

    return true;
}
function ValidatePasswordControls(ShowCurrentPass) {
    //divs
    var dvValidation = $('ChangePassword1_divCapcha');
    var divNewPassword = $('ChangePassword1_dvPassword');
    var divMessageMatchPassword = $('ChangePassword1_divMessageMatchPassword');
    var divMessageCall = $('ChangePassword1_divMessageCall');
    var dvCaptchaMessage = $('ChangePassword1_dvCaptchaMessage');

    //Values
    var CurrentPassword = $('ChangePassword1_txtCurrentPassword');
    var NewPassword = $('ChangePassword1_txtNewPassword');
    var ConfirmNewPassword = $('ChangePassword1_txtConfirmNewPassword');
    var lblNewPasswordValidate = $('ChangePassword1_lblMessagePassword');

    divNewPassword.style.display = "none";
    divMessageMatchPassword.style.display = "none";
    divMessageCall.style.display = "none";
    dvCaptchaMessage.style.display = "none";

    if (blankPattern.test(NewPassword.value)) {
        lblNewPasswordValidate.innerHTML = $('ChangePassword1_hdnNotAllowCharacters').value;
        divNewPassword.style.display = "block";
        dvValidation.style.display = "block";
        $('ChangePassword1_hdnShowCaptchaControl').value = "Y";
        return false;
    }
    if (!passwordPattern.test(NewPassword.value)) {
        lblNewPasswordValidate.innerHTML = $('ChangePassword1_hdnRegexPasswordMessage').value;
        divNewPassword.style.display = "block";
        dvValidation.style.display = "block";
        $('ChangePassword1_hdnShowCaptchaControl').value = "Y";
        return false;
    }

    if (NewPassword.value != ConfirmNewPassword.value) {
        divMessageMatchPassword.style.display = "block";
        dvValidation.style.display = "block";
        $('ChangePassword1_hdnShowCaptchaControl').value = "Y";
        return false;
    }

    return true;
}
function ValidateSecurityQuestionsControls() {
    //divs    
    var divNewSecurityQuestionMessage = $('ucChangeSecurityQuestions_DivNewSecurityQuestionMessage');
    var divNewSecurityAnswerMessage = $('ucChangeSecurityQuestions_DivNewSecurityAnswerMessage');

    //Values   
    var NewSecurityQuestion = $('ucChangeSecurityQuestions_ddlSecurityQuestions');
    var NewSecurityAnswer = $('ucChangeSecurityQuestions_txtNewSecurityAnswer');

    var executeSave = 'Y';

    if (NewSecurityQuestion.value == "-1") {
        divNewSecurityQuestionMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        divNewSecurityQuestionMessage.style.display = "none";
    }

    if (NewSecurityAnswer.value.trim() == "" || NewSecurityAnswer.value.trim() == "Your answer" || sqlscriptPattern.test(NewSecurityAnswer.value.trim().toUpperCase())) {
        divNewSecurityAnswerMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        divNewSecurityAnswerMessage.style.display = "none";
    }

    if (executeSave == 'N') {
        return false;
    }
    else {
        return true;
    }
}
function isValidCreditCardNumber() {
    var cardNumber = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtCardNumber').value.trim();
    var cardType = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlCardType').value;

    var isValid = false;
    var ccCheckRegExp = /[^\d ]/;
    isValid = !ccCheckRegExp.test(cardNumber);

    if (isValid) {
        var cardNumbersOnly = cardNumber.replace(/ /g, "");
        var cardNumberLength = cardNumbersOnly.length;
        var lengthIsValid = false;
        var prefixIsValid = false;
        var prefixRegExp;

        switch (cardType) {
            case MasterCard:
                lengthIsValid = (cardNumberLength == 16);
                prefixRegExp = /^5[1-5]/;
                break;

            case VISA:
                lengthIsValid = (cardNumberLength == 16 || cardNumberLength == 13);
                prefixRegExp = /^4/;
                break;

            case Amex:
                lengthIsValid = (cardNumberLength == 15);
                prefixRegExp = /^3[2-7]/;
                break;

            case Discover:
                lengthIsValid = (cardNumberLength == 16);
                prefixRegExp = /^6011/;
                break;

            case JCB:
                lengthIsValid = (cardNumberLength == 16);
                prefixRegExp = /^35280000/;
                break;

            default:
                lengthIsValid = (cardNumberLength == 15);
                prefixRegExp = /^374351/;
        }

        prefixIsValid = prefixRegExp.test(cardNumbersOnly);
        isValid = prefixIsValid && lengthIsValid;
    }

    if (isValid) {
        if (cardType == VISA && cardNumberLength == 16) {
            var numberProduct;
            var numberProductDigitIndex;
            var checkSumTotal = 0;

            for (digitCounter = cardNumberLength - 1; digitCounter >= 0; digitCounter--) {
                checkSumTotal += parseInt(cardNumbersOnly.charAt(digitCounter));
                digitCounter--;
                numberProduct = String((cardNumbersOnly.charAt(digitCounter) * 2));
                for (var productDigitCounter = 0; productDigitCounter < numberProduct.length; productDigitCounter++) {
                    checkSumTotal += parseInt(numberProduct.charAt(productDigitCounter));
                }
            }

            isValid = (checkSumTotal % 10 == 0);
        }
    }
    else {
        var cards = new Array();
        var firstCharacters;
        if (cardType == Discover) {
            lengthIsValid = (cardNumberLength == 14);
            if (lengthIsValid) {
                cards[0] = { Start: "30000000", End: "30599999" };
                cards[1] = { Start: "30950000", End: "30959999" };
                cards[2] = { Start: "36000000", End: "36999999" };
                cards[3] = { Start: "38000000", End: "39999999" };

                firstCharacters = cardNumber.substring(8, 0);
                for (var i = 0; i < cards.length; i++) {
                    var start = cards[i].Start;
                    var end = cards[i].End;

                    if (parseInt(start) <= parseInt(firstCharacters) && parseInt(firstCharacters) <= parseInt(end)) {
                        isValid = true;
                        break;
                    }
                }
            }
        }
        else if (cardType == JCB && lengthIsValid) {
            cards[0] = { Start: "35280000", End: "35890000" };

            firstCharacters = cardNumber.substring(8, 0);
            for (var i = 0; i < cards.length; i++) {
                var start = cards[i].Start;
                var end = cards[i].End;

                if (parseInt(start) <= parseInt(firstCharacters) && parseInt(firstCharacters) <= parseInt(end)) {
                    isValid = true;
                    break;
                }
            }
        }
    }
    return isValid;
}
function ValidateOrderControls() {
    //Divs
    var divCardNumberMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCardNumberMessage');
    var divCardValidNumberMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCardValidNumberMessage');
    var divNameOnCardMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivNameOnCardMessage');    
    var divCVVMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_DivCVVMessage');
    var dvExpirationDate = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvExpirationDate');
    var dvCreditCardControl = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvCreditCardControl');
    var dvTermsOfConditionsMessage = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_dvTermsOfConditionsMessage');

    //Values
    var cardType = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlCardType').value;
    var cardNumber = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtCardNumber');
    var nameOnCard = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtNameOnCard');    
    var cvv = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_txtCvv');
    var ValidContracts = $('ucCheckOutContent_wzdCheckOut_sscSummary_hdnValidateContracts');
    var idValues = $('ucCheckOutContent_wzdCheckOut_sscSummary_idValues');
    var expirationDateMonth = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlExpirationDateMonth');
    var expirationDateYear = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_ddlExpirationDateYear');
    var chkTermsOfConditions = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucCreditCardControl_chkTermsOfConditions');
    
    var executeSave = 'Y';

    var hdnMonthValue = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_hdnMonthValue');
    var hdnYearValue = $('ucCheckOutContent_wzdCheckOut_sscSummary_ucViewCart_hdnYearValue');

    if (dvCreditCardControl.style.display == "block") {
        if (cardNumber.value.trim() == "" || sqlscriptPattern.test(cardNumber.value.trim().toUpperCase())) {
            divCardValidNumberMessage.style.display = "none";
            divCardNumberMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            divCardNumberMessage.style.display = "none";
            if (isValidCreditCardNumber()) {
                divCardValidNumberMessage.style.display = "none";
            }
            else {
                divCardValidNumberMessage.style.display = "block";
                executeSave = 'N';
            }
        }

        if (nameOnCard.value.trim() == "" || sqlscriptPattern.test(nameOnCard.value.trim().toUpperCase())) {
            divNameOnCardMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            divNameOnCardMessage.style.display = "none";
        }

        var cvvNumbersOnly = cvv.value.trim().replace(/ /g, "");
        var cvvLength = cvvNumbersOnly.length;
        var lengthIsValid = false;

        switch (cardType) {
            case Amex:
                lengthIsValid = (cvvLength == 4);
                break;

            default:
                lengthIsValid = (cvvLength == 3);
        }

        if (cvv.value.trim() == "" || !lengthIsValid) {
            divCVVMessage.style.display = "block";
            executeSave = 'N';
        }
        else {
            divCVVMessage.style.display = "none";
        }

        if (expirationDateMonth.value == '-1' || expirationDateYear.value == "-1") {
            dvExpirationDate.style.display = "block";
            executeSave = 'N';
        }
        else {
            dvExpirationDate.style.display = "none";
        }

        if (expirationDateMonth.value != '-1' && expirationDateYear.value != "-1") {
            if (parseInt(expirationDateYear.value) < parseInt(hdnYearValue.value)) {
                dvExpirationDate.style.display = "block";
                executeSave = 'N';
            }
            else {
                if (parseInt(expirationDateYear.value) == parseInt(hdnYearValue.value) && parseInt(expirationDateMonth.value) < parseInt(hdnMonthValue.value)) {
                    dvExpirationDate.style.display = "block";
                    executeSave = 'N';
                }
                else {
                    dvExpirationDate.style.display = "none";
                }
            }
        }
    }
    
    if (!chkTermsOfConditions.checked) {
        dvTermsOfConditionsMessage.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvTermsOfConditionsMessage.style.display = "none";
    }

    //var result = 'Y';
    var ShowContractPopup = 'N'
    if (ValidContracts.value == 'Y') 
    {
        contracts = idValues.value.split("|");
        for (var i = 0; i < contracts.length; i++) 
        {
            var control = contracts[i];
            if ($(control).value == "0") 
            {
                //executeSave = 'N';
                //result = 'N';
                ShowContractPopup = 'Y';
                break;
            }
        }
    }

    if (executeSave == 'N') 
    {
        scroll(0,0);
        return false;
    }
    else 
    {
        if (ShowContractPopup == 'N') 
        {
            return true;
        }
        else 
        {
            OpenConfirmContract();
            return false;
        }
    }
}
function ChangeCVVMaxLength(CardType, CVV, CardNumber) {
    var cardType = $(CardType).value;
    var cardNumber = $(CardNumber);

    $(CVV).maxLength = 3;
    switch (cardType) {
        case MasterCard:
            $(CardNumber).maxLength = 16;
            break;

        case VISA:
            $(CardNumber).maxLength = 16;
            break;

        case JCB:
            $(CardNumber).maxLength = 16;
            break;

        case Amex:
            $(CVV).maxLength = 4;
            $(CardNumber).maxLength = 15;
            break;

        case Discover:
            $(CardNumber).maxLength = 16;
            break;

        default:
            $(CardNumber).maxLength = 15;
    }
}
function FillDropDownList(CountryId, StateId, StateTextId) {
    var sUri = '../States.ashx?CountryValue=' + $(CountryId).value;
    loadDropDownList(sUri, $(StateId), $(StateTextId), $(StateId).value, $(CountryId));
}
function clearDropDownList(cbo) {
    for (i = cbo.length; i >= 0; i--)
        cbo.remove(i);
}
function loadDropDownList(sUri, objCombo, objState, StateValue, objCountry) {
    clearDropDownList(objCombo);

    if (objCountry.value == USValue || objCountry.value == CAValue || objCountry.value == MXValue) {
        new Ajax.Request(sUri, {
            method: 'get',
            onSuccess: function(transport) {
                var _objXml = transport.responseXML.getElementsByTagName('HeaderXML');

                if (_objXml[0] != null && _objXml[0].childNodes.length > 0) {
                    for (i = 0; i < _objXml[0].childNodes.length; i++) {
                        var child = _objXml[0].childNodes[i];
                        if (document.implementation && document.implementation.createDocument) {
                            if (child.nodeType == 1) {
                                var objOption = document.createElement("OPTION");
                                objOption.value = child.childNodes[1].firstChild.nodeValue;
                                objOption.text = child.childNodes[0].firstChild.nodeValue;
                                if (objOption.value == StateValue)
                                    objOption.selected = true;
                                objCombo.options.add(objOption);
                                objOption = null;
                            }
                        }
                        else {
                            if (navigator.appName.indexOf("Microsoft") == 0) {
                                var objOption = document.createElement("OPTION");
                                objOption.value = child.childNodes[1].text;
                                objOption.text = child.childNodes[0].text;
                                if (objOption.value == StateValue)
                                    objOption.selected = true;
                                objCombo.options.add(objOption);
                                objOption = null;
                            }
                        }
                    }

                    objCombo.style.display = "";
                    objState.style.display = "none";
                }
                else {
                    objCombo.style.display = "none";
                    objState.style.display = "";
                }
            }
        });
    }
    else if (objCountry.value == '-1') {
        var objOption = document.createElement("OPTION");
        objOption.value = '-1';
        objOption.text = '[ SELECT ]';
        objCombo.options.add(objOption);
        objOption = null;

        objCombo.style.display = "";
        objState.style.display = "none";
    }
    else {
        objCombo.style.display = "none";
        objState.style.display = "";
    }
}
function showMessageEmail() {
    var email = $('ForgotPassword1_txtEmail');
    if (email.value.trim() == "") {
        var message = $('ForgotPassword1_DivMessageEmail');
        message.style.display = "block";
        return false;
    }
    else {
        return true;
    }
}
function OpenGemoney() {
    switchEmailBox(false, $('divLeaveSite'));
    window.open('gemoney.aspx', '', 'height=480,width=585,left=150,top=50,resizable=yes,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=yes');
}
function showMessageQuestion() {
    var executeSave = 'Y';
    //divs
    var dvMessageFirstAnswer = $('ForgotPassword1_DivMessageSQuestion');

    //Values
    var FirstSecurityAnswer = $('ForgotPassword1_txtAnswerSecurityQuestion');

    if (FirstSecurityAnswer.value.trim() == "" || sqlscriptPattern.test(FirstSecurityAnswer.value.trim().toUpperCase())) {
        dvMessageFirstAnswer.style.display = "block";
        executeSave = 'N';
    }
    else {
        dvMessageFirstAnswer.style.display = "none";
    }

    if (executeSave == 'N') {
        return false;
    }
    else {
        return true;
    }
}

function ValidateControlsPromocode() {
    //Divs
    var divPromocode = $('ucViewCartContent_ucEnterPromoCode_divPromocode');

    //Values
    var Promocode = $('ucViewCartContent_ucEnterPromoCode_txtEnterPromoCode');

    var executeSave = 'Y';

    if (Promocode.value.trim() == "" || sqlscriptPattern.test(Promocode.value.trim().toUpperCase())) {
        divPromocode.style.display = "block";
        executeSave = 'N';
    }
    else {
        divPromocode.style.display = "none";
    }

    if (executeSave == 'N') {
        return false;
    }
    else {
        ShowWaitBoxPromocode();
        return true;
    }
}
function GetMerchandiseUrl(Url,ParentCategory,CategoryName)
{    
    PageMethods.PutMerchandiseValuesInSession(ParentCategory, CategoryName,function() {
        // success
        window.location = Url;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function RemoveMerchandiseValuesInSession(Url) 
{
    PageMethods.RemoveMerchandiseValuesInSession(function() {
        // success
        window.location = Url;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function ApplyPromoCode() {
    var txtEnterPromoCode = $('content_right_usercontrol_EnterPromoCode1_txtPromoCode');

    if (ValidateControlsPromocode2()) {
        PageMethods.ApplyPromoCode(txtEnterPromoCode.value, function(result) {

            var rst = result.split('|');

            var lblMessage = $('content_right_usercontrol_EnterPromoCode1_lblMessage');

            if (rst[0] == "1") {
                $(lblMessage).innerText = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeSave').value;
                $(lblMessage).innerHTML = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeSave').value;
            }
            else {
                switch (rst[1].toLowerCase()) {
                    case "promocodeinvalid":
                        $(lblMessage).innerText = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeInvalid').value;
                        $(lblMessage).innerHTML = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeInvalid').value;
                        break;
                    case "promocodeexhausted":
                        $(lblMessage).innerText = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeExhausted').value;
                        $(lblMessage).innerHTML = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeExhausted').value;
                        break;
                    case "promocodeexist":
                        $(lblMessage).innerText = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeExist').value;
                        $(lblMessage).innerHTML = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeExist').value;
                        break;
                    case "promocodenotsuccess":
                        $(lblMessage).innerText = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeNotSuccess').value;
                        $(lblMessage).innerHTML = $('content_right_usercontrol_EnterPromoCode1_hdnPromoCodeNotSuccess').value;
                        break;
                    case "error":
                        $(lblMessage).innerText = rst[1];
                        $(lblMessage).innerHTML = rst[1];
                        break;
                }
            }

            ActionDiv2('1', 'dvResultPromoCode', rst[0]);

            var parameter = false;
            if ($("content_menu_panel") != null) {
                if ($("content_menu_panel").select(".contentMenuDetailItem").length == 0) {
                    parameter = true;
                }
                else if ($("content_menu_panel").select(".contentMenuDetailItem").length > 0 && $("content_menu_panel").select(".contentMenuDetailItem")[0].style.display == "none") {
                    parameter = true;
                }
            }
            else {
                parameter = true;
            }

            if (parameter) {
                showWithSlide = false;
                OpenMiniCart();
            }
            else {
                OpenMiniCartSidePanel();
            }
        },
        function(result) {
            window.location = ErrorPage;
        });
    }
}
function ValidateControlsPromocode2() {
    var executeSave = 'Y';
    //Divs    
    var divPromocode = $('content_right_usercontrol_EnterPromoCode1_divPromoCodeViewCartInfo');

    //Values
    var Promocode = $('content_right_usercontrol_EnterPromoCode1_txtPromoCode');

    if (Promocode.value == 'Enter Promo Code')
        Promocode.value = '';

    if (Promocode.value.trim() == "" || sqlscriptPattern.test(Promocode.value.trim().toUpperCase())) {
        divPromocode.style.display = "block";
        executeSave = 'N';
    }
    else {
        divPromocode.style.display = "none";
    }

    if (executeSave == 'N') {
        return false;
    }
    else {
        return true;
    }
}
function ShowCrossSellingOffers(CatalogName, CategoryName, ClassName) {
    var _catalogName;
    var _categoryName;
    if ($('OfferSet') != null) {
        var objOfferContent = $('OfferSet').select(ClassName);
        objOfferContent.each(function(item, index) {
            _catalogName = item.select(".hdCSOCatalogName")[0].value;
            _categoryName = item.select(".hdCSOCategoryName")[0].value;

            if (CatalogName == _catalogName && CategoryName == _categoryName)
                item.style.display = '';
        });
    }
}
function CrossSelling(result, ClassName) {
    var args = result.split('|');
    for (var i = 0; i < args.length; i++) {
        var argsTemp = args[i].split('~');
        if (argsTemp != '') {
            ShowCrossSellingOffers(argsTemp[0], argsTemp[1], ClassName);
        }
    }
}
function ExecuteCrossSelling() {
    PageMethods.GetCrossSelling(function(result) {
        // success    		
        CrossSelling(result, ".containner_div");
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}
function S4() {
    return (((1 + Math.random()) * 0x10000) | 0).toString(16).substring(1);
}
function guid() {
    return (S4() + S4() + "-" + S4() + "-" + S4() + "-" + S4() + "-" + S4() + S4() + S4());
}
function OpenMiniCart() {
    var pageLocation = "/shoppingcart/ViewCartInfo.aspx?closeMiniCart=1&avoidcache=" + guid();
    PageMethods.GetHtmlContent(pageLocation, getViewCartInfoSucceed, getViewCartInfoFailed);
}
function getViewCartInfoSucceed(response) {
    getCartItems();

    response = GetContentXml(response);

    var posBegin;
    var posEnd;

    posBegin = response.indexOf('<!--StartContent-->');
    posEnd = response.lastIndexOf('<!--EndContent-->');

    response = response.slice(posBegin, posEnd);

    $("content_menu_right_panel").innerHTML = response;

    if (!showWithSlide) {
        showWithSlide = true;
        return;
    }

    $("content_menu_right_panel").style.display = "none";
    Effect.BlindDown($('content_menu_right_panel'), {
        duration: 1,
        queue: {
            scope: "minicart",
            position: "end",
            limit: 1
        }
    });
}
function getViewCartInfoFailed(error) {
    window.location = DefaultPage;
}

function OpenMiniCartSidePanel() {
    var pageLocation = "/shoppingcart/ViewCartInfo.aspx?avoidcache=" + guid();
    PageMethods.GetHtmlContent(pageLocation, getViewCartInfoSidePanelSucceed, getViewCartInfoFailed);
}
function getViewCartInfoSidePanelSucceed(response) {
    response = GetContentXml(response);

    var posBegin;
    var posEnd;

    posBegin = response.indexOf('<!--StartContent-->');
    posEnd = response.lastIndexOf('<!--EndContent-->');

    response = response.slice(posBegin, posEnd);

    var objContainerPanelRight = $("content_menu_panel").select(".content_right_sc_principal")[0];
    objContainerPanelRight.innerHTML = response;
    objContainerPanelRight.style.display = "block";
}

function LoadMiniCart() {
    var discountId = GetDiscount(true);

    var pageLocation = "/shoppingcart/ViewCartInfo.aspx?DiscountId=" + discountId + "&avoidcache=" + guid();

    PageMethods.GetHtmlContent(pageLocation, LoadMiniCartSucceed, getViewCartInfoFailed);
}
function LoadMiniCartSucceed(response) {
    response = GetContentXml(response);

    var posBegin;
    var posEnd;

    posBegin = response.indexOf('<!--StartContent-->');
    posEnd = response.lastIndexOf('<!--EndContent-->');

    response = response.slice(posBegin, posEnd);

    var objContainerPanelRight = $("content_menu_panel").select(".content_right_sc_principal")[0];
    objContainerPanelRight.innerHTML = response;
    objContainerPanelRight.style.display = "block";
    ChangeSaveAndClose();
}
function ChangeSaveAndClose() {
    if ($('btnClose') != null) {
        if ($('content_right_usercontrol_dtlShoppingCartInfo') == null) {
            $('btnClose').value = "Close";
            $('btnClose').title = "Close";
        }
        else {
            $('btnClose').value = "Save & Close";
            $('btnClose').title = "Save & Close";
        }
    }
}
function MiniShoppingCartExecute(e) {
    if (window.event) // IE 
    {
        if (e.srcElement.nodeName == "A") return;
        if (e.srcElement.nodeName == "INPUT" && (e.srcElement.type == "button" || e.srcElement.type == "submit")) return;

        keynum = e.keyCode;
    }
    else if (e.which) // Netscape/Firefox/Opera 
    {
        if (e.target.nodeName == "A") return;
        if (e.target.nodeName == "INPUT" && (e.target.type == "button" || e.target.type == "submit")) return;

        keynum = e.which;
    }

    if (keynum == 13 || keynum == 27) {
        Effect.BlindUp($('content_menu_right_panel'),
	    {
	        duration: 1,
	        queue: {
	            scope: "minicart",
	            position: "end",
	            limit: 1
	        }
	    });
        return false;
    }
}

function OpenMiniCartRemoveConfirm(objRemoveLink, ItemID, PromoCodeID, arrow, msg, ProductID, VariantID) {
    $('content_right_usercontrol_hdnItemID').value = ItemID;
    $('content_right_usercontrol_hdnPromoCodeID').value = PromoCodeID;
    $('content_right_usercontrol_hdnProductId').value = ProductID;
    $('content_right_usercontrol_hdnVariantId').value = VariantID;
    mypos($(objRemoveLink), arrow, msg);
    //control01("");
}

function GetDiscount(ReturnText) {
    var listItem;
    var listItemArray;

    listItemArray = document.getElementsByName("content_right_usercontrol$rblDiscount");

    if (listItemArray == null || listItemArray.length == 0) {
        listItemArray = document.getElementsByName("content_right_usercontrol$rblDiscountInternational");
    }

    var isItemChecked = false;
    for (var i = 0; i < listItemArray.length; i++) {
        listItem = listItemArray[i];
        if (listItem.checked) {
            isItemChecked = true;
            break;
        }
    }

    if (isItemChecked) {
        var values = listItem.value.split('|');
        if (ReturnText) {
            return values[0];
        }
        else {
            return values[1];
        }
    }
    else {
        return '';
    }
}
function GetCommerceProductNewPrices() {
    var discountId = GetDiscount(true);
    if (discountId != "") {
        SetCustomerOption(discountId);
    }
}
function SetCustomerOption(VirtualCatalogID) {
    PageMethods.SetCustomerOption(VirtualCatalogID, function(result) {
        // success
        if (result == "GP") {
            if (VirtualCatalogID == FloridaCatalog) {
                $('content_right_usercontrol_dvFloridaInfo').style.display = "block";
            }
            else {
                $('content_right_usercontrol_dvFloridaInfo').style.display = "none";
            }
            changeCatalogFromMiniShoppingCart();
        }
        else if (result == "SM1") {
            $('content_right_usercontrol_dvFloridaInfo').style.display = "none";
            switchEmailBox(true, $('content_right_usercontrol_dvShowMessageNotLogged'));
        }
        else if (result == "SM2") {
            $('content_right_usercontrol_dvFloridaInfo').style.display = "none";
            switchEmailBox(true, $('content_right_usercontrol_dvShowMessageNotAnnualHolder'));
        }
    }, function() {
        // failed		    

    });
}
function OpenAnnualPassPanel() {
    showPassportContent(pageAnnualPass, "", "", "");
    switchEmailBox(false, $('content_right_usercontrol_dvShowMessageNotLogged'));
    switchEmailBox(false, $('content_right_usercontrol_dvShowMessageNotAnnualHolder'));
}
function RemoveLineItemToBasket(arrow, msg) {
    PageMethods.RemoveItemMiniShoppingCart($('content_right_usercontrol_hdnItemID').value, $('content_right_usercontrol_hdnPromoCodeID').value,
        function(response) {
            // success
            var parameter = false;

            if (response != '') {
                switchEmailBox(true, $('dvProductDetailBox'));
                $('dvProductDetail').innerHTML = response;

                CloseProductDetailBox();

                closeg(arrow, msg);
                return;
            }
            if ($("content_menu_panel") != null) {
                if ($("content_menu_panel").select(".contentMenuDetailItem").length == 0) {
                    parameter = true;
                }
                else if ($("content_menu_panel").select(".contentMenuDetailItem").length > 0 && $("content_menu_panel").select(".contentMenuDetailItem")[0].style.display == "none") {
                    parameter = true;
                }
            }
            else {
                parameter = true;
            }

            var pageLocation = "/shoppingcart/ViewCartInfo.aspx?avoidcache=" + guid();

            if (parameter) {
                showWithSlide = false;
                OpenMiniCart();
            }
            else {
                PageMethods.GetHtmlContent(pageLocation, function(response) {
                    //success
                    var objContainerPanelRight = $("content_menu_panel").select(".content_right_sc_principal")[0];

                    response = GetContentXml(response);

                    var posBegin;
                    var posEnd;

                    posBegin = response.indexOf('<!--StartContent-->');
                    posEnd = response.lastIndexOf('<!--EndContent-->');

                    response = response.slice(posBegin, posEnd);

                    objContainerPanelRight.innerHTML = response;

                    objContainerPanelRight.style.display = "block";
                    ChangeSaveAndClose();
                }, getViewCartInfoFailed);
            }
            //getCartItems();
            closeg(arrow, msg);
        }, function(response) {
            // failed		    
            window.location = ErrorPage;
        });
}

function OpenLeaveSite() {
    switchEmailBox(false, $('divApllyNow'));
    switchEmailBox(true, $('divLeaveSite'));
    return false;
}

function CloseMiniCart() {
    Effect.BlindUp($('content_menu_right_panel'),
    {
        duration: 1,
        queue: {
            scope: "minicart",
            position: "end",
            limit: 1
        }
    });

}
function AddNewAddress() {
    PageMethods.AddNewAddress(function() {
        // success
        window.location = UrlAddressDetail;
    }, function() {
        // failed		
        window.location = ErrorPage;
    });
}

/*The following functions are used for "RemoveItem for your Cart" confirmation message*/
function OpenRemoveConfirm(objRemoveLink, ItemID, PromoCodeID, arrow, msg, ProductID, VariantID) {
    $('ucViewCartContent_ucViewCart_hdnItemID').value = ItemID;
    $('ucViewCartContent_ucViewCart_hdnPromoCodeID').value = PromoCodeID;
    $('ucViewCartContent_ucViewCart_hdnProductId').value = ProductID;
    $('ucViewCartContent_ucViewCart_hdnVariantId').value = VariantID;
    mypos($(objRemoveLink), arrow, msg);
}
function closeg(arrow, msg) {
    //alert(txt)
    $(msg).hide();
    $(arrow).hide();
    insideDiv = 0;
    PopUp = null;
}
function closem(object) {
    $(object).ancestors()[0].hide();
    $('arrow').hide();
    insideDiv = 0;
    PopUp = null
}
function mypos(me, arrow, msg) {
    divArrow = arrow;
    divMsg = msg;
    me = me;
    PopUp = me;
    insideDiv = 1;
    $(msg).observe('click', function() {
        insideDiv = 1;
    })

}
function findPos(obj) {
    var curleft = curtop = 0;
    if (obj.offsetParent) {
        do {
            curleft += obj.offsetLeft;
            curtop += obj.offsetTop;
        }
        while (obj = obj.offsetParent)return [curleft, curtop];
    }
}
function control(e) {
    ypos = e.clientY;
    xpos = e.clientX
    _x = e.clientX - 230;
    _y = e.clientY - 45;

    if (PopUp) {

        if (_y <= 0) {
            $('msg').setStyle({
                background: image1,
                left: _x + 'px',
                top: _y + 55 + 'px'
            });
            $('arrow').setStyle({
                left: xpos - 5 + 'px',
                top: ypos + 'px',
                background: arrow1
            });
            PopUp = me;
            insideDiv += 0;
        }
        else {
            $('msg').setStyle({
                background: image2,
                left: _x + 'px',
                top: _y + 'px'
            });
            $('arrow').setStyle({
                left: xpos - 5 + 'px',
                top: ypos - 17 + 'px',
                background: arrow2
            });

            PopUp = me;
            insideDiv += 0;
        }

        if (_x <= 0) {
            $('msg').setStyle({
                left: '0px'
            });
        }

        $('msg').show();
        $('arrow').show();
    }


    if ($('msg').getStyle('display') != 'none' && insideDiv != 1) {

        $('msg').hide();
        $('arrow').hide();
        PopUp = null;
    }
    insideDiv = 0;
}

function GetPostionMessageHelp(posXY) {
    var only = true;
    var varLeft;
    var varTop;
    var varClientHeight;
    var varClientWidth;

    if (divArrow == "arrowTopLogin") {

        var CheckOutLogin = $('CheckOutLogin');

        if (CheckOutLogin != null) {

            xpos = 0;
            varTop = CheckOutLogin.style.top.replace('px', '');
            varClientHeight = CheckOutLogin.clientHeight;

            if ($('ucViewCartContent_ucCheckOutLogin_dvCaptcha').style.display == 'block') {

                ypos = parseInt((varClientHeight / 2) - 50);

            } else {

                ypos = parseInt((varClientHeight / 2) - 10);
            }
        } else {

            varLeft = $("dvLoginPopup").style.left.replace('px', '');
            varLeft = (varLeft == '') ? 635 : varLeft;
            xpos = parseInt(varLeft);
            ypos = 0;
        }
        return;
    }
    if (divArrow == "arrowLogin") {
        xpos = posXY[0] - 200;
        ypos = posXY[1] - 30;
        return;
    }
    if (divArrow == "arrowViewCart") {

        var varHead = $("ucViewCartContent_upViewCart").select(".datalist2 .head");
        varClientWidth = varHead[0].clientWidth;
        xpos = varClientWidth - 330;
        ypos = parseInt(posXY[1]) - 160;
        return;
    }
    if ($("content_menu_right_panel") == null) {
        xpos = parseInt(posXY[0]) - 200;
        ypos = parseInt(posXY[1]) - 150;
        return;
    }

    var ticket_cont = $("content_menu_right_panel").select(".ticket_cont");

    if ($("content_menu_panel").select(".contentMenuDetailItem").length > 0 && $("content_menu_panel").select(".contentMenuDetailItem")[0].style.display == "block") {
        only = false;
    }
    if ($("content_menu_right_panel").style.display == "block" || $("content_menu_right_panel").style.display == "") only = false;

    if (only) {
        xpos = posXY[0] - 200;
        ypos = posXY[1] - 30;
    } else {
        if ($("content_menu_panel").select(".contentMenuDetailItem").length > 0 && $("content_menu_panel").select(".contentMenuDetailItem")[0].style.display == "block") {
            if (Prototype.Browser.WebKit) {
                xpos = 740 - 60;
            } else if (Prototype.Browser.IE) {
                xpos = $("content_menu_panel").select(".contentMenu")[0].offsetWidth - 60;
            } else {
                xpos = $("content_menu_panel").select(".contentMenu")[0].offsetWidth - 60;
            }
            ypos = posXY[1] - 175;
        } else {
            if (Prototype.Browser.WebKit) {
                xpos = -60;
            } else if (Prototype.Browser.IE) {
                xpos = ticket_cont[0].currentStyle.width;
                xpos = parseInt(xpos.replace('px', '')) - 305;
            } else {
                xpos = ticket_cont[0].offsetParent.offsetWidth - 320;
            }
            ypos = posXY[1] - 150;
        }
    }
}

function control01(e) {
    if (PopUp == null) {
        if ($(divMsg) == null) return;
        if ($(divMsg).getStyle('display') != 'none' && insideDiv != 1) {
            $(divMsg).hide();
        }
        return;
    }
    var posXY = findPos(PopUp);
    if (posXY == undefined) {
        if ($(divMsg).getStyle('display') != 'none' && insideDiv != 1) {
            $(divMsg).hide();
            PopUp = null;
        }
        return;
    }

    GetPostionMessageHelp(posXY);

    if (_y <= 0) {
        $(divMsg).setStyle({
            background: image1,
            left: xpos + 'px',
            top: ypos + 'px'
        });
        insideDiv += 0;
    } else {
        $(divMsg).setStyle({
            background: image2,
            left: xpos + 'px',
            top: ypos + 'px'
        });
        insideDiv += 0;
    }
    PopUp = me;
    $(divMsg).show();
    insideDiv = 0;
}
/**/


