$('document').ready(function() {

        $("input.text.erasable").click(function() {
            if( this.value == this.defaultValue ) {
                this.value = "";
            }
        }).focus(function() {
            if( this.value == this.defaultValue ) {
                this.value = "";
            }
        }).blur(function() {
            if( !this.value.length ) {
                this.value = this.defaultValue;
            }
        });

        $("#global li").not(".split").not(".current").not(".n1").bind("mouseover", function(){$(this).css("background-position", "bottom");});
        $("#global li").not(".split").not(".current").not(".n1").bind("mouseout", function(){$(this).css("background-position", "top");});

        $('#sifr').sifr({
            path: '/media/AMP001/flash/static/',
            color: '#F7A900',
            height: '62',
            font: 'Univers'
        });

        $('img.fstar, img.shopnow, img.lstar').ifixpng();
        $('#home-imageslice').ifixpng();
        $(".subcat").mouseover(function(){
            $(this).children('img.lstar').show();
        }).mouseout(function(){
            $(this).children('img.lstar').hide();
        });


        $(".feature .ds .bd .c ").mouseover(function(){
            $(this).children('img.fstar').show();
        }).mouseout(function(){
            $(this).children('img.fstar').hide();
        });

        $("#breadcrumb a").not(":first").before("<span>&gt;</span>");
        $("#breadcrumb a:last").after("<span>&gt;</span>");

        $(".searchcrumb a").after("<span>&gt;</span>");

        $("#poacheck").bind("click", function(){switchBillingDivs('poacheck');});
        $("#epcheck").bind("click", function() {switchBillingDivs('epcheck');});

        $(".details").hide();

        $("div.workspaceline div.details").show();

        $("a.view").toggle(function(){
            $(this).parents("div.order").children("div.details").slideDown();
            $(this).text($('#hideText').text());
            $(this).css("color", "#CC092F");
        },function(){
            $(this).parents("div.order").children("div.details").slideUp();
            $(this).text($('#showText').text());
            $(this).css("color", "#235937");
        });

        $(".ltext ul li").prepend("- ");

        $("#orderhistory div.orderhistoryline:odd").addClass("evenlines");

        if($("#accountinfomiddle").height() < $("#accountinfoleft").height()){
            $("#accountinfomiddle").height($("#accountinfoleft").height())
        }
        if($("#accountinfomiddle").height() < $("#accountinforight").height()){
            $("#accountinfomiddle").height($("#accountinforight").height())
        }

        $("div.recenthistory div.recentheading").append("<span class='viewfullhistory'>&gt;</span>");

        $("div.tops div.swatch").bind("click", function(){

            $("div.tops div.swatch").each(function(){
                $(this).css("padding", "0px 0px 0px 0px");
                $(this).children("a").css("width", "32px");
                $(this).children("a").css("height", "32px");
            });
            $(this).css("padding", "1px 1px 1px 1px");
            $(this).children("a").css("width", "30px");
            $(this).children("a").css("height", "30px");

            $("div.size input.text").attr("readonly", true);
            $("div.size input.text").addClass("disabled");
            if ($("div.size input[name='ADD_WORKSPACE_ITEM_ARRAY<>prd_id']").length > 0) {
                $("div.size input[name!='ADD_WORKSPACE_ITEM_ARRAY<>prd_id']").attr("value", "");
            }
            if ($("div.size input[name='ADD_CART_ITEM_ARRAY<>prd_id']").length > 0) {
                $("div.size input[name!='ADD_CART_ITEM_ARRAY<>prd_id']").attr("value", "");
            }
            $("div.size input.qtyhidden").attr("value", "0");

            var skus = $(this).children("a").attr("rel");
            if(skus != null && skus.length > 0){
                skus = skus.split("|");
                for(var i=0; i<skus.length; i=i+2){
                    $("#"+skus[i]+"qty").attr("readonly", false);
                    $("#"+skus[i]+"qty").removeClass("disabled");
                    $("#"+skus[i]+"sku").attr("value", skus[i+1]);
                }
            }
            //set currentValues

            var swatchName = $(this).attr("swatchName");
            if (swatchName == null) {
                swatchName = "";
            }
            $("div#currentValues").attr("swatchName",swatchName);

            var swatchMain = $(this).attr("swatchMain");
            if (swatchMain == null) {
                swatchMain = "";
            }
            $("div#currentValues").attr("swatchMain",swatchMain);

            //only alts
            for (var alt = 0; alt <= 10; ++alt) {
                var altNum = "";
                if (alt > 0) {
                    altNum = alt;
                }
                var swatchAlt = $(this).attr("swatchAlt" + altNum);
                if (swatchAlt != null && swatchAlt != "") {
                    $("div#currentValues").attr("swatchAlt" + altNum, swatchAlt);
                } else {
                    $("div#currentValues").removeAttr("swatchAlt" + altNum);
                }
            }

            // should we override product image with swatch image?
            var imageOverride = $(this).attr("swatchOverrideImage");
            if (imageOverride != null && imageOverride != "") {
                $("div#currentValues").attr("swatchOverrideImage", imageOverride);
            } else {
                $("div#currentValues").removeAttr("swatchOverrideImage");
            }

            colorProductViewsImages();
            changeZoomViewerImage();
        });

        $("div.pants div.swatch").bind("click", function(){

            $("div.pants div.swatch").each(function(){
                $(this).css("padding", "0px 0px 0px 0px");
                $(this).children("a").css("width", "32px");
                $(this).children("a").css("height", "32px");
            });
            $(this).css("padding", "1px 1px 1px 1px");
            $(this).children("a").css("width", "30px");
            $(this).children("a").css("height", "30px");

            resetSizeElement($("div.waistselect div.swatch, div.lengthselect div.swatch"));

            var sizes = $(this).children("a").attr("rel");
            if(sizes != null && sizes.length > 0){
                sizes = sizes.split("|");

                for(var i=0; i<sizes.length; i=i+2){
                    $("#"+sizes[i]).attr("rel", sizes[i+1]);
                    $("#"+sizes[i]).addClass("available");
                    $("#"+sizes[i]).css("background-color", "#ffffff");
                }
            }

            //set currentValues
            var swatchName = $(this).attr("swatchName");
            if (swatchName == null) {
                swatchName = "";
            }
            $("div#currentValues").attr("swatchName",swatchName);


            var swatchMain = $(this).attr("swatchMain");
            if (swatchMain == null) {
                swatchMain = "";
            }
            $("div#currentValues").attr("swatchMain",swatchMain);

            //only alts
            for (var alt = 0; alt <= 10; ++alt) {
                var altNum = "";
                if (alt > 0) {
                    altNum = alt;
                }
                var swatchAlt = $(this).attr("swatchAlt" + altNum);
                if (swatchAlt != null && swatchAlt != "") {
                    $("div#currentValues").attr("swatchAlt" + altNum, swatchAlt);
                } else {
                    $("div#currentValues").removeAttr("swatchAlt" + altNum);
                }
            }

            // should we override product image with swatch image?
            var imageOverride = $(this).attr("swatchOverrideImage");
            if (imageOverride != null && imageOverride != "") {
                $("div#currentValues").attr("swatchOverrideImage", imageOverride);
            } else {
                $("div#currentValues").removeAttr("swatchOverrideImage");
            }

            colorProductViewsImages();
            changeZoomViewerImage();
        });

        $("div.waistselect div.swatch").bind("click", function(){
            if($(this).children("a").hasClass("available")){

                $("div.waistselect div.swatch").each(function(){
                    resetAvailableSizeSwatch(this);
                });

                selectSizeElement(this);

                resetSizeElement($("div.lengthselect div.swatch"));

                var sizes = $(this).children("a").attr("rel");
                if(sizes != null && sizes.length > 0){
                    sizes = sizes.split("!");

                    for(var i=0; i<sizes.length; i=i+2){
                        $("#"+sizes[i]).attr("rel", sizes[i+1]);
                        $("#"+sizes[i]).addClass("available");
                        $("#"+sizes[i]).css("background-color", "#ffffff");
                    }
                }
            }
        });


        $("div.lengthselect div.swatch").bind("click", function(){
            if($(this).children("a").hasClass("available")){

                $("div.lengthselect div.swatch").each(function(){
                    resetAvailableSizeSwatch(this);
                });

                selectSizeElement(this);

                $("#pantssku").val($(this).children("a").attr("rel"));
            }
        });


        $("div.size input.text").bind("change", function(){
            $("#"+$(this).attr("id")+"hidden").val($(this).val());
        });

        $("#selectallbox").bind("click", function(){
            if($("#selectallbox").attr("checked")){
                $("div.selectitem input").attr("checked", true);
            } else {
                $("div.selectitem input").attr("checked", false);
            }
        });

        $("div.buttonline input#additemstocart").bind("click", function(){
            var checkedItems = $("div.selectitem input.checkbox:not('#selectallbox'):checked");
            if (checkedItems.length > 0) {
                //if user not logged in, simulate clicking the 'authenticate_user' button

                if ($('span#userLoggenIn').text() == 'false') {
                    //set the hidden field with the product detail URL to come back to after login
                    $('input.hiddenProductDetailURL').val($('span#productDetailURL').text());

                    //simulate clicking the submit button;
                    $("#authenticateUserWorkspaceLink").click();
                    return false;
                } else {
                    return true;
                }
            } else {
                alert($("#noItemsSelectedError").text());
                return false;
            }
        });

        $("div.buttonline input#clearselected").bind("click", function(){
            var checkedItems = $("div.selectitem input.checkbox:not('#selectallbox'):checked");
            if (checkedItems.length > 0) {
                return true;
            } else {
                return false;
            }
        });

        $("div.product-views a").bind("click", function(){

            $("div#currentValues").attr("view", $(this).attr("imageView"));
            changeZoomViewerImage();
        })

        $("div.quantityselect div.allsizes div:nth-child(6n)").css("margin-right", "0px");

        $(".content-item").not(":last").addClass("content-border");
        $("a.backtotop").not(":last").html("^ "+$("a.backtotop").eq(0).attr("rel"));

        $("#paymentTypeSelect").bind("change", function(){
            setCCPanel(this);
        });

        $("#taxverifycheck1").bind("click", function(){markFieldAsRequired('taxExempt');});
        $("#saveaddresscheck1").bind("click", function(){markFieldAsRequired('saveAddress');});
        $("#saveaddresscheck2").bind("click", function(){setShipSaveChbox();});
        $("#savecardcheck").bind("click", function(){setCCSaveChbox();});

        $("input.taxidnumbertext").change(function(){
            if ($(this).val() != "") {
                $("div#taxexemptdiv span.requiredIndicator").text("*");
            } else if ($("#taxverifycheck1").attr("checked") != true &&
                $("input.taxidnumbertext[value='']").size() == $("input.taxidnumbertext").size()) {
                //checkbox not checked and none of the text input fields populated
                   $("div#taxexemptdiv span.requiredIndicator").text("");
               }
        });

        $("a.editindividualitem").bind("click", function(){
            $("div.selectitem input").attr("checked", false);
            $("#"+$(this).attr("rel")).attr("checked", true);
            $("#customizeitemslink").click();
            return false;
        });

        //Set up jqModal
        $('#customize').jqm({modal:true, toTop: true});

         // bind form to do an ajaxSubmit for customize button
         $('#customizeitemslink').bind("click", function(){
             var checkedItems = $("div.selectitem input.checkbox:not('#selectallbox'):checked");

            if(checkedItems.length > 0){
                var firstItem = $("#"+$(checkedItems[0]).val()).val();
                for(var i=0; i<checkedItems.length; i++){

                    if($("#"+$(checkedItems[i]).val()).val() != firstItem){
                        alert($("#customizeitemslink").attr("rel"));
                        return false;
                    }
                }
            } else {
                return false;
            }
            //if user not logged in, simulate clicking the 'authenticate_user' button
            if ($('span#userLoggenIn').text() == 'false') {
                //set the hidden field with the product detail URL to come back to after login
                $('input.hiddenProductDetailURL').val($('span#productDetailURL').text());

                //simulate clicking the submit button;
                $("#authenticateUserWorkspaceLink").click();
                return false;
            } else {
                var array = {customize_items: "submitType"};
                var options = {
                    target:        '#customize',   // target element(s) to be updated with server response
                    success:       showModalResponse,  // post-submit callback
                    data: 		   array
                };
                 $('#product_detail_workspace_form').ajaxSubmit(options);
                 return false;
           }
         });

         $('input#addToCartButton').bind("click", function(){
             //go over each div.size
             //if the text input has qty > 0, get the skuID and append it to the 'skusToDecorate' hidden field value
             var skusToDecorate = "";
            $("div.size").each(function(){
                var qty = $(this).children("input.text").val();
                if (qty != null && qty > 0) {
                    var skuID = $(this).children("input[name$='_ITEM_ARRAY<>sku_id']").attr("value");
                    if (skuID != null) {
                        skusToDecorate += skuID + ",";
                    }
                }

            });
            if (skusToDecorate != "") {
                //if user not logged in, simulate clicking the 'authenticate_user' button
                if ($('span#userLoggenIn').text() == 'false') {
                      //set the hidden field with the product detail URL to come back to after login
                      $('input.hiddenProductDetailURL').val($('span#productDetailURL').text());
                    //simulate clicking the submit button;
                    $("#authenticateUserLink").click();
                    return false;
                }
            } else {
                return false;
            }
         });

         $('a#add_to_workspace_and_decorator').bind("click", function(){
             //go over each div.size
             //if the text input has qty > 0, get the skuID and append it to the 'skusToDecorate' hidden field value
             var skusToDecorate = "";
            $("div.size").each(function(){
                var qty = $(this).children("input.text").val();
                if (qty != null && qty > 0) {
                    var skuID = $(this).children("input[name$='_ITEM_ARRAY<>sku_id']").attr("value");
                    if (skuID != null) {
                        skusToDecorate += skuID + ",";
                    }
                }
            });

            if (skusToDecorate != "") {
                //if user not logged in, simulate clicking the 'authenticate_user' button
                if ($('span#userLoggenIn').text() == 'false') {
                    //set the hidden field with the product detail URL to come back to after login
                    $('input.hiddenProductDetailURL').val($('span#productDetailURL').text());
                    //simulate clicking the submit button;
                    $("#authenticateUserLink").click();
                } else {
                    $("input#skusToDecorate").attr("value", skusToDecorate);
                    //simulate clicking the submit button;
                    $("#addToWorkspaceAndDecorateLink").click();
                }
            } else {
                return false;
            }

         });

         // bind form to do an ajaxSubmit for 'Looking to decorate this item?' link
         $('#addToWorkspaceAndDecorateLink').bind("click", function(){
            var array = {add_to_workspace_and_decorate: "submitType", cartItemIdSelected: "-1"};
            var options = {
                target:        '#customize',   // target element(s) to be updated with server response
                success:       showModalResponse,  // post-submit callback
                data: 		   array
            };

             $('input#cartItemIdSelected').remove();
             $('#product_detail_form').ajaxSubmit(options);
             return false;
         });

         $("#price_override_check").bind("click", function(){
             if($(this).attr("checked")){
                $(".priceOverRideInput").show();
                $(".regularPrice").hide();
                $(".cartpromocode").hide();
            } else {
                $(".priceOverRideInput").hide();
                $(".regularPrice").show();
                $(".cartpromocode").show();
            }
         });

         if ($('span#workspaceMarker').length > 0) {
             $('span#workspaceMarker').remove();
             //scroll to workspace
             $.scrollTo('div.workspace', .8);
         }
});


