﻿
$(document).ready(function () {
    DoEvents();
});

var cnt = 0;

function DoEvents() {
    $("#sli_search_1").keypress(function () {
        cnt++
        if (cnt == 1) {
            $(this).val('');
        }

    }).blur(function () {
        //        $(this).val(' by CAT ID product or brand');
        cnt = 0;

    });

}

function stopEnterKey(sender, e) {
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox
    if (key == 13) {
        return false;
    }

}

function stopEnterKeyAndBackSpace(sender, e) {
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox
    if ((key == 13) || (key == 8)) {
        return false;
    }

}



function NotesPress(sender, e) {
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox


    if ((((key >= 65) && (key <= 90)) || ((key >= 97) && (key <= 122))) || (key == 32) || (key == 46) || (key == 44) || (key == 8) || (key == 0)) {
        return true;
    }

    else
        return false;

}

function PostalCodeKeyPress(sender, e) {
    var lst = $("#ctl00_AjaxContent_DeliveryAddress_lstCountryID_lstCountry").val();

    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox

    //Australia: Only Numbers
    if (lst = "1") {
        if (((key < 48 || key > 57)) || ((key == 46) || (key == 8))) {
            return true;
        }
        else
            return false;
    }
    //Rest Any Number or and Alfa numeric charcters.
    else {
        if ((((key >= 65) && (key <= 90)) || ((key >= 97) && (key <= 122))) || (key == 32) || (key == 46) || (key == 44) || (key == 8) || (key == 0)) {
            return true;
        }
        else
            return false;

    }
}

function QtyKeyPress(sender, e) {

    var key;
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox

    if (key == 13) {
        //Get the button the user wants to have clicked
        var btn = document.getElementById(sender.id.substr(0, sender.id.indexOf("productQuantity")) + "cmdUpdateQty");
        if (btn != null) { //If we find the button click it
            btn.click();
            return false;
        }
    }

}

function QtyKeyPressAddToCart(sender, e, txtQtyName, lbName) {
    var key;
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox

    if (key == 13) {
        //Get the button the user wants to have clicked
        var btn = document.getElementById(sender.id.substr(0, sender.id.indexOf(txtQtyName)) + lbName);
        if (btn != null) { //If we find the button click it
            btn.click();
            return false;
        }
    }
}

function doClick(buttonName, e) {
    var key;
    if (window.event)
        key = window.event.keyCode;     //IE
    else
        key = e.which;     //firefox

    if (key == 13) {
        //Get the button the user wants to have clicked
        var btn = document.getElementById(buttonName);
        if (btn != null) { //If we find the button click it
            btn.click();
            event.keyCode = 0
        }
    }
}


var myWin = null;
function OpenWindow(imagepath, description, height) {
    if (myWin && !myWin.closed) {
        myWin.close();
        myWin = window.open(imagepath, "mywindow", "width=725,height=" + height + ",scrollbars,resizable'");
        //myWin = window.open(imagepath, "_blank");

    }
    else {
        myWin = window.open(imagepath, "mywindow", "width=725,height=" + height + ",scrollbars,resizable'");
        //myWin = window.open(imagepath, "_blank");

    }
}

