productCompareCommands = new Array(2); productCompareCommands[0] = '/user/add_item_to_comparison.cmd'; productCompareCommands[1] = '/catalog/compare_items.jsp'; function addProdToCompare(frm, divIdToUpdate){ var url = productCompareCommands[0]; var pars = "formName=compareItemsForm" + "&productId=" + $("input[name=productId]", frm).val() + "&dest=" + $("input[name=dest]", frm).val(); var divToUpdate = "#" + divIdToUpdate; $.ajax({ type: "POST", url: url, data: pars, dataType: "html", success: function(data) { $(divToUpdate + " *").remove(); $(divToUpdate).html(""); $(divToUpdate).append(data); $(divToUpdate).show(); return true; }, error: function() { return false; } }); } var clInterval; function showCompareList(){ var url = productCompareCommands[1]; var pars = 'formName=compareItemsForm'; var divToUpdate = "#compare-layer-items"; $.ajax({ type: "POST", url: url, data: pars, dataType: "html", success: function(data) { $(divToUpdate + " *").remove(); $(divToUpdate).html(""); $(divToUpdate).append(data); $(divToUpdate).show(); return true; }, error: function() { return false; } }); clInterval = setInterval( "positionCompareList();" , 100); setTimeout(function() { clearInterval(clInterval); }, 1000); positionCompareList(); } //Center the Compare List function positionCompareList() { var viewport = function() { viewport.windowX = (document.documentElement && document.documentElement.clientWidth) || window.innerWidth || self.innerWidth || document.body.clientWidth; viewport.windowY = (document.documentElement && document.documentElement.clientHeight) || window.innerHeight || self.innerHeight || document.body.clientHeight; viewport.scrollX = (document.documentElement && document.documentElement.scrollLeft) || window.pageXOffset || self.pageXOffset || document.body.scrollLeft; viewport.scrollY = (document.documentElement && document.documentElement.scrollTop) || window.pageYOffset || self.pageYOffset || document.body.scrollTop; viewport.pageX = (document.documentElement && document.documentElement.scrollWidth) ? document.documentElement.scrollWidth : (document.body.scrollWidth > document.body.offsetWidth) ? document.body.scrollWidth : document.body.offsetWidth; viewport.pageY = (document.documentElement && document.documentElement.scrollHeight) ? document.documentElement.scrollHeight : (document.body.scrollHeight > document.body.offsetHeight) ? document.body.scrollHeight : document.body.offsetHeight; return viewport; }; view = new viewport(); winSY = view.scrollY; divToAdjust = "#compare-layer-items"; $(divToAdjust).css("left", ( view.windowX - $(divToAdjust).width() ) / 2 - 80 + "px"); $(divToAdjust).css("top", winSY + "px"); }; function comparePopup(e) { showHideComparePopup('hide'); objPopup = document.getElementById("compare-layer"); posX = null; posY = null; getDocMode = true; var bWindowOffsets = getScrollXY(); var bWindowViewport = getViewportSize(); if (e.pageX || e.pageY) { posX = e.pageX; posY = e.pageY; } else if (e.clientX || e.clientY) { if (getDocMode == true) { posX = e.clientX + document.documentElement.scrollLeft; posY = e.clientY + document.documentElement.scrollTop; } else { posX = e.clientX + document.body.scrollLeft; posY = e.clientY + document.body.scrollTop; } } if (posX + objPopup.offsetWidth > bWindowViewport[1]) { $("#compare-layer").css({'left' : ((posX - objPopup.offsetWidth) - 200 )}) ; } else { $("#compare-layer").css({'left' : (posX - 200 )}); } $("#compare-layer").css({'top' : ((posY - objPopup.offsetHeight) - 240 )}) ; return false; } function showHideCompare(objState) { if (objState == "show") { $("#compare-layer-items").css("display", "block"); } else { $("#compare-layer-items").css("display", "none"); } } function showHideComparePopup(objState) { if (objState == "show") { document.getElementById("compare-layer").style.visibility = "visible"; document.getElementById("compare-layer").style.display = ""; } else { document.getElementById("compare-layer").style.visibility = "hidden"; document.getElementById("compare-layer").style.display = "none"; } } function removeCompareBox(prodId){ var cBoxName = "checkbox_" + prodId; var oCb = document.getElementById(cBoxName); if (oCb) oCb.checked = false; toggleCompareBox(prodId); } function toggleCompareBox(prodId, formName){ var cBoxName = "checkbox_" + prodId; var oCb = document.getElementById(cBoxName); if (oCb) { var link = document.getElementById("compare_" + prodId); if (link) { if (oCb.checked) link.innerHTML = "Compare Items"; else link.innerHTML = "Compare Items"; } } } function compareItem(productId, event) { document.compareItemsForm.dest.value='/catalog/compare_pop.jsp'; document.compareItemsForm.productId.value = productId; addProdToCompare(document.compareItemsForm, 'compare-layer'); comparePopup(event); return false; }