function switchBillingDivs(seloption) {
    if ($("#poacheck") != null && $("#poacheck").attr("checked") == true && seloption == "poacheck") {
        if ($("#epcheck") != null) {
            $("#epcheck").attr("checked", false);
        }
        document.forms.billing_address.submit();
        return;
    }
    if ($("#epcheck") != null && $("#epcheck").attr("checked") == true && seloption == "epcheck") {
        if ($("#poacheck") != null) {
            $("#poacheck").attr("checked", false);
        }
        document.forms.billing_address.submit();
        return;
    }
    $("#companynamediv").hide();
    $("#addressdropdowndiv").show();
    $("#saveaddressdiv").show();
    enableAddressElements();
    document.forms.billing_address.submit();
}

function initBillingDivs() {
    if ($("#saveaddresscheck1") != null && $("#saveaddresscheck1").attr("checked") == true) {
        $("div.saveaddress span.requiredIndicator").text("*");
    }
    if ($("#taxverifycheck1").attr("checked") == true) {
        $("div#taxexemptdiv span.requiredIndicator").text("*");
    }

    if ($("#poacheck") != null && $('#poacheck').attr('checked') == true) {
        if ($('#epcheck') != null) {
            $('#epcheck').attr('checked', false);
        }
        $('#companynamediv').show();
        $('#addressdropdowndiv').hide();
        $('#saveaddressdiv').hide();
        return;
    }
    if ($("#epcheck") != null && $('#epcheck').attr('checked') == true) {
        if ($("#poacheck") != null) {
            $("#poacheck").attr("checked", false);
        }
        $('#companynamediv').show();
        $('#addressdropdowndiv').hide();
        $('#saveaddressdiv').hide();
        return;
    }

    $('#companynamediv').hide();
    $('#addressdropdowndiv').show();
    $('#saveaddressdiv').show();
}