function CalculatePasswordStrength(sender) {
    var strength;
    var desc = ['', '(Password Strength: Very Weak)', '(Password Strength: Weak)', '(Password Strength: Better)', '(Password Strength: Medium)', '(Password Strength: Strong)', '(Password Strength: Strongest)'];
    var password = sender.value;

    strength = 0;

    // More than 0 characters
    if (password.length > 0)
        strength++;

    // More than 6 characters
    if (password.length > 6)
        strength++;

    // More than 12 characters
    if (password.length > 12)
        strength++;

    // Both lowercase and uppercase characters
    if (password.match(/[a-z]/) &&
	    password.match(/[A-Z]/))
        strength++;

    // At least one digit
    if (password.match(/\d+/))
        strength++;

    // At least one special character
    if (password.match(/.[!,@,#,$,%,^,&,*,?,_,~,-,(,)]/))
        strength++;

    document.getElementById("password_strength").innerHTML = desc[strength];

    //	document.getElementById("password_graph").className = "strength" + strength;

    return (strength);
}

function isEmpty(str) {
    return str.replace(/^\s+|\s+$/g, '').length;
}

function NotEmptyAndEmail(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var rex = /^[+a-zA-Z0-9_.-]+@([a-zA-Z0-9-]+\.)+[a-zA-Z0-9]{2,6}$/;
    if ((rex.test(args.Value)) && (isEmpty(args.Value) != 0)) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        $(elemRedImg).css('display', 'none')
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;

    }
}

function NotEmptyAndAlphaNumeric(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    //var rex = new RegExp("\w*\s*")
    var rex = /[a-zA-Z]+/;

    if ((rex.test(args.Value)) && (isEmpty(args.Value) != 0)) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;
    }
}

function NotEmptyAndPassword(sender, args) {

    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");

    if ((isEmpty(args.Value) != 0) && ((args.Value.length >= 4) && (args.Value.length <= 20))) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;
    }
}

function NotEmptyAndPasswordSixToTwenty(sender, args) {

    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");


    if ((isEmpty(args.Value) != 0) && ((args.Value.length >= 6) && (args.Value.length <= 20))) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;
    }
}


function NotEmpty(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");

    if (isEmpty(args.Value) != 0) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;
    }
}

function PostalCode(sender, args) {

    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var lst = $("#ctl00_AjaxContent_DeliveryAddress_lstCountryID_lstCountry").val();
    var lst1 = $("#ctl00_AjaxContent_CorrespondenceAddress_lstCountryID_lstCountry").val();
    var lst3 = $("#ctl00_AjaxContent_lstCountry").val();
    
    //Australia Numbers
    if ((lst == "1") || (lst1 == "1") || (lst3 == "1")) {
        if ((isNaN(args.Value) != true) && (isEmpty(args.Value) != 0)) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        //All characters
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }
    }
    else {
        if (isEmpty(args.Value) != 0) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;
        }

    }

}

//For the control where you use both in one
function PostalCodeDelivery(sender, args) {

    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var lst1 = $("#ctl00_AjaxContent_CorrespondenseAddress_lstCountryID_lstCountry").val();
   

    //Australia Numbers
    if (lst1 == "1")  {
        if ((isNaN(args.Value) != true) && (isEmpty(args.Value) != 0)) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        //All characters
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }
    }
    else {
        if (isEmpty(args.Value) != 0) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;
        }

    }

}


function State(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var lst = $("#ctl00_AjaxContent_DeliveryAddress_lstCountryID_lstCountry").val();
    var lst1 = $("#ctl00_AjaxContent_CorrespondenceAddress_lstCountryID_lstCountry").val();
    var lst3 = $("#ctl00_AjaxContent_lstCountry").val();
    var lst4 = $("#ctl00$AjaxContent$lstCountry").val();
    var testVal = true;

    //Australia Numbers
    if ((lst == "1") || (lst1 == "1") || (lst3 == "1") || (lst4 == "1")) {

        for (var i = 0; i < args.Value.length; i++) {

            if ( (args.Value.charAt(i) == " ") || (isNaN(args.Value.charAt(i))) ) {

            }
            else {
                testVal = false;
                break;

            }
        };

        if ((testVal) && (isEmpty(args.Value) != 0)) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        //All characters
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }
    }
    else {
        if (isEmpty(args.Value) != 0) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }

    }

}

