var fadeSpeed = 250;
var slideSpeedVariant = 2;
var useColorSlide = false;

function QS() {
    this.qs = {};
    var s = location.search.replace(/^\?|#.*$/g, '');
    if (s) {
        var qsParts = s.split('&');
        var i, nv;
        for (i = 0; i < qsParts.length; i++) {
            nv = qsParts[i].split('=');
            this.qs[nv[0]] = nv[1];
        }
    }
}
QS.prototype.add = function(name, value) {
    if (arguments.length == 1 && arguments[0].constructor == Object) {
        this.addMany(arguments[0]);
        return;
    }
    this.qs[name] = value;
}
QS.prototype.addMany = function(newValues) {
    for (nv in newValues) {
        this.qs[nv] = newValues[nv];
    }
}
QS.prototype.remove = function(name) {
    if (arguments.length == 1 && arguments[0].constructor == Array) {
        this.removeMany(arguments[0]);
        return;
    }
    delete this.qs[name];
}
QS.prototype.replace = function(name, value) {
    this.remove(name);
    this.add(name, value);
    return;
}
QS.prototype.removeMany = function(deleteNames) {
    var i;
    for (i = 0; i < deleteNames.length; i++) {
        delete this.qs[deleteNames[i]];
    }
}
QS.prototype.getQueryString = function() {
    var nv, q = [];
    for (nv in this.qs) {
        q[q.length] = nv + '=' + this.qs[nv];
    }
    return q.join('&');
}
QS.prototype.toString = QS.prototype.getQueryString

function initSamples()
{
$(document).ready(function() {
    var qy = new QS();
    var pCatId;
    var pProdId;
    if (typeof (samplesCartValue) != "undefined") {
        var samples = samplesCartValue.split(',');
        for (i = 0; i < samples.length; i++) {
            if (samples[i] != '') {
                var prodIdAndColorId = samples[i].split('_');
                var prodId = prodIdAndColorId[1];
                var colorId = prodIdAndColorId[0];
                addItemToCart(prodId, colorId, true, true);
            }
        }
    }
    if (qy.qs['debugJS'] && qy.qs['debugJS'] == '1') {
        debug = true;
    }
    if (qy.qs['ucs'] && qy.qs['ucs'] == '1') {
        useColorSlide = true;
    }
    if (qy.qs['pid']) {
        pProdId = qy.qs['pid'];
        pCatId = getCategoryId(pProdId);
        selectCategory(pCatId);
        selectProduct(pProdId);
    } else {
        pProdId = -1;
    }
    if (qy.qs['cid']) {
        pCatId = qy.qs['cid'];
        selectCategory(pCatId);
    } else {
        pCatId = -1;
    }
    if (qy.qs['cRid']) {
        var pColorId = qy.qs['cRid'];
        if (pProdId && pProdId != '') {
            if (!hiddenColors[String(pProdId + '-' + pColorId)]) {
                addItemToCart(pProdId, pColorId, false);
            }
        }
    }
    $('#masterCategoryList li a').click(function(e) {
        e.preventDefault();
        var catId = getDataId($(this).parent().attr('id'));
        selectCategory(catId);
    });
    $('#productsContainer ul li a').click(function(e) {
        e.preventDefault();
        var prodId = getDataId($(this).parent().attr('id'));
        selectProduct(prodId);
    });
    $('#colorsContainer ul li a').click(function(e) {
        e.preventDefault();
        var colorId = getColorId($(this).parent().attr('id'));
        var productId = getDataId($(this).parent().attr('id'));
        addItemToCart(productId, colorId);
    });
});
}
function selectCategory(categoryId) {
    $('#instructionsContainer').fadeOut(fadeSpeed, function() {
        setCategoryInBreadCrumb(categoryId);
        setCategoryAsSelectedInMenu(categoryId);
        $('#colorsContainer').fadeOut(fadeSpeed, function() {

            $('#colorsContainer ul.on').removeClass('on').hide();
            if ($('#productsContainer ul.on').length == 0) {
                transitionProductList(categoryId);
            } else {
                $('#productsContainer ul.on').removeClass('on').fadeOut(fadeSpeed, function() {
                    transitionProductList(categoryId);
                });
            }
        });
    });
}
function selectProduct(productId) {
    $('#instructionsContainer').fadeOut(fadeSpeed, function() {
        if (useColorSlide) {
            slideColorList(productId);
        } else {
            animateProductName(productId);
        }
    });
}
function addItemToCart(productId, colorId, suppressAjax, suppressAnimation) {
    var item = $('#productLink-' + productId + ' a');
    var doValidation = true;
    if (debug) { doValidation = false; }
    //Check business rules
    if (!doValidation || validateSampleBusinessRules(productId + '-0000')) {
        var prodText = $(item).text();

        //Added the IF statement since sometimes different browsers think that the @ symbol run it twice.
        if (prodText.indexOf("@", 3) > 0) {
            prodText = prodText.substring(0, prodText.length / 2);
        }
        
        var cartGroup = createCartGroup(productId, prodText);
        var colorName = document.getElementById('colorLink-' + productId + '-' + colorId).childNodes[0].childNodes[1].innerHTML;
        var cartItem = createCartItem(productId, colorId, colorName);
        cartGroup.childNodes[1].appendChild(cartItem);
        if (suppressAnimation && suppressAnimation == true) {
            $(cartItem).show();
            hiddenColors[String(productId + '-' + colorId)] = this;
            $('#colorLink-' + productId + '-' + colorId).hide();
            if (samplesValue != '') { samplesValue += ','; }
            samplesValue += colorId + '_' + productId;
            document.getElementById('Sample').value = samplesValue;
            if (suppressAjax && suppressAjax == true) { } else {
                makeAjaxRequest();
            }
        } else {
            $(cartItem).fadeIn();
            $('#colorLink-' + productId + '-' + colorId).effect('transfer', { to: '#cartItem-' + productId + '-' + colorId, className: 'sampleTransferEffect' }, 1000, function() {
                hiddenColors[String(productId + '-' + colorId)] = this;
                $('#colorLink-' + productId + '-' + colorId).hide();
                if (samplesValue != '') { samplesValue += ','; }
                samplesValue += colorId + '_' + productId;
                document.getElementById('Sample').value = samplesValue;
                if (suppressAjax && suppressAjax == true) { } else {
                    makeAjaxRequest();
                }
            });
        }
        itemsInCart++;
        if (itemsInCart > 0) { document.getElementById('submitBlock').className = 'sampleCartFooter'; }
    }
}
function removeItemFromCart(productId, colorId, suppressAjax) {
    var cartItem = document.getElementById('cartItem-' + productId + '-' + colorId);
    var cartParent = cartItem.parentNode;
    var options = {};
    cartParent.removeChild(cartItem);
    if (cartParent.childNodes.length == 0) {
        var groupItem = cartParent.parentNode;
        var cart = groupItem.parentNode;
        cart.removeChild(groupItem);
    }
    $(hiddenColors[productId + '-' + colorId]).fadeIn();
    removeArrayItem(hiddenColors, productId + '-' + colorId);
    itemsInCart--;

    var regE = new RegExp(colorId + '_' + productId + ',?', '');
    var replaceValue = regE.exec(samplesValue);
    samplesValue = samplesValue.replace(replaceValue, '');
    document.getElementById('Sample').value = samplesValue;
    if (itemsInCart < 1) { document.getElementById('submitBlock').className = 'hidden'; }
    if (suppressAjax && suppressAjax == true) { } else {
        makeAjaxRequest();
    }
}
function removeArrayItem(passedArray, value) {
    passedArray[value] = null;
}
function slideColorList(productId) {
    var categoryId = getCategoryId(productId);

    var contPos = $('#productsContainer').offset();
    var contWidth = $('#productsContainer').width();
    var contHeight = $('#productsContainer').height();

    var fadeContainer = document.createElement('div');

    $('#productsContainer').append(fadeContainer);

    $(fadeContainer).offset({ top: contPos.top, left: contPos.left });
    $(fadeContainer).width(contWidth);
    $(fadeContainer).height(contHeight);

    $(fadeContainer).hide();

    $(fadeContainer).fadeIn(function() {
        $('#productsContainer').hide();
        $('#productsContainer ul.on').removeClass('on').hide();
        if ($('#colorsContainer ul.on').length == 0) {
            transitionColorList(productId);
            $(fadeContainer).remove();
            setProductInBreadCrumb(productId);
        } else {
            $('#colorsContainer ul.on').removeClass('on').fadeOut(fadeSpeed, function() {
                transitionColorList(productId);
                $(fadeContainer).remove();
                setProductInBreadCrumb(productId);
            });
        }
    });
}
function animateProductName(productId) {
    var categoryId = getCategoryId(productId);

    var destPos = $('#categoryProductList-' + categoryId).offset();
    var sourcePos = $('#productLink-' + productId).offset();

    var contPos = $('#productsContainer').offset();
    var contWidth = $('#productsContainer').width();
    var contHeight = $('#productsContainer').height();

    var yAxisMovement = sourcePos.top - destPos.top;
    var itemCopy = document.createElement('div');
    var fadeContainer = document.createElement('div');

    var slideSpeed = yAxisMovement * slideSpeedVariant;

    $(fadeContainer).append(itemCopy);
    $('#productsContainer').append(fadeContainer);

    $(fadeContainer).offset({ top: contPos.top, left: contPos.left });
    $(fadeContainer).width(contWidth);
    $(fadeContainer).height(contHeight);

    $(itemCopy).html($('#productLink-' + productId).text());
    $(itemCopy).width($('#productLink-' + productId).width());
    $(itemCopy).offset({ top: sourcePos.top, left: sourcePos.left });

    $(fadeContainer).hide();

    $(fadeContainer).fadeIn(function() {
        $(itemCopy).animate({ top: '-=' + yAxisMovement }, slideSpeed, function() {
            $('#productsContainer').fadeOut(fadeSpeed, function() {
                $('#productsContainer ul.on').removeClass('on').hide();
                if ($('#colorsContainer ul.on').length == 0) {
                    transitionColorList(productId);
                    $(fadeContainer).remove();
                    setProductInBreadCrumb(productId);
                } else {
                    $('#colorsContainer ul.on').removeClass('on').fadeOut(fadeSpeed, function() {
                        transitionColorList(productId);
                        $(fadeContainer).remove();
                        setProductInBreadCrumb(productId);
                    });
                }
            });
        });
    });
}
function transitionProductList(categoryId) {
    $('#productsContainer').show();
    $('#categoryProductList-' + categoryId).fadeIn(fadeSpeed, function() {
        //alert('Product List In');
    }).addClass('on');
}
function transitionColorList(productId) {
    $('#productColorList-' + productId + ' li a div.colorBlock').each(function(index, el) {
        if (!el.firstChild) {
            loadColorSwatchImage(el);
        }
    });
    $('#colorsContainer').show();

    if (useColorSlide) {
        $('#productColorList-' + productId).show('slide', { direction: 'right' }, 1000, function() {
            //alert('Color List In');
        }).addClass('on');
    } else {
        $('#productColorList-' + productId).fadeIn(fadeSpeed, function() {
            //alert('Color List In');
        }).addClass('on');
    }
}
function loadColorSwatchImage(item) {
    var img = new Image();
    $(img).load(function() {
        $(item).append(this);
        setElementId(img, 'imgFull-' + getDataId($(item).attr('id')));
        img.width = 95;
        img.height = 95;
        $(this).show();
    }).error(function() {
        //Do nothing on load error
    }).attr('src', '/images/blinds/thumbnail/blindcolor_' + getDataId($(item).attr('id')) + '.jpg'); ;
}
function setCategoryAsSelectedInMenu(categoryId) {
    var item = document.getElementById('categoryLink-' + categoryId);
    $('#masterCategoryList li').removeClass('categoryLinkSelected');
    $('#masterCategoryList li').addClass('categoryLink');
    $(item).removeClass('categoryLink');
    $(item).addClass('categoryLinkSelected');
}
function setCategoryInBreadCrumb(categoryId) {
    var categoryText = $('#categoryLink-' + categoryId).text();
    var categoryAnchor = document.createElement('a');
    $('#sampleBreadCrumb > a').remove();
    $('#sampleBreadCrumb > span').remove();
    $(categoryAnchor).html(categoryText);
    $(categoryAnchor).attr('href', 'JAVASCRIPT:selectCategory("' + categoryId + '");');
    $(categoryAnchor).className = 'breadCrumbItem';
    $(categoryAnchor).hide();
    $('#sampleBreadCrumb').append(categoryAnchor);
    $(categoryAnchor).fadeIn('slow', function() {
        //alert('Fade Completed');
    });
}
function setProductInBreadCrumb(productId) {
    var productText = $('#productLink-' + productId).text();
    if ($('#sampleBreadCrumb span').length == 0) {
        fadeProductBreadCrumbIn(productText);
    } else {
        $('#sampleBreadCrumb span').fadeOut(fadeSpeed, function() {
            $('#sampleBreadCrumb > span').remove();
            fadeProductBreadCrumbIn(productText);
        });
    }
}
function fadeProductBreadCrumbIn(productText) {
    var productSpan = document.createElement('span');
    var separatorSpan = document.createElement('span');
    $(separatorSpan).html(">");
    $(productSpan).html(productText);
    $(separatorSpan).hide();
    $(productSpan).hide();
    $(separatorSpan).className = 'breadCrumbItem';
    $(productSpan).className = 'breadCrumbItem';
    $('#sampleBreadCrumb').append(separatorSpan);
    $('#sampleBreadCrumb').append(productSpan);
    $('#sampleBreadCrumb span').fadeIn(fadeSpeed);
}
function createCartGroup(productId, productName) {
    if (document.getElementById('cartGroup-' + productId)) {
    } else {
        var cartGroup = document.createElement('div');
        cartGroup.className = 'sampleCartGroup';
        setElementId(cartGroup, 'cartGroup-' + productId);
        var headerSpan = document.createElement('span');
        headerSpan.className = 'header';
        headerSpan.innerHTML = productName;
        var itemsSpan = document.createElement('span');
        itemsSpan.className = 'items';
        cartGroup.appendChild(headerSpan);
        cartGroup.appendChild(itemsSpan);
        $('#sampleCart').append(cartGroup);
    }
    return document.getElementById('cartGroup-' + productId);
}
function removeCartItem(idCartItemToRemove) {
    var item = document.getElementById(idCartItemToRemove);
    if (item) {
        var elementId = getElementId(item);
        var productId = getDataId(elementId);
        var colorId = getColorId(elementId);
        removeItemFromCart(productId, colorId);
    }
}
function createCartItem(productId, colorId, colorName) {
    var cartItem = document.createElement('div');
    cartItem.setAttribute('onclick', 'JAVASCRIPT:removeCartItem("' + 'cartItem-' + productId + '-' + colorId + '");');
    cartItem.className = 'sampleCartItem';
    setElementId(cartItem, 'cartItem-' + productId + '-' + colorId);
    cartItem.style.display = 'none';
    var aCartItem = document.createElement('a');
    setElementId(aCartItem, 'aCartItem-' + productId + '-' + colorId);
    aCartItem.setAttribute('href', 'JAVASCRIPT:removeCartItem("' + 'cartItem-' + productId + '-' + colorId + '");');
    var imgSpan = document.createElement('span');
    imgSpan.className = 'image';
    var img = new Image();
    $(img).load(function() {
        setElementId(img, 'imgCart-' + productId + '-' + colorId);
        img.height = 20;
        img.width = 20;
        $(this).show();
    }).error(function() {
    }).attr('src', '/images/blinds/thumbnail/blindcolor_' + colorId + '.jpg'); ;
    imgSpan.appendChild(img);
    var txtSpan = document.createElement('span');
    txtSpan.className = 'text';
    txtSpan.innerHTML = colorName;
    aCartItem.appendChild(imgSpan);
    aCartItem.appendChild(txtSpan);
    cartItem.appendChild(aCartItem);
    return cartItem;
}
function makeAjaxRequest() {
    var url = 'samples.aspx';

    if (document.getElementById('Sample')) {
        samplesValue = document.getElementById('Sample').value;
    }

    $.post(url, { p: "1", Sample: samplesValue },
   function(data) {
       if (debug) {
           alert('Ajax Cart Update Succeeded.');
       }
   });
}
function validateSampleBusinessRules(newCartHiddenColorsKey) {
    //Global limit 15
    var totalItems = 1;  //Set equal to 1 in order to account for new item being validated.
    //Bamboo limit 4
    var bambooItems = 0;
    var bambooRegEx = new RegExp('^(?:237|283|236|216|217|83|84|61|354|355)-\\d+', '');

    //iterate through the products in the cart now.
    for (key in hiddenColors) {
        if (hiddenColors[key] != null) {
            totalItems++;
            if (bambooRegEx.test(key)) { bambooItems++; }
        }
    }
    //Check rules for new item
    if (bambooRegEx.test(newCartHiddenColorsKey)) { bambooItems++; }

    if (totalItems > 15) {
        alert("We thank you for your interest in our blinds, but we limit our samples to 15 per customer.");
        return false;
    }

    if (bambooItems > 4) {
        alert("We thank you for your interest in our blinds, but we limit our BAMBOO samples to 4 per customer.");
        return false;
    }

    return true;
}
//Utility Functions
function getCategoryId(productId) {
    var catItem = document.getElementById('productLink-' + productId).parentNode;
    var elementId = getElementId(catItem);
    categoryId = getDataId(elementId);
    return categoryId;
}
function getDataId(twoPartIdString) {
    var temp = new Array();
    temp = twoPartIdString.split('-');
    var dataId = temp[1];
    return dataId;
}
function getColorId(twoPartIdString) {
    var temp = new Array();
    temp = twoPartIdString.split('-');
    var colorId = temp[2];
    return colorId;
}
function getElementId(pElement) {
    return $(pElement).attr('id');
    //    if (pElement.id) {
    //        return pElement.id;
    //    } else {
    //        return pElement.name;
    //    }
}
function setElementId(pElement, pId) {
    pElement.setAttribute('id', pId);
    pElement.setAttribute('name', pId);
}



var hiddenColors = new Array();
var itemsInCart = 0;
var samplesValue = '';
var debug = false;

//Legacy Sample Scripts removed from giant script file
//function validateSamples(frmEle, useDhtml, submit) {
//    var count = 0; var BambooCount = 0;
//    var sSelSamples = ""; var SampleValue = "";
//    var ItemID = 0; var sLastSampleProName = ""; var sSelSampleProName = "";

//    var sSelectedSamples = frmEle.Sample.value;
//    var sCheckedValues = "";

//    var sampleCheckBoxes = document.getElementsByName('SampleCheckBox');

//    if (sampleCheckBoxes) {
//        //add each item to the form value and display the selected results
//        if (sampleCheckBoxes.length) {
//            for (i = sampleCheckBoxes.length - 1; i >= 0; i--) {//loop each checked item

//                if (sampleCheckBoxes[i].checked) {
//                    //Update Number of selected samples
//                    count++;
//                    ItemID = sampleCheckBoxes[i].value;
//                    if (sCheckedValues != "") sCheckedValues += ",";
//                    sCheckedValues += ItemID;
//                    if (useDhtml == 1) {//Setup inner html for list of selected samples
//                        sSelSampleProName = eval("document.samplesForm.spn" + ItemID + ".value");
//                        if (sLastSampleProName != sSelSampleProName) sSelSamples += "<br><b>" + sSelSampleProName + "</b><br>";
//                        sSelSamples += "<li style='padding-left:10;'>" + eval("document.samplesForm.scn" + ItemID + ".value") + "</li>"
//                        sLastSampleProName = sSelSampleProName;
//                    }
//                    var aItemID = ItemID.split("_");
//                    //alert(aItemID[1]);
//                    if (aItemID.length > 0) {
//                        if (aItemID[1] == "60" || aItemID[1] == "62" || aItemID[1] == "83" || aItemID[1] == "84" || aItemID[1] == "61" || aItemID[1] == "137" || aItemID[1] == "208")
//                            BambooCount++;
//                    }
//                    if (frmEle.Sample.value != "") {//setup form values for selected items
//                        var aSelectedItems = frmEle.Sample.value.split(",");
//                        var bFound = false;
//                        for (j = aSelectedItems.length - 1; j >= 0; j--) {//loop each item in the form
//                            var aSelectedItemID = aSelectedItems[j].split("_");
//                            //alert(aSelectedItems[j] + "!=" + ItemID);
//                            if (aSelectedItems[j] == ItemID)
//                                bFound = true;
//                        }
//                        if (bFound == false)
//                            frmEle.Sample.value += "," + ItemID;
//                    }
//                    else {
//                        frmEle.Sample.value = ItemID;
//                    }
//                }
//            }
//        }
//        else {//only one
//            if (sampleCheckBoxes.checked) {
//                //Update Number of selected samples
//                count++
//                ItemID = sampleCheckBoxes.value;
//                if (sCheckedValues != "") sCheckedValues += ",";
//                sCheckedValues += ItemID;
//                if (useDhtml == 1) {//Setup inner html for list of selected samples
//                    sSelSampleProName = eval("document.samplesForm.spn" + ItemID + ".value");
//                    if (sLastSampleProName != sSelSampleProName) sSelSamples += "<br><b>" + sSelSampleProName + "</b><br>";
//                    sSelSamples += "<li style='padding-left:10px;'>" + eval("document.samplesForm.scn" + ItemID + ".value") + "</li>"
//                    sLastSampleProName = sSelSampleProName;
//                }
//                //alert(ItemID);
//                var aItemID = ItemID.split("_");
//                //alert(aItemID[1]);
//                if (aItemID.length > 0) {
//                    if (aItemID[1] == "60" || aItemID[1] == "62" || aItemID[1] == "83" || aItemID[1] == "84" || aItemID[1] == "153" || aItemID[1] == "137" || aItemID[1] == "61")
//                        BambooCount++;
//                }
//                if (frmEle.Sample.value != "") {//setup form values for selected items
//                    var aSelectedItems = frmEle.Sample.value.split(",");
//                    var bFound = false;
//                    for (j = aSelectedItems.length - 1; j >= 0; j--) {//loop each item in the form
//                        var aSelectedItemID = aSelectedItems[j].split("_");
//                        //alert(aSelectedItems[j] + "!=" + ItemID);
//                        if (aSelectedItems[j] == ItemID)
//                            bFound = true;
//                    }
//                    var FormSampleValue = frmEle.Sample.value;
//                    if (FormSampleValue.indexOf(ItemID) > 0) bFound == true;
//                    if (bFound == false)
//                        frmEle.Sample.value += "," + ItemID;
//                }
//                else {
//                    frmEle.Sample.value = ItemID;
//                }

//            }
//        }
//        if (frmEle.Sample.value != "") {//double check that each item is still selected
//            var aSelectedItems2 = frmEle.Sample.value.split(",");
//            var bFound2 = false;
//            var sCurValue = frmEle.Sample.value;
//            var sNewValue = "";
//            for (j = aSelectedItems2.length - 1; j >= 0; j--) {//loop each item in the form
//                var aSelectedItemID2 = aSelectedItems2[j].split("_");
//                if (aSelectedItemID2[1] == frmEle.ProductID.value) {//if product id is the current product

//                }
//                else if (aSelectedItemID2[0] == "1162" && aSelectedItemID2[1] == "153") {//brochure
//                    if (sSelSamples.indexOf("rochure") < 0) {//no borchure yet
//                        if (sNewValue != "") sNewValue += ",";
//                        sNewValue += aSelectedItems2[j];
//                        count++;
//                        if (useDhtml == 1) {
//                            sSelSampleProName = eval("document.samplesForm.spn" + aSelectedItems2[j] + ".value");
//                            if (sLastSampleProName != sSelSampleProName) sSelSamples += "<br><b>" + sSelSampleProName + "</b><br>";
//                            sSelSamples += "<li style='padding-left:10px;'>" + eval("document.samplesForm.scn" + aSelectedItems2[j] + ".value") + "</li>";
//                        }
//                    }
//                }
//                else {//add to value by default since passed from another product
//                    if (sNewValue != "") sNewValue += ",";
//                    sNewValue += aSelectedItems2[j];
//                    count++;

//                    /*if(sSelSamples.indexOf("Brochure") > 0 && aSelectedItems2[j] == "1162_153"){
//                    }
//                    else{*/
//                    if (useDhtml == 1) {//Setup inner html for list of selected samples
//                        sSelSampleProName = eval("document.samplesForm.spn" + aSelectedItems2[j] + ".value");
//                        if (sLastSampleProName != sSelSampleProName) sSelSamples += "<br><b>" + sSelSampleProName + "</b><br>";
//                        sSelSamples += "<li style='padding-left:10px;'>" + eval("document.samplesForm.scn" + aSelectedItems2[j] + ".value") + "</li>"
//                        sLastSampleProName = sSelSampleProName;
//                    }
//                    //}
//                }
//            }
//            if (sCheckedValues != "" && sNewValue != "") sNewValue = "," + sNewValue;
//            frmEle.Sample.value = sCheckedValues + sNewValue;
//        }
//    }

//    if (count == 0 && frmEle.p.value == 2) {
//        alert("Please select at least one Sample!");
//        //Hide Sample list
//        if (useDhtml == 1) {//document.getElementById("SelectedSamples").style.display="none";
//            MM_showHideLayers('SelectedSamples', '', 'hide');
//        }
//        return false;
//    }
//    if (count > 15) {
//        alert("We thank you for your interest in our blinds, but we limit our samples to 15 per customer. Please remove one sample and then click the Enter Shipping button to complete your transaction.");
//        return false;
//    }
//    if (BambooCount > 4) {
//        alert("We thank you for your interest in our blinds, but we limit our BAMBOO samples to 4 per customer. Please remove one sample and then click the Enter Shipping button to complete your transaction.");
//        return false;
//    }
//    if (count > 0 && useDhtml == 1) {//Show seleccted sample list
//        var sHeader = "";
//        var sFooter = "";
//        document.getElementById("SelectedSamples").innerHTML = sHeader + sSelSamples + sFooter;

//        if (submit == 1) {
//            document.samplesForm.p.value = 1;
//            document.samplesForm.pid.value = document.samplesForm.ProductID.value;
//            document.samplesForm.submit();
//        }
//    }
//}
function validateSamplePayment(frmEle) {
    if (frmEle.PaymentID.value == "0") {
        alert("Please select a payment type.");
        frmEle.PaymentID.focus();
        return false;
    }
    if (frmEle.CardNumber.value == "") {
        alert("Please enter your credit card number.");
        frmEle.CardNumber.focus();
        return false;
    }
    if (frmEle.BillName.value == "") {
        alert("Please enter your name on the credit card.");
        frmEle.BillName.focus();
        return false;
    }
    if (frmEle.BillZip.value == "") {
        alert("Please enter your zip code.");
        frmEle.BillZip.focus();
        return false;
    }

    // Hide the submit button if the form validates
    var button = document.getElementById('CompleteOrder');

    var imagePlaceholder = new Image();
    imagePlaceholder = document.getElementById('workingGif');

    button.parentNode.style.display = 'none';
    imagePlaceholder.parentNode.style.display = 'block';

    // This fixes an issue in IE where the animated gif is not animated after submitting a long running process
    setTimeout('document.images["workingGif"].src="/images/buttons/working.gif"', 200);
}


function validateSampleUser(frmEle) {
    if (frmEle.FirstName.value == "") {
        alert("Please enter your Firstname!");
        frmEle.FirstName.focus();
        return false;
    }
    if (frmEle.LastName.value == "") {
        alert("Please enter your Lastname!");
        frmEle.LastName.focus();
        return false;
    }
    if (frmEle.Address.value == "") {
        alert("Please enter your Address!");
        frmEle.Address.focus();
        return false;
    }
    if (frmEle.Email) {
        if (frmEle.Email.value == "") {
            alert("Please enter your Email!");
            frmEle.Email.focus();
            return false;
        }
        var exclude = /[^@\-\.\w]|^[_@\.\-]|[\._\-]{2}|[@\.]{2}|(@)[^@]*\1/;
        var check = /@[\w\-]+\./;
        var checkend = /\.[a-zA-Z]{2,4}$/;

        emailad = frmEle.Email.value;

        if (((emailad.search(exclude) != -1) || (emailad.search(check))
		== -1) || (emailad.search(checkend) == -1)) {
            alert("Incorrect email address!  Please ammend.");
            frmEle.Email.focus();
            return false;
        }
    }
    if (frmEle.City.value == "") {
        alert("Please enter your City!");
        frmEle.City.focus();
        return false;
    }
    if (frmEle.State.value == "" || frmEle.State.value == "0") {
        alert("Please enter your State!");
        frmEle.State.focus();
        return false;
    }
    if (frmEle.Zip.value == "") {
        alert("Please enter your Zip!");
        frmEle.Zip.focus();
        return false;
    }
    if (frmEle.Shipping.value != "0") {
        if (frmEle.Phone.value == "") {
            alert("Please enter your Phone!");
            frmEle.Phone.focus();
            return false;
        }
    }

    if (frmEle.Shipping.value == "5") {

        var poBox = /p\.(\s+)?o\.|p([\.\s]+)?o([\.\s]+)?(\s+)?box/i;

        var addr1 = frmEle.Address.value;
        if (poBox.test(addr1)) {
            alert("Sorry no PO Boxes for overnight delivery");
            frmEle.Address.focus;
            return false;
        }

        var addr2 = frmEle.Address2.value;
        if (poBox.test(addr2)) {
            alert("Sorry no PO Boxes for overnight delivery");
            frmEle.Address2.focus;
            return false;
        }

    }
}