function enableAddressElements() {
    $('#firstnametext1').attr('disabled', false);
    $('#lastnametext1').attr('disabled', false);
    $('#addressline1text1').attr('disabled', false);
    $('#addressline2text1').attr('disabled', false);
    $('#citytext1').attr('disabled', false);
    $('#stateselect1').attr('disabled', false);
    $('#zipcodetext1').attr('disabled', false);
    $('#phonetext1').attr('disabled', false);
}

function markFieldAsRequired(seloption) {
    if (seloption == "saveAddress" && $("#saveaddresscheck1") != null) {
        if ($("#saveaddresscheck1").attr("checked") == true) {
            $("div.saveaddress span.requiredIndicator").text("*");
        } else {
            $("div.saveaddress span.requiredIndicator").text("");
        }
    }
    if (seloption == "taxExempt") {
        if ($("#taxverifycheck1").attr("checked") == true) {
            $("div#taxexemptdiv span.requiredIndicator").text("*");
        } else if ($("input.taxidnumbertext").val() == "") {
            $("div#taxexemptdiv span.requiredIndicator").text("");
        }
    }
}

function setShipSaveChbox() {
    if ($("#saveaddresscheck2") != null) {
        if ($("#saveaddresscheck2").attr("checked") == true) {
            $("div.saveaddress span.requiredIndicator").text("*");
        } else {
            $("div.saveaddress span.requiredIndicator").text("");
        }
    }
}