//Where you use both in one page
function StateDelivery(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var lst1 = $("#ctl00_AjaxContent_CorrespondenseAddress_lstCountryID_lstCountry").val();
    var testVal = true;

    //Australia Numbers
    if (lst1 == "1")  {

        for (var i = 0; i < args.Value.length; i++) {

            if ((args.Value.charAt(i) == " ") || (isNaN(args.Value.charAt(i)))) {

            }
            else {
                testVal = false;
                break;

            }
        };

        if ((testVal) && (isEmpty(args.Value) != 0)) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        //All characters
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }
    }
    else {
        if (isEmpty(args.Value) != 0) {
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            args.IsValid = true;
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            args.IsValid = false;
            return;

        }

    }

}



function AlfaNumericCharacters(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");
    var testVal = true;


    for (var i = 0; i < args.Value.length; i++) {
        if ((args.Value.charAt(i) == " ") || (isNaN(args.Value.charAt(i)))) {

        }
        else {
            testVal = false;
            break;

        }
    }

    if ((testVal) && (isEmpty(args.Value) != 0)) {
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        args.IsValid = true;
        return;
    }
    //All characters
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;

    }
}





function CreditCard(sender, args) {
    var ckkDigits = 16;
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");

    var americanExpress = $("#ctl00_AjaxContent_rbAmericanExpress")
    var diners = $("#ctl00_AjaxContent_rbDinerClub");

    if ($('input[id=ctl00_AjaxContent_rbAmericanExpress]').is(":checked")) {
        ckkDigits = 15
    }

    //All Except Diners 15 or 16
    if ($('input[id=ctl00_AjaxContent_rbVisa]').is(":checked") || $('input[id=ctl00_AjaxContent_rbMaster]').is(":checked") || $('input[id=ctl00_AjaxContent_rbAmericanExpress]').is(":checked")) {
        if (args.Value.length == ckkDigits) {
            args.IsValid = true;
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            $("#creditCardError").css('display', 'block');
            //$("#ctl00_AjaxContent_globalErrorShowHide").css('display', 'none');
            args.IsValid = false;
            return;
        }
    }
    //Diners 14
    else if ($('input[id=ctl00_AjaxContent_rbDinerClub]').is(":checked")) {
        if (args.Value.length == 14) {
            args.IsValid = true;
            $(elemGreenImg).css('display', 'block');
            $(elemRedImg).css('display', 'none');
            $(elemLblCorrect).css('display', 'block');
            $(elemLblError).css('display', 'none');
            return;
        }
        else {
            $(elemGreenImg).css('display', 'none');
            $(elemRedImg).css('display', 'block');
            $(elemLblCorrect).css('display', 'none');
            $(elemLblError).css('display', 'block');
            $("#creditCardError").css('display', 'block');
            //$("#ctl00_AjaxContent_globalErrorShowHide").css('display', 'none');
            args.IsValid = false;
            return;
        }

    }

}

function ValidateCreditCard(sender) {
    elemGreenImg = $("#" + "ctl00_AjaxContent_txtCardNumberError_GreenArrow");
    elemRedImg = $("#" + "ctl00_AjaxContent_txtCardNumberError_RedArrow");
    elemLblError = $("#" + "ctl00_AjaxContent_txtCardNumberError_lblError");
    elemLblCorrect = $("#" + "ctl00_AjaxContent_txtCardNumberError_lblCorrect");
    creditCardLength = $("#" + "ctl00_AjaxContent_txtCardNumberError_txtInput").val().length;
    validationControl = $("#" + "ctl00_AjaxContent_txtCardNumberError_ValidatorInput");
    $(validationControl).css('display', 'none');

    var result = false;

    if (sender.id == "ctl00_AjaxContent_rbAmericanExpress") {
        if (creditCardLength == 15) {
            result = true;
        }
    }
    else if ((sender.id == "ctl00_AjaxContent_rbVisa") || (sender.id == "ctl00_AjaxContent_rbMaster")) {
        if (creditCardLength == 16) {
            result = true
        }
    }
    else if (sender.id == "ctl00_AjaxContent_rbDinerClub") {
        if (creditCardLength == 14) {
            result = true;
        }
    }

    if (result == true) {
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        $(elemRedImg).css('display', 'none');

    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        $("#creditCardError").css('display', 'block');
        $(elemRedImg).css('display', 'block');
    }

}


