if(typeof String.prototype.trim!=="function"){String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")}}jQuery(document).ready(function(){if(jQuery("div.compareButton").length!=0){itemCompare.initialize()}if(jQuery("div.compareButton").length==0){embeddedSearchComponent.initialize();if(embeddedSearchComponent.hash){embeddedSearchComponent.loadAjaxSearchContent(embeddedSearchComponent.hash)}}bindEventsOnSearchLoad()});function getCookie(name){var cookies=document.cookie;var cookieValue=null;var cookies=document.cookie.split(";");for(var i=0;i<cookies.length;i++){var cookie=jQuery.trim(cookies[i]);if(cookie.substring(0,name.length+1)==(name+"=")){cookieValue=decodeURIComponent(cookie.substring(name.length+1));break}}return cookieValue}function bindAlternateImageEvent(){jQuery("img.productImage").each(function(index){var source=this.src;var altimage=jQuery(this).attr("altimage");if(typeof altimage!="undefined"){jQuery(this).mouseover(function(){this.src=altimage});jQuery(this).mouseout(function(){this.src=source})}})}function openStokkeyWindow(){var videoLink="http://www.stokke.com/layouts/siibs/movie.aspx?mime=flash&LANG=en&RETURNSUCCESS=http://"+window.location.host+"/gp/product/utility/stokke-survey-done.html";window.open(videoLink,"stokeesurvery","height=620,width=670,status=no,toolbar=no,menubar=no,location=no,scrollbars=yes,top=80")}function isVideoViewed(){name="stokkesurvey";var cookieValue=getCookie(name);if(cookieValue&&cookieValue.length>0){return true}return false}function bindEventsOnSearchLoad(){bindAlternateImageEvent();bindAddToCartHandler();bindPreOrderHandler()}function bindAddToCartHandler(){jQuery("div .addToCart form").submit(function(){return checkAndShowVideo(this)})}function bindPreOrderHandler(){jQuery("div .preOrder a").click(function(){return checkAndShowVideo(this)})}function checkAndShowVideo(jObj){var requiresViewVideo=jQuery(":input[name=item.0.requiresViewVideo]",jObj);if(requiresViewVideo.length==1&&requiresViewVideo.val()=="true"&&!isVideoViewed()){openStokkeyWindow();return false}return true}function changeSignInURL(){if(typeof(isCustomerSignedIn)=="undefined"||!isCustomerSignedIn){var loginContainer=jQuery("#top-3").find(".signInMenu.signedOut");var signinURL="/gp/sign-in?signInSuccessProtocol=http&action=sign-in";var thisURL=window.location.href;var thisQuery="";var index=thisURL.search(/\/s[\/?]/);if(index==-1){index=thisURL.search(/\/gp\/search[\/?]/)}thisURL=thisURL.substring(index);if(thisURL.indexOf("?")>0){thisQuery=thisURL.substring(thisURL.indexOf("?")+1);thisURL=thisURL.substring(0,thisURL.indexOf("?"))}signinURL+=("&signInSuccessUrl="+encodeURIComponent(thisURL));signinURL+=("&signInSuccessQuery="+encodeURIComponent(thisQuery));loginContainer.find("a").attr("href",signinURL)}}var itemCompare={maxItems:5,selectedObjectCount:0,selectedObjects:new Array(),lastSelectedObject:null,oneProductSelectedText:"",justAddedText:'continue adding items or <a href="#">compare now</a>',youreDoneText:'<a href="#">compare now</a>',noMoreAllowedText:'<span style="color: #CC0000">Five items can be compared at once, to compare this item please remove one previously selected</span> <a href="#">compare now</a>',compareThisText:"",postURL:"/gp/comparison",importantMsgBoxHTML:'<div id="impMsgBox" style="display: hide;"><div id="m0" class="message"><div id="m0" class="mError "><h3>Important Message</h3>Please select at least one product to compare, then click \'Compare\' button again</div></div></div>',paginationLinks:null,initialize:function(){jQuery("#numResults-info").after(jQuery(this.importantMsgBoxHTML));var parentThis=this;this.checkboxes=jQuery("#search-results").find(".compareProduct > input.compCheckbox");this.paginationLinks=jQuery("#search-results").find(".pagination").find("a");this.addHandlers();var preSelectedAsins=new Array();var compareListAsins=new Array();var removeAsins=new Array();var removeAsinsHash={};var compareListAsinsParam=this.getParamsFromQS("compareListASINs");var removeAsinsParam=this.getParamsFromQS("removeASINs");if(compareListAsinsParam!=null&&compareListAsinsParam.length!=0){compareListAsins=compareListAsinsParam.split(",")}if(removeAsinsParam!=null&&removeAsinsParam.length!=0){removeAsins=removeAsinsParam.split(",");for(var i=0;i<removeAsins.length;i++){removeAsinsHash[removeAsins[i]]=true}}for(var i=0;i<compareListAsins.length;i++){if(!removeAsinsHash[compareListAsins[i]]){preSelectedAsins.push(compareListAsins[i])}}this.selectedObjectCount=(preSelectedAsins.length>this.maxItems)?this.maxItems:preSelectedAsins.length;for(i=0;i<this.selectedObjectCount;i++){this.selectedObjects[preSelectedAsins[i]]=true}this.checkboxes.each(function(idx,domEl){var asin=parentThis.getAsinFromDomEl(domEl);if(parentThis.selectedObjects[asin]){domEl.checked=true;parentThis.lastSelectedObject=domEl;parentThis.highlightItem(domEl)}else{domEl.checked=false}});if(this.lastSelectedObject!=null){var msg=this.oneProductSelectedText;if(this.selectedObjectCount>1){msg=this.justAddedText.replace("REPLACE_N_MORE",this.maxItems-this.selectedObjectCount)}if(this.selectedObjectCount==this.maxItems){msg=this.youreDoneText}this.showMessageOnItem(this.lastSelectedObject,msg,true)}},addHandlers:function(){var parentThis=this;this.checkboxes.each(function(idx,domEl){jQuery(domEl).click(function(){parentThis.checkBoxHit(domEl)})});this.paginationLinks.click(function(){parentThis.nextPage(this)});jQuery("div.compareButton").find("input").click(function(){parentThis.compare()})},checkBoxHit:function(checkbox){var returnable=false;var asin=this.getAsinFromDomEl(checkbox);if(!this.selectedObjects[asin]){if(this.selectedObjectCount==this.maxItems-1){this.selectedObjectCount++;this.highlightItem(checkbox);this.showMessageOnItem(checkbox,this.youreDoneText)}else{if(this.selectedObjectCount==this.maxItems){this.showMessageOnItem(checkbox,this.noMoreAllowedText);jQuery(checkbox).attr("checked",false);returnable=true}else{if(this.selectedObjectCount==0){this.selectedObjectCount++;this.highlightItem(checkbox);this.showMessageOnItem(checkbox,this.oneProductSelectedText)}else{this.selectedObjectCount++;this.highlightItem(checkbox);this.showMessageOnItem(checkbox,this.justAddedText.replace("REPLACE_N_MORE",this.maxItems-this.selectedObjectCount))}}}if(this.lastSelectedObject!=null){this.showMessageOnItem(this.lastSelectedObject,this.compareThisText)}this.lastSelectedObject=checkbox;if(returnable){return}}else{this.selectedObjectCount--;this.unhighlightItem(checkbox);this.showMessageOnItem(this.checkbox,this.compareThisText);if(this.lastSelectedObject!=null){this.showMessageOnItem(this.lastSelectedObject,this.compareThisText)}var allHighlighted=jQuery("div.comparisonSelected");if(allHighlighted.length!=0){var firstHighlighted=allHighlighted[0];var firstCheckbox=jQuery(firstHighlighted).find("input.compCheckbox");this.showMessageOnItem(firstCheckbox,this.justAddedText.replace("REPLACE_N_MORE",this.maxItems-this.selectedObjectCount));this.lastSelectedObject=firstCheckbox}}this.selectedObjects[asin]=!this.selectedObjects[asin]},getAsinFromDomEl:function(checkbox){return jQuery(checkbox).attr("value")},getParamsFromQS:function(keyRequired){var qs=window.location.search.substring(1).split("&");for(i=0;i<qs.length;i++){var key=qs[i].split("=")[0];var value=qs[i].split("=")[1];if(key==keyRequired){return unescape(value)}}return null},highlightItem:function(checkbox){var element=jQuery(checkbox);element.parents(".actionButtons").addClass("comparisonSelected")},unhighlightItem:function(checkbox){var element=jQuery(checkbox);element.parents(".actionButtons").removeClass("comparisonSelected")},getItem:function(checkbox){return jQuery(checkbox).parents(".compareProduct")},showMessageOnItem:function(checkbox,string){var parentThis=this;var itemDiv=this.getItem(checkbox);var element=itemDiv.find("span.compareText");element.html(string);itemDiv.find("span.compareText").find("a").click(function(){parentThis.compare();return false})},compare:function(){if(this.selectedObjectCount<=1){jQuery("div#impMsgBox").show();return}else{jQuery("div#impMsgBox").hide()}window.location.href=this.getURL()},getItemDisplayListString:function(){var selectedAsins=new Array();for(var asin in this.selectedObjects){if(this.selectedObjects[asin]){selectedAsins.push(asin)}}return selectedAsins.join(",")},getURL:function(){var queryParams="compareListASINs="+this.getItemDisplayListString()+"&";if(typeof(nodeID)!="undefined"&&nodeID!=null&&nodeID.length>0){queryParams+="nodeID="+nodeID+"&"}if(typeof(compareCategory)!="undefined"&&compareCategory!=null&&compareCategory.length>0){queryParams+="category="+compareCategory+"&"}if(typeof(browseNodeId)!="undefined"&&browseNodeId!=null&&browseNodeId.length>0){queryParams+="node="+browseNodeId+"&"}if(typeof(searchKeywords)!="undefined"&&searchKeywords!=null&&searchKeywords.length>0){queryParams+="keywords="+searchKeywords+"&searchView=results&"}else{queryParams+="searchView=embedded-portlet&"}var refinementHistory=this.getParamsFromQS("rh");if(refinementHistory!=null&&refinementHistory.length>0){queryParams+="rh="+refinementHistory+"&"}queryParams+="refLink="+escape(location.href);return this.postURL+"?"+queryParams},nextPage:function(link){var jObj=jQuery(link);var href=jObj.attr("href");href+="&compareListASINs="+this.getItemDisplayListString();jObj.attr("href",href)}};var embeddedSearchComponent={container:null,paginationLinksContainer:null,sortByLinksContainer:null,paginationSortByBottomLinksContainer:null,ajaxPageUrl:null,loadingComponent:null,errorComponent:null,hash:null,changingHash:false,narrowBinLinks:null,expandBinLinks:null,initialize:function(){this.container=jQuery("#search-results");var parentThis=this;if(this.container.length>0){this.narrowBinLinks=jQuery(".searchBinning").find("a");this.expandBinLinks=jQuery(".expandResultsContainer").find("a");this.paginationLinksContainer=this.container.find(".pagination");this.sortByLinksContainer=this.container.find(".sortBy");this.paginationSortByBottomLinksContainer=jQuery(".paginationSortByComponentsBottomContainer").find("a");this.ajaxPageUrl=ajaxifiedSearchResultsURL;if(this.errorComponent==null){this.errorComponent=jQuery('<div class="embeddedSearchError">An error occurred. Please try again.</div>');jQuery("#numResults-info").before(parentThis.errorComponent)}this.hash=this.getBrowserHash();if(this.loadingComponent==null){this.loadingComponent=this.createLoadingComponent();jQuery("body").append(this.loadingComponent);var parentThis=this;this.loadingComponent.fadeTo("normal",0.6,function(){parentThis.loadingComponent.fadeTo("normal",0)});jQuery.historyInit(function(){})}this.bindEvents();this.detectAndProcessChangeInHash()}},getBrowserHash:function(){var currentHash=window.location.href;if(currentHash.indexOf("#")>-1){currentHash=currentHash.substring(currentHash.indexOf("#")+1);return currentHash}return""},setLocalHash:function(data){this.changingHash=true;this.hash=data;this.changingHash=false},detectAndProcessChangeInHash:function(){var parentThis=this;var currentHash=this.getBrowserHash();if(currentHash!=this.hash&&!this.changingHash){this.hash=currentHash;this.loadAjaxSearchContent(currentHash)}else{window.setTimeout(function(){parentThis.detectAndProcessChangeInHash()},100)}},createLoadingComponent:function(){if(this.loadingComponent==null){var loadingComponent=jQuery("<iframe></iframe>");loadingComponent.attr("id","embeddedSearchFrame");loadingComponent.attr("frameBorder","0");loadingComponent.attr("src","");return loadingComponent}return this.loadingComponent},bindEvents:function(){var parentThis=this;this.narrowBinLinks.add(this.expandBinLinks).click(function(){var newURL=parentThis.getNewURLAfterSortOption(jQuery(this).attr("href"));if(newURL){jQuery(this).attr("href",newURL)}});this.paginationSortByBottomLinksContainer.click(function(){jQuery("html, body",parentThis.document).animate({scrollTop:parentThis.container.offset().top-30},500);return false});this.paginationLinksContainer.find("a").add(this.sortByLinksContainer.find("a")).click(function(){var jObj=jQuery(this);var thisElementUrl=jObj.attr("href");var data="";if(thisElementUrl.indexOf("?")>-1){data=thisElementUrl.substring(thisElementUrl.indexOf("?")+1)}parentThis.loadAjaxSearchContent(data);jQuery.historyLoad(data);parentThis.setLocalHash(parentThis.getBrowserHash());return false})},getNewURLAfterSortOption:function(currentURL){var newURL="";var parentThis=this;if(currentURL&&currentURL.indexOf("&sort")>0){newURL=currentURL.substring(0,currentURL.indexOf("&sort"));currentURL=currentURL.substring(currentURL.indexOf("&sort")+5);if(currentURL.indexOf("&")>=0){currentURL=currentURL.substring(currentURL.indexOf("&"));newURL=newURL+"&sort="+sortOption+currentURL}else{newURL=newURL+"&sort="+sortOption}}else{newURL=currentURL+"&sort="+sortOption}return newURL},loadAjaxSearchContent:function(data){this.errorComponent.hide();var parentThis=this;var searchResultsContainer=jQuery(".searchResults:last");this.loadingComponent.css("top",searchResultsContainer.offset().top);this.loadingComponent.css("left",searchResultsContainer.offset().left+10);this.loadingComponent.height(searchResultsContainer.outerHeight());this.loadingComponent.width(searchResultsContainer.outerWidth()-10);this.loadingComponent.fadeTo("normal",0.6,function(){parentThis.makeAjaxRequest(data)})},makeAjaxRequest:function(data,callBackOnSuccess,callBackOnError){if(typeof(data)=="undefined"||data==null){data=""}var url=this.ajaxPageUrl;if(data.length==0){if(window.location.href.indexOf("?")>0){data=window.location.href.substring(window.location.href.indexOf("?")+1)}}if(data.length>0){data=data+"&"}if(typeof(browseNodeId)!="undefined"&&browseNodeId!=null&&browseNodeId.length>0){data=data+"browseNodeId="+browseNodeId+"&"}data+="comparable=true&isAjaxRequest=true&useAlternateImage=true";var parentThis=this;jQuery.ajax({type:"GET",url:url,data:data,cache:true,error:function(html,status){if(callBackOnError){callBackOnError()}else{parentThis.errorComponent.show();parentThis.loadingComponent.fadeTo("normal",0);parentThis.loadingComponent.height(0);parentThis.loadingComponent.width(0)}},success:function(html,status){if(callBackOnSuccess){callBackOnSuccess()}else{parentThis.container.html(html);parentThis.initialize();parentThis.loadingComponent.fadeTo("normal",0);parentThis.loadingComponent.height(0);parentThis.loadingComponent.width(0)}bindEventsOnSearchLoad()},timeout:20000})}};