function setShipSaveChbox() {
    if ($("#saveaddresscheck2") != null) {
        if ($("#saveaddresscheck2").attr("checked") == true) {
            $("div.saveaddress span.requiredIndicator").text("*");
        } else {
            $("div.saveaddress span.requiredIndicator").text("");
        }
    }
}

function setCCSaveChbox() {
    if ($("#savecardcheck") != null) {
        if ($("#savecardcheck").attr("checked") == true) {
            $("div.savecard span.requiredIndicator").text("*");
        } else {
            $("div.savecard span.requiredIndicator").text("");
        }
    }
}

function resetAvailableSizeSwatch(el){
    $(el).css("padding", "0px 0px 0px 0px");
    $(el).children("a.available").css("width", "32px");
    $(el).children("a.available").css("padding", "9px 0px 9px 0px");
    $(el).children("a.available").css("background-color", "#FFFFFF");
    $(el).children("a.available").css("font-weight", "normal");
}

function resetSizeElement(el){
    $(el).css("padding", "0px 0px 0px 0px");
    $(el).children("a").css("width", "32px");
    $(el).children("a").css("padding", "9px 0px 9px 0px");
    $(el).children("a").css("font-weight", "normal");
    $(el).children("a").css("background-color", "#dddddd");
    $(el).children("a").removeClass("available");
    $("#pantssku").val("");
}