function SecurityCode(sender, args) {
    elemGreenImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "GreenArrow");
    elemRedImg = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "RedArrow");
    elemLblError = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblError");
    elemLblCorrect = $("#" + sender.id.substr(0, sender.id.indexOf("Validator")) + "lblCorrect");

    if ((args.Value.length == 3) || (args.Value.length == 4)) {
        args.IsValid = true;
        $(elemGreenImg).css('display', 'block');
        $(elemRedImg).css('display', 'none');
        $(elemLblCorrect).css('display', 'block');
        $(elemLblError).css('display', 'none');
        return;
    }
    else {
        $(elemGreenImg).css('display', 'none');
        $(elemRedImg).css('display', 'block');
        $(elemLblCorrect).css('display', 'none');
        $(elemLblError).css('display', 'block');
        args.IsValid = false;
        return;
    }
}


function ClearTextBox(sender, initualText) //'Cat ID product or brand');
{
    sender.value = "";
}

function SetHiddenValue(qtyID, sender) {
    var hvQty = $get(qtyID);
    hvQty.value = sender;

}

function addQtyToHyperlink(qtyID, sender) {
    var hvQty = $get(qtyID);
    var qtyVal = 0;
    //Get qty if hiddenValue = 0
    if (hvQty.value == 0)
        qtyVal = sender.href.substr(sender.href.indexOf("&qty=") + 5, 1);
    else
        qtyVal = hvQty.value;
    var hrefStr = sender.href;
    //Remove current and add new qty
    hrefStr = hrefStr.substr(0, hrefStr.indexOf("&qty"));
    sender.href = hrefStr + '&qty=' + qtyVal;
}


function toggle(obj, action) {
    var el = document.getElementById(obj);
    var el_parent = document.getElementById(obj + '_parent')
    if (action == 'open') {
        el.style.display = 'block';
        el_parent.className = 'current';
    }
    else {
        el.style.display = 'none';
        el_parent.className = '';
    }
}

function get_nextsibling(n) {
    /* check if the next sibling node is an element node */
    var x = n.nextSibling;
    while (x != null) {
        if (x.nodeType == 1) {
            break;
        }
        x = x.nextSibling;
    }
    return x;
}

function hide_display(obj) {
    var node = get_nextsibling(obj);
    while (node != null) {
        node.style.display = 'none';
        node = get_nextsibling(node);
    }
}

function toggle_display(obj) {
    /* use this function to hide the details of the different forms. then unhide the selected value. */
    hide_display(obj);
    var x = 1;
    if (Number(obj.value) != 0) {
        /* loop through the siblings to activate the correct selection */
        node = get_nextsibling(obj);
        while (x != Number(obj.value)) {
            node = get_nextsibling(node);
            x++;
        }
        node.style.display = '';
    }
}


function CheckPrescription(myform) {
    // will check for required fields.

    var message = 'Required Field(s) missing:\n\n';
    var isgood = true;

    message = message + myform.pname.value + '\n';

    if (myform.scriptdetail.value == 0) {
        message = message + '  Script Detail Required. \n';
        isgood = false;
    }
    else {
        if (myform.scriptdetail.value == 'script on file') {

            if (myform.HSpatientname.value == '') {
                message = message + '  Patient Name Required.\n';
                isgood = false;
            }

        }
        else {
            if (myform.scriptdetail.value == 'mailing script') {

                if (myform.Mpatientname.value == '') {
                    message = message + '  Patient Name Required.\n';
                    isgood = false;
                }

            }

        }

    }

    if (isgood)
    { return true; }
    else {
        alert(message);
        return false;
    }

}