function selectSizeElement(el){
    $(el).css("padding", "1px 1px 1px 1px");
    $(el).children("a").css("width", "30px");
    $(el).children("a").css("padding", "8px 0px 8px 0px");
    $(el).children("a").css("background-color", "#F2AB03");
    $(el).children("a").css("font-weight", "700");
}

function setCCPanel(dropdown) {
    if (dropdown == null) {
        dropdown = $('#paymentTypeSelect').get();
    }
    $('#newCardPanel').hide();
    $('#savedCardPanel').hide();
    switch (dropdown.value) {
        case "CC":
            $('#newCardPanel').show();
            break;
        default:
            $('#savedCardPanel').show();
            var ccinfo = dropdown.options[dropdown.selectedIndex].text.split(" - ");
            $('#regCardType').text(ccinfo[0]);
            $('#regCardNum').text("**** **** **** " + ccinfo[1]);
            break;
    }
}

function initCCPanels() {
    if ($('#payTypeHelper').text() == 'CC') {
        $('#newCardPanel').show();
        $('#savedCardPanel').hide();
    } else {
        $('#newCardPanel').hide();
        $('#savedCardPanel').show();
    }
}

//function setting maximum length on the textarea elements
function setMaxLength() {
    var x = document.getElementsByTagName('textarea');
    var counter = document.createElement('div');
    counter.className = 'counter';
    for (var i=0; i<x.length; i++) {
        if (x[i].getAttribute('maxlength')) {
            var counterClone = counter.cloneNode(true);
            counterClone.relatedElement = x[i];
            counterClone.innerHTML = '<span>0</span>/'+x[i].getAttribute('maxlength');
            x[i].parentNode.insertBefore(counterClone,x[i].nextSibling);
            x[i].relatedElement = counterClone.getElementsByTagName('span')[0];

            x[i].onkeyup = x[i].onchange = checkMaxLength;
            x[i].onkeyup();
        }
    }
}
function checkMaxLength() {
    var maxLength = this.getAttribute('maxlength');
    var currentLength = this.value.length;
    if (currentLength > maxLength) {
        this.relatedElement.className = 'error';
    } else {
        this.relatedElement.className = '';
    }
    this.relatedElement.firstChild.nodeValue = currentLength;
    // not innerHTML
}
// Use to open and center a popup window.
function popupWindow(lnk, h, w) {
     var topOffset = (screen.height - h) / 2;
     var leftOffset = (screen.width - w) / 2;
    settings='width='+w+',height='+h+',top='+topOffset+',left='+leftOffset;
    name='defaultName';
    var win = window.open(lnk, name , settings);
}