function CheckPrescriptionM(myform) {
    // WILL CHECK FOR REQUIRED FEILDS.

    var message = 'Required Feild(s) missing:\n\n';
    var isgood = true;
    var i;

    for (i = 0; i < myform.pname.length; i++) {
        message = message + myform.pname[i].value + '\n';

        if (myform.scriptdetail[i].value == 0) {
            message = message + '  Script Detail Required.\n';
            isgood = false;
        }
        else {
            if (myform.scriptdetail[i].value == 'script on file') {
                if (myform.HSpatientname[i].value == '') {
                    message = message + '  Patient Name Required.\n';
                    isgood = false;
                }
            }
            else {
                if (myform.scriptdetail[i].value == 'mailing script') {
                    if (myform.Mpatientname[i].value == '') {
                        message = message + '  Patient Name Required.\n';
                        isgood = false;
                    }
                }
            }
        }

        message = message + '\n'
    }

    if (isgood)
    { return true; }
    else {
        alert(message);
        return false;
    }

}

/******************
Product Search save position
******************/
function getSearchSelection(myList) {
    // load the selection for the search.
    var Selection = Cookies.getCookie('search'); // get the search cookie.
    if (typeof (Selection) == 'undefined')
    { return; }
    try
        { myList.selectedIndex = Selection; }
    catch (ex)
        { myList.selectedIndex = 0; }
}

function setSearchSelection(myList) {
    // save the selection for the search.
    Cookies.setCookie('search', myList.selectedIndex);
}

/*****************
Catalogue page flipper new window open
*****************/
// get space available in browser
var winW = 0, winH = 0;

if (typeof (window.innerWidth) == 'number') {
    //Non-IE
    winW = window.innerWidth;
    winH = window.innerHeight;

} else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
    //IE 6+ in 'standards compliant mode'
    winW = document.documentElement.clientWidth;
    winH = document.documentElement.clientHeight;

} else if (document.body && (document.body.clientWidth || document.body.clientHeight)) {
    //IE 4 compatible
    winW = document.body.clientWidth;
    winH = document.body.clientHeight;
}

//open window based on browser space
function openCatWindowA(url) {
    window.open(url, "catviewer", "width=" + winW + ",height=" + winH + ",scrollbars=yes,resizable=yes,top=10,left=0");
}


function toggleLayer(whichLayer, sender) {
    var elem, vis;
    if (document.getElementById) // this is the way the standards work    
        elem = document.getElementById(whichLayer);
    else if (document.all) // this is the way old msie versions work      
        elem = document.all[whichLayer];
    else if (document.layers) // this is the way nn4 works    
        elem = document.layers[whichLayer];
    vis = elem.style;  // if the style.display value is blank we try to figure it out here

    if (vis.display == "block") {
        sender.src = 'images/Down.png';
        sender.title = "Click to show content.";
    }
    else {
        sender.src = 'images/Up.png';
        sender.title = "Click to hide content.";
    }

    if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
        vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
    vis.display = (vis.display == '' || vis.display == 'block') ? 'none' : 'block';

}

function toggleLayerHeading(whichLayer, sender) {
    var elem, vis;
    if (document.getElementById) // this is the way the standards work    
        elem = document.getElementById(whichLayer);
    else if (document.all) // this is the way old msie versions work      
        elem = document.all[whichLayer];
    else if (document.layers) // this is the way nn4 works    
        elem = document.layers[whichLayer];
    vis = elem.style;  // if the style.display value is blank we try to figure it out here

    if (vis.display == "block") {
        sender.src = 'images/WhiteArrowDown.png';
        sender.title = "Click to show content.";
    }
    else {
        sender.src = 'images/WhiteArrowUp.png';
        sender.title = "Click to hide content.";
    }

    if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
        vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
    vis.display = (vis.display == '' || vis.display == 'block') ? 'none' : 'block';

}