// Use to open a new window.
function newWindow(lnk) {
    var win = window.open(lnk, "fullscreen");
}

function showModalResponse(responseText, statusText){
    if(responseText.indexOf("samecolorerror") > -1){
        alert($("#samecolorerror").text());
    } else {
        $("#customize").jqmShow();
    }
    $("#zoomImage").hide();
    self.scrollTo(0, 0);
}
function colorProductViewsImages() {

    var newSwatchMain = $("div#currentValues").attr("swatchMain");
    var isMainColor = false;
    if (newSwatchMain != null) {
        isMainColor = (newSwatchMain.split(",").length == 3);
    }
    var newSwatchAlt1 = $("div#currentValues").attr("swatchAlt1");
    var isAlt1Color = false
    if (newSwatchAlt1 != null) {
        isAlt1Color = (newSwatchAlt1.split(",").length == 3)
    }

    var swatchOverrideImage = $("div#currentValues").attr("swatchOverrideImage");

    var swatchSrc = "?"
    if (newSwatchMain != null && newSwatchMain != "" && (swatchOverrideImage == null || swatchOverrideImage == "")) {
        swatchSrc += "obj=main";
        if (isMainColor) {
            swatchSrc += "&color=" + newSwatchMain;
        } else {
            swatchSrc += "&src=" + newSwatchMain;
        }
    }

    // other alts
    for (var alt = 0; alt <= 10; ++alt) {
        var altNum = "";
        if (alt > 0) {
            altNum = alt;
        }
        var newSwatchAlt = $("div#currentValues").attr("swatchAlt"+altNum);
        if (newSwatchAlt != null && newSwatchAlt != "") {
            var isAltColor = false;
            isAltColor = (newSwatchAlt.split(",").length == 3);
            if (swatchSrc != "?") {
                swatchSrc += "&";
            }
            swatchSrc += "obj=alt"+altNum;
            if (isAltColor) {
                swatchSrc += "&color=" + newSwatchAlt;
            } else {
                swatchSrc += "&src=" + newSwatchAlt;
            }
        }
    }

    var productCode = $("div#currentValues").attr("productCode");
    $("div.product-views img").each(function(){
        var oldSrc = $(this).attr("src");
        var newSrcArray = oldSrc.split("?");

        var newSrc = newSrcArray[0];
        // split to find product code / override image
        var slashArray = newSrc.split("/");
        var oldCode = slashArray[slashArray.length-1];
        var oldView = oldCode.substr(oldCode.indexOf("_")+1,1);

        var newCode = "";

        // replace product name if needed
        if (swatchOverrideImage != null && swatchOverrideImage != "") {
                newCode = swatchOverrideImage + "_" + oldView;
        } else {
                newCode = productCode + "_" + oldView;
        }

        newSrc = newSrc.replace(oldCode,newCode);

        var paramsArray = newSrcArray[1].split("&");
        var swatchUpdated = false;

        newSrc += swatchSrc;

        for (var i = 0; i < paramsArray.length; i++) {
            var pair = paramsArray[i].split("=");
            var key = pair[0];
            var val = pair[1];

            if (!(key == "" || key == null || key == undefined || key == "color" || key == "src" || key == "obj" || key == "swatchMain")) {
                newSrc += "&" + key + "=" + val;
            }
        }



        $(this).attr("src", newSrc);
    });
}

function changeZoomViewerImage() {

    var params = {};
    params["productCode"] = $("div#currentValues").attr("productCode");
    params["view"] = $("div#currentValues").attr("view");
    params["swatchName"] = $("div#currentValues").attr("swatchName");
    var swatchMain = $("div#currentValues").attr("swatchMain");
    if (swatchMain != null && swatchMain != "") {
        params["swatchMain"] = swatchMain;
    }

    // other alts
    for (var alt = 0; alt <= 10; ++alt) {
        var altNum = "";
        if (alt > 0) {
            altNum = alt;
        }
        var swatchAlt = $("div#currentValues").attr("swatchAlt"+altNum);
        if (swatchAlt != null && swatchAlt != "") {
            params["swatchAlt"+altNum] = swatchAlt;
        }
    }

    // image override
    var swatchOverrideImage = $("div#currentValues").attr("swatchOverrideImage");
    if (swatchOverrideImage != null && swatchOverrideImage != "") {
        params["swatchOverrideImage"] = swatchOverrideImage;
    }

    $.ajax({
        type: "GET",
        url: "/components/catalog/product_detail_helper.jsp",
        data: params,
        success: function(html){
            $("div#zoomImage").html(html);
        }
    });
}

function applyPromoCode() {
    $('#applyPromoCodeLink').click();
}

// do an ajaxSubmit to pull back the contents of the decorator from a cart item
function customizeCartItem(cartItemId, skuId, cartURL) {
    var array = {
        customize_cart_product: "submitType",
        cartItemIdSelected: cartItemId,
        skusToDecorate: skuId,
        redirect_product_detail: cartURL // product URL is the cart from here
    };

    var options = {
        target:        '#customize',   // target element(s) to be updated with server response
        success:       showModalResponse,  // post-submit callback
        data: 		   array,
        error: function(jqXHR, textStatus, errorThrown) {
            alert('Error submitting the form, status code: ' + jqXHR.status);
        }
    };
    $('input#skusToDecorate').remove(); // remove the old cart item id, we only want the single value that's submitted
    $('input#cartItemIdSelected').remove(); // remove the old cart item id, we only want the single value that's submitted
    $('input#redirect_product_detail').remove();
    $('form#checkout_cart_form').ajaxSubmit(options);
    return false;
}