function ShowHideDiv(whichLayer, sender, makeIdUnique) {
    var elem, vis;
    whichLayer = "" + makeIdUnique + whichLayer;
    if (document.getElementById) // this is the way the standards work    
        elem = document.getElementById(whichLayer);
    else if (document.all) // this is the way old msie versions work      
        elem = document.all[whichLayer];
    else if (document.layers) // this is the way nn4 works    
        elem = document.layers[whichLayer];
    vis = elem.style;  // if the style.display value is blank we try to figure it out here

    if (vis.display == "block") {
        sender.innerHTML = "<h3><b>Close</b></h3>";
    }
    else {
        sender.innerHTML = "<h3><b>Open</b></h3>";
    }

    if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
        vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
    vis.display = (vis.display == '' || vis.display == 'block') ? 'none' : 'block';

}


function ShowHideDivCreateAccount(whichLayer, sender) {
    var elem, vis;
    if (document.getElementById) // this is the way the standards work    
        elem = document.getElementById(whichLayer);
    else if (document.all) // this is the way old msie versions work      
        elem = document.all[whichLayer];
    else if (document.layers) // this is the way nn4 works    
        elem = document.layers[whichLayer];
    vis = elem.style;  // if the style.display value is blank we try to figure it out here


    if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
        vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
    vis.display = (vis.display == '' || vis.display == 'block') ? 'none' : 'block';

}

function ShowHideDeliveryAddress(whichLayer, sender) {
    var elem, vis;
    if (document.getElementById) // this is the way the standards work    
        elem = document.getElementById(whichLayer);
    else if (document.all) // this is the way old msie versions work      
        elem = document.all[whichLayer];
    else if (document.layers) // this is the way nn4 works    
        elem = document.layers[whichLayer];
    vis = elem.style;  // if the style.display value is blank we try to figure it out here


    if (vis.display == '' && elem.offsetWidth != undefined && elem.offsetHeight != undefined)
        vis.display = (elem.offsetWidth != 0 && elem.offsetHeight != 0) ? 'block' : 'none';
    vis.display = (vis.display == '' || vis.display == 'block') ? 'none' : 'block';

}


function toggleLayerProduct(divShow, divHideFirst, divHideSecond, sender, imageType, imgOne, imgTwo) {

    var controlShow, controlFirstHide, controlSecHide, vis, visHideFirst, visHideSecond, iOne, iTwo, iThree;
    if (document.getElementById) // this is the way the standards work
    {
        controlShow = document.getElementById(divShow);
        controlFirstHide = document.getElementById(divHideFirst);
        controlSecHide = document.getElementById(divHideSecond);
        iOne = document.getElementById(imgOne);
        iTwo = document.getElementById(imgTwo);
        //iThree = document.getElementById(imgThree);
    }
    else if (document.all) // this is the way old msie versions work
    {
        controlShow = document.all[divShow];
        controlFirstHide = document.all[divHideFirst];
        controlSecHide = document.all[divHideSecond];
        iOne = document.all[imgOne];
        iTwo = document.all[imgTwo];
        //iThree = document.all[imgThree];
    }
    else if (document.layers) // this is the way nn4 works
    {
        controlShow = document.layers[divShow];
        controlFirstHide = document.layers[divHideFirst];
        controlSecHide = document.layers[divHideSecond];
        iOne = document.layers[imgOne];
        iTwo = document.layers[imgTwo];

    }

    vis = controlShow.style;
    visHideFirst = controlFirstHide.style;
    visHideSecond = controlSecHide.style;

    //Make All Grey
    iOne.src = 'ProductImages/tab-onlinespecials-grey.png';
    iTwo.src = 'ProductImages/tab-new-prod.jpg';

    vis.display = 'block'
    visHideFirst.display = 'none';
    visHideSecond.display = 'none';

    //Make Selected Blue
    switch (divShow) {
        case "exclusiveOnlineSpecialsShowHide":
            sender.src = 'ProductImages/tab-onlinespecials-active.png';
            break;
        case "newProductsShowHide":
            sender.src = 'ProductImages/tab-newproducts.jpg';
            break;
        default:
            break;
    }
}


