
$.namespace("SF");SF.UserAgent=function(){uagent='desktop';useragent=navigator.userAgent.toLowerCase();if(useragent.search('ipad')>-1){uagent='mobile';}
this.getUagent=function(){return uagent;}}
$.namespace("SF");SF.SearchResults=new(function(){$(function(){initAjaxPaginators();initWoAjaxPaginators();});function initAccordions(){var anchorSet2=jQuery.makeArray($("#secondaryNavigation div.header h2 a"));new Adoro.Accordion(anchorSet2,{animate:true,alwaysOpen:true});if($('#section_sn01').length>0){$('#section_sn03').addClass('hide');}}
function showHidePrimaryContent(){var id=$(this).attr('href').substr(1);}
function removeShoppingResultsFromAccordian(innerAnchors){var newAnchors=[];var newToggles=[];var maxItems=innerAnchors.length;for(var i=0;i<maxItems;i++){if($(innerAnchors[i]).parents("#section_shoppingResults").length<1){newAnchors.push(innerAnchors[i])}else{newToggles.push(innerAnchors[i])}}
if(newToggles.length>0){initSearchResultsToggles();}
return newAnchors;}
function initSearchResultsToggles(){var root=document.getElementById("searchResults");if(!root)return;var sections=$(root).find("#section_shoppingResults");var innerAnchors=null;for(var i=0;i<sections.length;i++){innerAnchors=$(sections[i]).find("div.header h3 a");if(innerAnchors.length===0)continue;$(innerAnchors).addClass("selected").bind("click",toggleSearchResults);};}
function initSearchResultsToggles(){var root=document.getElementById("searchResults");if(!root)return;var sections=$(root).find("#shoppingResults");var innerAnchors=null;for(var i=0;i<sections.length;i++){innerAnchors=$(sections[i]).find("div.header h3 a");if(innerAnchors.length===0)continue;$(innerAnchors).addClass("selected").bind("click",toggleSearchResults);};}
function toggleSearchResults(){var thisHash=$(this).attr("href");var thisClassSelected=$(this).hasClass("selected");if(thisClassSelected){$(this).removeClass("selected");$(thisHash).hide("slow");}else{$(this).addClass("selected");$(thisHash).show("slow");}
return false;}
function initAjaxPaginators(){var panels=jQuery.makeArray($("div#shoppingResults div.department div.panel"));var carouselNode=null;var paginationNode=null;var resultsDetailsNode=null;for(var i=0;i<panels.length;i++){carouselNode=$(panels[i]).find("div.gallery")[0]||null;paginationNode=$(panels[i]).prev().find("div.pagination")[0]||null;resultsDetailsNode=$(panels[i]).parents("div.department").find("div.header p.info")[0]||null;$.subscribe("searchPageRequested"+i,function(e){if(e.data[0]){var panelPaginationNode=e.data[0].paginationNode;var loading=$(panelPaginationNode).find("div.loading");loading.css("left",($(panelPaginationNode).find("li:first").position().left)+"px");}});if(paginationNode)
new SF.AjaxPagination(paginationNode,carouselNode,{resultsDetailsNode:resultsDetailsNode,pageNumberKey:paginationNode.id,CustomEventBefore:"searchPageRequested"+i,CustomEventAfter:"searchPageChanged"+i});}}
function initWoAjaxPaginators(){var panels=jQuery.makeArray($("#whatsHappeningResults div.subSection"));$("#whatsHappeningResults div.subSection").each(function(idx){var panel=$(this),paginationNode=$(panel).find("div.pagination")[0];$("a",paginationNode).click(function(ev){ev.preventDefault();bindWoPaginationClick({"page":$(this),"pagination":paginationNode,"panel":panel});});});function bindWoPaginationClick(info){var loadingIndicator=new Salmon.UI.LoadingHtml(info.pagination);loadingIndicator.show();$(info.pagination).find("div.loading").css("margin-left",$(info.pagination).find("li:first").position().left+"px");$.ajax({type:"GET",url:(info.page).attr("href"),dataType:"html",success:function(data){var placeholder=$(document.createElement("div")).html(data),pageContent=$("li.page",placeholder),paginator=$("div.pagination",placeholder),pageInfo=$("div.header p.info",placeholder);loadingIndicator.hide();$("li.page",info.panel).html(pageContent.html());$("div.header p.info",info.panel).html(pageInfo.html());var paginationNode=(info.panel).find('div.pagination')[0];$(paginationNode).html(paginator.html());$(paginationNode).find("a").click(function(ev){ev.preventDefault();bindWoPaginationClick({"page":$(this),"pagination":paginationNode,"panel":info.panel});});},error:function(){loadingIndicator.hide();}});return false;}}});$.namespace("SF");SF.ImageRollovers=new(function(){$(document).ready(init);var suffix="_on";this.init=init;function init(){var rollovers=$("img.rollover, input.rollover[type='image']");addRollovers(rollovers);};this.add=add;function add(container){var container=document.getElementById(container)||container;if(!container)return;var rollovers=$(container).find("img.rollover, input.rollover[type='image']");if(rollovers.length===0)return;addRollovers(rollovers);};function addRollovers(rollovers){var rolloverInstance;for(var i=0;i<rollovers.length;i++){rolloverInstance=new Salmon.ImageRollover(rollovers[i],getSrc(rollovers[i].src));};};function getSrc(imageSrc){var extensionIndex=imageSrc.lastIndexOf(".");var originalSourceWithoutExtension=imageSrc.substring(0,extensionIndex);var extension=imageSrc.substring(extensionIndex,imageSrc.length);return originalSourceWithoutExtension+suffix+extension;};});$.namespace("SF");SF.ProductForm=function(form,productId,quickLookPanel){var customEvents={addToShoppingBag:Salmon.UI.CustomEvents.productAddedToShoppingBag,stockAvailabilityChecked:Salmon.UI.CustomEvents.stockAvailabilityChanged+productId};$.subscribe(customEvents.stockAvailabilityChecked,checkStock);var addToShoppingBag=$(form).find("input.addToShoppingBag")[0]||$("#pgProductBundle").find("input.addToShoppingBag")[0]||null;if(!addToShoppingBag){return;}
var submitFunction=addToBag;$(addToShoppingBag).bind("click",function(e){submitFunction=addToBag;});var loadingIndicator=new Salmon.UI.LoadingHtml(form);var suffix="_disabled",addToBagButtonSrc={def:addToShoppingBag.src,dis:getDisabledSrcFromButtonSrc(addToShoppingBag.src)};var fields=$(form).find("div.attribute input, div.quantity input");var formValidator=new Adoro.FormValidator(form,{onSuccess:function(){form
submitFunction();return false;},errorSummaryID:quickLookPanel?"quickLookErrorSummary"+productId:null});var fieldName=null,method=null,params={};for(var i=0;i<fields.length;i++){switch(fields[i].tagName.toUpperCase()){case"INPUT":switch(fields[i].type.toUpperCase()){case"TEXT":$(fields[i]).bind("keydown",removeErrors);method=Adoro.FormRules.notEmpty;params={};break;case"SUBMIT":$(fields[i]).bind("click",removeErrors);method=null;params={};break;default:method=null;params={};break;};break;default:method=Adoro.FormRules.notEmpty;params={};};if(method===null)continue;formValidator.addValidator(fields[i].name,[{method:method,params:params,message:"Please choose a "+fields[i].name.toLowerCase()}]);};function removeErrors(){$(form).find("div.errormessage").remove();$(form).find(".error").removeClass("error");}
function addToBag(){var action="/webapp/wcs/stores/servlet/BasketAdd";var viewParams="&URL=MiniShoppingBagView";$(form).find("input[name='errorViewName']")[0].value="GenericAjaxErrorJSONView";$(form).find("div.errormessage").remove();var stockError=checkStockAvailabilityText();if(!stockError){var formData=$(form).serialize();var buttonData="&addToBagButton.x=1";var data=formData+viewParams+buttonData;$(form).find(".error").removeClass("error");loadingIndicator.show();var ajax=$.ajax({url:action,contentType:"application/x-www-form-urlencoded",cache:false,dataType:"json",type:"post",success:function(response,textStatus){loadingIndicator.hide();if(Salmon.UI.ajaxResponseInvalid(response,false)){displayQuantityErrorMessage(response.errorText,response.errorParams);return false;};$.publish(Salmon.UI.CustomEvents.productAddedToShoppingBag,response);submitFunction=addToBag;if(quickLookPanel){quickLookPanel.closeOverlay();};},data:data,error:Salmon.UI.AjaxError});}};function checkStock(e){return;var data=e.data[0].stockLevel;if(data==="0"){disableAddToBag();}else{enableAddToBag();SF.ImageRollovers.add(form);}};function disableAddToBag(){addToShoppingBag.disabled=true;addToShoppingBag.src=addToBagButtonSrc.dis;};function enableAddToBag(){addToShoppingBag.disabled=false;addToShoppingBag.src=addToBagButtonSrc.def;};function getDisabledSrcFromButtonSrc(imageSrc){var extensionIndex=imageSrc.lastIndexOf(".");var originalSourceWithoutExtension=imageSrc.substring(0,extensionIndex);var extension=imageSrc.substring(extensionIndex,imageSrc.length);return originalSourceWithoutExtension+suffix+extension;};function displayQuantityErrorMessage(message,messageParams){var str,strArray;var errorElement=$(form).find("div.errormessage"),errorMessage="<p>"+message+"</p>";if(errorElement.length==0){$(form).prepend($(document.createElement("div")).addClass("errormessage").html(errorMessage));}else{errorElement.html(errorMessage);}
str=messageParams.toString();strArray=str.split("|");for(i=0;i<strArray.length;i++){if(strArray[i]!=''){$(form).find("div."+strArray[i]).addClass("error");}}};function checkStockAvailabilityText(){var quantity;var qVal;var stockAvlblError=false;var fields=$(form).find(".stockAvailability").find("span.value");var errorElement=$(form).find("div.errormessage"),errorMessage="<p>"+"Item(s) Unavailable"+"</p>";for(i=0;i<fields.length;i++){qVal=$("input[name~=quantity_"+i+"]").val();if(fields[i].innerHTML=="Unavailable"&&qVal!=0){quantity=$(form).find("div."+"quantity_"+i);stockAvlblError=true;quantity.addClass("error");}}
if(stockAvlblError){if(errorElement.length==0){$(form).prepend($(document.createElement("div")).addClass("errormessage").html(errorMessage));}else{errorElement.html(errorMessage);}}
return stockAvlblError;};};$.namespace("SF.ProductVariantsHandler");SF.ProductVariantsHandler=function(root,async){var productID=$(root).find("input[rel='productId']").val()||$(root).find("input[name='productId']").val()||null;var childItemId=$(root).find("input[rel='childItemId']").val()||$(root).find("input[name='childItemId']").val()||null;var thisCurrentSuperSwatchName="";var thisCurrentSuperSwatchImage="";if(!productID)return null;var customEvent=Salmon.UI.CustomEvents.productAttributeChanged+productID;var altImages=null;if(SF.ProductAltImages){altImages=new SF.ProductAltImages();}
var form=$(root).find("form")[0]||$(root).find(".productForm")[0]||null;var fields,attributeCollection=[];var attributeElements=$(root).find(".attribute");var isStaticImage=null;for(var i=attributeElements.length-1;i>=0;i--){fields=$(attributeElements[i]).find("input[type='radio'], select");attributeCollection.push(new Attribute(fields));}
setDefaultFirstOption(fields);function Attribute(fields){var name=$(fields)[0].name;if(name==="Colour"||name==="Fragrance"||name==="Flavour"||name.substring(0,7)==="Colour_"||name.substring(0,10)==="Fragrance_"||name.substring(0,8)==="Flavour_"){return new ColourAttribute(fields);}
else{return new SelectAttribute(fields[0]);}};function ColourAttribute(radios){var me=this;var hoverClass="hover";var selectedClass="selected";var currentColour="no colour";var value=null;this.value=value;var user=new SF.UserAgent();var uagent=user.getUagent();$(radios).parents("div.attribute").addClass("colourAttributeEnhanced");var indicator=document.createElement("p");indicator.className="indicator";indicator.innerHTML=currentColour;$(radios).parents("div.radios").append(indicator);if(uagent=='mobile'){indicator.className='indicator overRide';indicator.style.marginBottom=5+'px';indicator.style.marginTop=-5+'px';}
var labels=(function(){var labels=[];for(var i=0;i<radios.length;i++){radio=radios[i];label=getLabel(radio);labels.push(label);};return labels;}());setupLabels();function setupLabels(){var radio,label;for(var i=0;i<radios.length;i++){radio=radios[i];label=getLabel(radio);label.colour=getLabelColour(radio);$(label).bind("click",label_onClick);if(uagent=='desktop'){$(label).bind("mouseover",label_onMouseover);$(label).bind("mouseout",label_onMouseout);}
if(radio.checked){label_onClick.call(label);};};};setupStaticImage();function setupStaticImage(){var foundItem=false;var itemName="";for(var whatItem in SF.ProductData.data){if(!foundItem){itemName=whatItem;foundItem=true;}}
if(SF.ProductData.data[itemName]){isStaticImage=(SF.ProductData.data[itemName].staticImage==true)?true:false;}else{isStaticImage=false;}
if($.browser.msie){var userAgent=$.browser.version;userAgent=userAgent.substring(0,userAgent.indexOf('.'));var version=userAgent;if(version<=6){$("#imageSwatchHolder").css("border","solid 1px #fff");}}};function getLabels(){return labels;};function getLabel(radioNode){return $(radioNode).next("label")[0]||$(radioNode).prev("label")[0]||null;};function getLabelColour(radioNode){return radioNode.value;};function setValue(value){me.value=value;};function removeSelectedClass(nodeToIgnore){var labels=getLabels();for(var i=0;i<labels.length;i++){if(labels[i]===nodeToIgnore)continue;$(labels[i]).removeClass(selectedClass);};};function setCurrentColour(value){currentColour=value;};function updateIndicator(){indicator.innerHTML=currentColour;};function label_onClick(){if(isStaticImage){showStaticSwatch($(this).find("img").attr("src"));}
if(this.colour===getCurrentColour()){return false;};thisCurrentSuperSwatchName=this.colour;thisCurrentSuperSwatchImage=$(this).find("img").attr("src");setCurrentColour(this.colour);setValue(this.colour);updateIndicator();removeSelectedClass(this);updateVariants();$(this).addClass(selectedClass);};function showStaticSwatch(whatSwatch){var newSwatch=whatSwatch.replace(/_SW\$/g,"_SW_M\$").replace(/_SW\?/g,"_SW_M\?")
if($("#productImage").find("#imageSwatchHolder").length<=0){addImageSwatchHolder();}
addImageToSwatchHolder(newSwatch);};function addImageSwatchHolder(){$("#productImage").append("<div id=\"imageSwatchHolder\"></div>");};function addImageToSwatchHolder(image){$("#imageSwatchHolder").empty().append("<img />")
$("#imageSwatchHolder").find("img").attr("src",image);if($(".quickLookImage").length){$("#imageSwatchHolder").find("img").attr("width","50");$("#imageSwatchHolder").find("img").attr("height","50");}}
function getCurrentColour(){return currentColour;};function label_onMouseover(){$(this).parent().siblings().find("label").removeClass(hoverClass);$(this).addClass(hoverClass);};function label_onMouseout(){$(this).removeClass(hoverClass);};};function setDefaultFirstOption(radios){updateVariants();};function SelectAttribute(select){var me=this;var value=null;this.value=value;var name=select.name;if(select.length==2){this.value=select[1].value;}
$(select).bind("change",change);$.subscribe(customEvent,updateMe);function change(){me.value=$(this).val();updateVariants();};function updateMe(e){var data=e.data[0]||null;if(!data)return;if(data.attributeName===name){removeOptions();addOptions(data.attributeValues);}};function removeOptions(){var options=select.options;var option=null;var optionsToRemove=[];for(var i=1;i<options.length;i++){option=options[i];if(option.value==="")continue;optionsToRemove.push(option);}
$(optionsToRemove).remove();};function addOptions(options){var option=null;for(var i=0;i<options.length;i++){option=document.createElement("option");option.value=options[i];option.innerHTML=options[i];select.appendChild(option);}};};var PriceDisplay=new(function(){var ul=$(root).find("div.prices ul")[0]||null;if(!ul)return null;$.subscribe(customEvent,update);function update(e){var data=e.data[0]||null;if(!data)return;var prices=data.prices||null;setDiscount(data.offerDiscount||null);if(prices.length===0)return;setPrices(prices);};function setPrices(prices){$(ul).find("li.price").remove();$(ul).find("li.wasPrice").remove();$(ul).find("li.wwasPrice").remove();var html="";for(var i=0;i<prices.length;i++){var priceArray=prices[i].split('&pound;');if(prices.length==3){if(i==0){html+='<li class="wwasPrice"><span>'+prices[i]+'</span></li>';}else if(i==1){html+='<li class="wasPrice"><span>'+prices[i]+'</span></li>';}else{html+='<li class="price"><span class="now">'+priceArray[0]+'<span class="amount">'+'&pound;'+priceArray[1]+'</span></span></li>';}}else if(prices.length==2){if(i==0){html+='<li class="wasPrice"><span>'+prices[i]+'</span></li>';}else{html+='<li class="price"><span class="now">'+priceArray[0]+'<span class="amount">'+'&pound;'+priceArray[1]+'</span></span></li>';}}else{html+='<li class="price">'+prices[i]+'</li>';}}
$(ul).prepend(html);};function setDiscount(discount){var offer=$(ul).find("li.offer");if(offer.has("a")&&discount!=""){offer.find("a").html(discount);}else{offer.html(discount);}};});var PriceHistory=new(function(){var hideClass="hide";var node=$(root).find("div.priceHistory")[0]||null;if(!node)return;$(node).addClass("priceHistoryEnhanced");var a=$(node).find("a.activator")[0]||null;if(!a)return;a.href="#";var details=$(node).find("div.details")[0]||null;if(!details)return;$(details).bgiframe();var ul=$(details).find("ul")[0]||null;if(!ul)return;$(details).addClass(hideClass);$(a).bind("mouseenter",showPanel);$(node).bind("mouseleave",hidePanel);function showPanel(){var sfcmScript=$(details).find(".sfcmScript").html();if(sfcmScript)
eval(sfcmScript);$(details).removeClass(hideClass);}
function hidePanel(){$(details).addClass(hideClass);}
function update(e){var data=e.data[0]||null;if(!data)return;var priceHistory=data.priceHistory||null;if(priceHistory.length===0)return;setPriceHistory(priceHistory);}
function setPriceHistory(priceHistory){var html='';for(var i=0;i<priceHistory.length;i++){html+="<li>"+priceHistory[i]+"</li>";}
ul.innerHTML=html;}
$.subscribe(customEvent,update);});var ImagePreview=new(function(){var mainImage=$("#largeImage")[0]||null;var previewImage=$(root).find(".previewImage img")[0]||mainImage;var previewLink=$(root).find("h1 a.previewLink")[0]||null;var quickLookImage=$(root).find(".quickLookImage img")[0]||null;var hiddenImageURL=$(root).find("input[name='replacementMainImageURL']").val()||null;var zoomImageURL=null;if(!(previewImage||quickLookImage))return;if(previewLink){$(previewLink).bind("click",previewLinkClick);}
$.subscribe(customEvent,update);function update(e){var data=e.data[0]||null;if(!data)return;var staticImageURL=data.staticImageURL;if(staticImageURL.length===0)return;var previewImageURL=data.staticImageURL+Salmon.PageContext.IMAGEPARAMXTRASMALL;var bigImageURL=data.staticImageURL+Salmon.PageContext.IMAGEPARAMXTRALARGE;var mediumImageURL=data.staticImageURL+Salmon.PageContext.IMAGEPARAMMEDIUM;var mediumLargeImageURL=data.staticImageURL+Salmon.PageContext.IMAGEPARAMMEDIUMLARGE;if(previewLink){previewImage.src=mediumImageURL;previewImage.alt=data.altImageText;previewLink.className=data.imageReference;previewLink.href=bigImageURL;}
else if(quickLookImage&&!isStaticImage){zoomImageURL=data.zoomImageURL;quickLookImage.src=mediumLargeImageURL;quickLookImage.alt=data.altImageText;}
else if($("#productBundleItems").find(".bundleItems").length>0){previewImage.className=data.imageReference;previewImage.src=previewImageURL;previewImage.alt=data.altImageText;}
else{if(!isStaticImage){previewImage.className=data.imageReference;previewImage.src=bigImageURL;previewImage.alt=data.altImageText;zoomImageURL=data.zoomImageURL;if(altImages){altImages.init(data);}
largeImageChanged(data);}}}
function largeImageChanged(sku){$.publish(Salmon.UI.CustomEvents.productLargeImageChanged,sku);};function previewLinkClick(){mainImage.src=this.href;mainImage.className=this.className;if(SF.ProductZoom.Scene7Player){SF.ProductZoom.Scene7Player.altUpdate();}
return false;}});function supersetColourClick(){var mainImage=$("#largeImage")[0]||null;var newImageName=thisCurrentSuperSwatchImage;newImageName=newImageName.replace(/_SW\$/g,"_M\$").replace(/_SW\?/g,"_M\?")
var newClassName=newImageName.substring(newImageName.lastIndexOf("/")+1);newClassName=newClassName.substring(0,newClassName.lastIndexOf("_M?"));mainImage.src=newImageName;mainImage.className=newClassName;if(SF.ProductZoom.Scene7Player){SF.ProductZoom.Scene7Player.altUpdate();}
return false;}
var SkuHandler=new(function(){var node=form.catEntryId||null;if(!node)return;$.subscribe(customEvent,update);function update(e){var data=e.data[0]||null;if(!data)return;var sku=data.itemSKU;if(sku.length===0)return;node.value=sku;}});var StockAvailability=new(function(){var node=$(root).find("p.stockAvailability")[0]||null;if(!node)return;var span=$(node).find("span")[0]||null;if(!span)return;$.subscribe(customEvent,update);if(childItemId){sendRequest(childItemId);}
function update(e){removeErrors();var data=e.data[0]||null;if(!data)return;var sku=data.itemSKU;if(sku.length===0)return;sendRequest(sku);};function sendRequest(sku){var data=$("#productBundleItems").find("form").serialize()||$(form).serialize();data+="&itemId="+sku;$.ajax({async:async,url:"/webapp/wcs/stores/servlet/AjaxStockIndicationView",type:"post",dataType:"json",success:showStock,data:data,error:Salmon.UI.AjaxError});}
function removeErrors(){$(form).find("div.errormessage").remove();$(form).find(".error").removeClass("error");};function showStock(data){$.publish(Salmon.UI.CustomEvents.stockAvailabilityChanged+productID,data);span.innerHTML=data.stockText;}
function addStockLevelHandler(stockLevel){var quantityNode=$("input[name='quantity']",root);if(stockLevel>0&&quantityNode.val()>1&&quantityNode.val()>stockLevel){displayOutOfStockMessage();}
quantityNode.unbind("change").change(function(ev){if(this.value>stockLevel){displayOutOfStockMessage();}});}
function displayOutOfStockMessage(){}});var DescriptionUpdate=new(function(){var detailsId="PTP_details_"+productID;var detailsDiv=document.getElementById(detailsId);if(!detailsDiv)return;var descriptionText=$("p.description span").get(0);var auxId="PTP_ingredients_"+productID;var auxDiv=document.getElementById(auxId);if(!auxDiv){var auxId="PTP_specification_"+productID;var auxDiv=document.getElementById(auxId);}
$.subscribe(customEvent,update);function update(e){var data=e.data[0]||null;if(!data)return;if(descriptionText){var shortDesc=data.shortDescription;if(shortDesc){descriptionText.innerHTML=shortDesc;}}
var description=data.longDescription;if(description){detailsDiv.innerHTML=description;}
if(auxDiv){var aux=data.auxDescription1;if(aux){auxDiv.innerHTML=aux;}}};});function getCurrentKey(){var val="P"+productID;var attrValue=null;for(var i=attributeCollection.length-1;i>=0;i--){attrValue=attributeCollection[i].value;if(attrValue===null||attrValue==="")continue;val+="_"+attributeCollection[i].value;}
return val;};function getCurrentKeyLessLastOption(){var val="P"+productID;var attrValue=null;for(var i=attributeCollection.length-1;i>=0;i--){if(i>0){attrValue=attributeCollection[i].value;if(attrValue===null||attrValue==="")continue;val+="_"+attributeCollection[i].value;}}
return val;};function updateVariants(){if(!$(root).hasClass("superset")){var currentKey=$.trim(getCurrentKey());if(!SF.ProductData.data){return;}
var newDetails=SF.ProductData.data[currentKey];if(!newDetails){currentKey=$.trim(getCurrentKeyLessLastOption());newDetails=SF.ProductData.data[currentKey];}
$.publish(customEvent,newDetails);}else{var thisCurrentSwatch=null;var tempCollection=$(".bundleItems .productForm");tempCollection.each(function(){$(this).find("input[value='NONE']").parent().find("label").click();var foundMatch=false;$(this).find("input[type='radio']").each(function(){if($(this).attr("value")==thisCurrentSuperSwatchName){foundMatch=true;$(this).parent().find("label").click();$(this).attr("checked",true);supersetColourClick();}});if(!foundMatch){$(this).find(".previewImage").find("img").attr("src","/wcsstore/ConsumerDirectStorefrontAssetStore/en_US/Style1/img/blank.gif");$(this).find(".stockAvailability").find("span.value").text("Unavailable");}});}};}
$.namespace("SF");SF.ProductMoreLikeThis=function(root){var hideClass="hide";var a=document.createElement("a");var img=$('span.imgDir').first().text()+'/icon_more_like_this2.gif';$(root).addClass("moreLikeThisEnhanced");a.href="#";a.className="activator";if($('#quickLookOverlay').length>0){a.innerHTML='More like this<img src="'+img+'"/>';}else{a.innerHTML='<img src="'+img+'"/>More like this';}
$(root).prepend(a);Cufon.replace("#quickLookOverlay .moreLikeThis a.activator",{separate:'none'});var links=$(root).find("div.links")[0]||null;if(!links)return;$(links).bgiframe();$(links).addClass("hide");$(a).bind("mouseenter",showPanel);$(root).bind("mouseleave",hidePanel);function showPanel(){$(links).removeClass(hideClass);}
function hidePanel(){$(links).addClass(hideClass);}}
$.namespace("SF");SF.GlobalSearch=new(function(){var hideClass="hide",searchField,searchButton;$(document).ready(init);function init(){searchField=document.getElementById("searchbox")||null;if(!searchField)return;$(searchField).bind("focus",setText);searchTermCase();};function showButton(){$(searchButton).removeClass(hideClass);};function setText(){if(searchField.value=="Type your search here"){clearText();return}
searchField.select();};function clearText(){searchField.value="";};function searchTermCase(){$('#globalSearch form').submit(function(){var searchBox=$('input#searchbox');var searchTerm=$(searchBox).val().toUpperCase();$(searchBox).val(searchTerm);});}});$.namespace("SF");SF.PrimaryNavigation=new(function(){$(document).ready(function(){var root=$("#primaryNavigation ul")[0]||null;var menu=new Adoro.DropDownMenu(root,{cssHideClass:"off",subMenuType:"div",cssActiveClass:"hover"});});});$.namespace("SF");SF.Footer=new(function(){var footer=null;var IE6=($.browser.msie&&parseInt($.browser.version)===6);$(document).ready(init);function init(){footer=document.getElementById("footer")||null;if(!footer)return;var isHandHeld=(SF.HandHeld)?SF.HandHeld.isHandHeld():false;if(IE6||isHandHeld){$(window).resize(positionFooter);$(window).scroll(positionFooter);positionFooter();}else if(isHandHeld){setInterval(function(){var height=SF.HandHeld.pageHeight();$(footer).css({"position":"absolute","top":height+"px"});},1000);}};this.positionFooter=positionFooter;function positionFooter(){if(IE6){var top=$(window).height()-$(footer).height()+$(window).scrollTop()+"px";$(footer).css({"position":"absolute","left":"0","top":top});}};});SF.Footer.Showcase=new(function(){var opened=false;var carouselRoot=null;var showcase=null;$(document).ready(init);function init(){showcase=document.getElementById("showcase")||null;if(!showcase){return;}else{$('div#showcase').removeClass('hide');carouselRoot=$(showcase).find(".carousel")[0]||null;new SF.Footer.Carousel(carouselRoot);}};});SF.Footer.Carousel=function(root){var state={currentSlideIndex:0,previousSlideIndex:0};var container,pages,carousel;$('div.carousel .control').bind("click",function(){var increment;if($(this).attr('id')=='backButton'){increment=-1;}else{increment=1;}
carousel.moveTo(increment,this);return false;});$(init);function init(){var indicators=$(root).find(".indicatorsContainerInner")[0]||null;if(!indicators){return;}
carousel=new Carousel(root,indicators);carousel.moveTo(0);};function Carousel(carouselRoot,indicators){var carousel=$(carouselRoot).find(".clip ul")[0];if(!carousel){carousel=$(carouselRoot).find(".clip")[0];if(carousel){carousel.appendChild(document.createElement("ul"));carousel=$(carousel).find("ul")[0];}else{return;}}
var pages=$(indicators).find("li");var indicators=new Indicators(indicators,pages);var dataStructure=new DataStructure();var offset=0;var width=884;this.moveTo=moveTo;this.pages=pages;this.container=container;if(pages.length==1){$('#backButton').addClass('disabled');$('#forwardButton').removeClass('disabled');}
function moveTo(number,button){if(arguments.length==2){state.currentSlideIndex=state.currentSlideIndex+number;}else{state.currentSlideIndex=number;}
if(state.currentSlideIndex==0){$('#backButton').removeClass('enabled');$('#backButton').addClass('disabled');$('#forwardButton').removeClass('disabled');$('#forwardButton').addClass('enabled');}else if(state.currentSlideIndex==pages.length-1){$('#backButton').removeClass('disabled');$('#backButton').addClass('enabled');$('#forwardButton').removeClass('enabled');$('#forwardButton').addClass('disabled');}else{$('#backButton').removeClass('disabled');$('#backButton').addClass('enabled');$('#forwardButton').removeClass('disabled');$('#forwardButton').addClass('enabled');}
if(number!=0){move();}};function move(){if(dataStructure[state.currentSlideIndex]===false){var targetUrl=pages[state.currentSlideIndex].getElementsByTagName("a")[0];targetUrl=targetUrl.href;var bg=$(carousel).parent("div").find("span.loading").get(0);var loader=new Salmon.UI.LoadingHtml(bg);loader.show();$(bg).removeClass("hide");$.ajax({url:targetUrl,type:"get",dataType:"json",success:function(data){$(bg).addClass("hide");loader.hide();dataStructure[state.currentSlideIndex]=true;appendData(data.pageHtml);state.previousSlideIndex=state.currentSlideIndex;SF.QuickLook.init();animate();},contentType:"application/ajax"});}else{animate();}
function appendData(html){var insertPoint=$(carousel).find("li:last"),showcaseItems=$(carousel).find("li[class^='showcaseItems']"),backwards=false,newItems=$(html),viewAllLink=newItems.find("p.showcaseViewAll");if(showcaseItems.length>1){showcaseItems.each(function(idx){var showcaseItemsList=parseInt($(this).attr("class").replace("showcaseItems",""));if(showcaseItemsList<state.currentSlideIndex+1){insertPoint=$(this);}else if((showcaseItemsList>state.currentSlideIndex+1)&&(state.currentSlideIndex<state.previousSlideIndex)){backwards=true;}});}
if(viewAllLink.length>0&&$(carousel).find(">p.showcaseViewAll").length===0){$(carousel).prepend(viewAllLink);}else if(viewAllLink.length>0){viewAllLink.remove();}
if(insertPoint.length>0){newItems.insertAfter(insertPoint);}else{$(carousel).append(newItems);}
var length=0;for(i=0;i<dataStructure.length;i++){if(dataStructure[i]===true){length++;}}
$(carousel).css({"width":length*width+"px"});if(backwards){$(carousel).css("left",($(carousel).position().left-width)+"px");}};function animate(){var empty=0;for(i=0;i<state.currentSlideIndex;i++){if(dataStructure[i]===false){empty++;}}
offset=((state.currentSlideIndex-empty)*width)*-1;$(carousel).animate({left:offset},1000,function(){indicators.updateStyle(state.currentSlideIndex);});};};function DataStructure(){var data=new Array();var count=0;while(count<pages.length){if(count==0){data.push(true);}else{data.push(false);}
count++;}
return data;};function Indicators(container,pages){this.updateStyle=updateStyle;function updateStyle(number){for(i=0;i<pages.length;i++){if(i==number){$(pages[i]).find("a").addClass("indicatorSelected");}else{$(pages[i]).find("a").removeClass("indicatorSelected");}}};};};};$.namespace("SF");SF.QuickLook=new(function(){var user=new SF.UserAgent();var uagent=user.getUagent();var panels=[];$.subscribe(Salmon.UI.CustomEvents.quickLookPanelsAdded,init);$(document).ready(init);this.init=init;function init(){var containers=$("div.quicklook");var panel=null;for(var i=containers.length-1;i>=0;i--){if(panelExists(containers[i]))continue;addPanel(containers[i]);};};this.addPanel=addPanel;function addPanel(node){panel=new QuickLookPanel(node);panels.push(panel);};function panelExists(node){var exists=false;for(var i=panels.length-1;i>=0;i--){if(panels[i].container===node){exists=true;break;}}
return exists;};function QuickLookPanel(container){var me=this,disabled=false;this.container=container;var anchor=$(container).find("a")[0]||null;if(!anchor)return null;var productDescriptionLoaded=false;var responseHTML=null;var panel=document.createElement("div");panel.id="quickLookOverlay";var closePanel=$(document.createElement("div")).addClass("closePanel");var closeButton=document.createElement("a");closeButton.href="#";closeButton.className="close";var closeLink=$(document.createElement("a")).attr("href","#").addClass("closeLink").text("Close");var img=new Image();img.src=Salmon.PageContext.STYLEIMAGEDIR+"/global/icon_close_overlay_l.gif";closeButton.appendChild(img);closePanel.append(closeLink);closePanel.append(closeButton);$(panel).append(closePanel);var product=null;var moreLikeThis=null;var productForm=null;var colourSwatchSet=null;var moreColours=null;var hideClass="hide";var button=document.createElement("a");button.href="#";button.className="quickLookButton";button.rel=anchor.rel;if($(anchor).parents(".colours").length==0){var btn=document.createElement("span");button.appendChild(btn);if(!$(container).hasClass("noQuickLookButton")){if(uagent=='desktop'){$(container).append(button);}else{if($(container).parents('.gallery').length>0||$(container).parents('#getTheLook').length>0){$(container).after(button);$(button).find('span').css({'marginTop':'4px','marginBottom':'4px','marginLeft':'25px','marginRight':'25px'});}else if($(container).parents('.showcaseItem').length>0){$(container).parents('.showcaseItem').find('div.details').append(button);}}}
moreColours=$(container).siblings(".colours").find("p.more a").each(function(){$(this).attr("rel",button.rel);$(this).bind("click",showQuickLookPanel);});}else{colourSwatchSet=new SF.ProductColourSwatchSet(container,true);$(container).bind("mouseover",function(){$(container).addClass("hover");});$(container).bind("mouseout",function(){$(container).removeClass("hover");});$(container).prepend(button);}
if(uagent=='desktop'){hideButton();}
var loadingIndicator=new Salmon.UI.LoadingHtml(container);if(uagent=='desktop'){$(container).bind("mouseover",showButton);$(container).bind("mouseout",hideButton);}
$(button).bind("click",showQuickLookPanel);$(closeButton).bind("click",closeOverlay);$(closeLink).bind("click",closeOverlay);function showButton(){$(button).removeClass(hideClass);};function hideButton(){$(button).addClass(hideClass);};function disable(){disabled=true;};function enable(){disabled=false;};function showQuickLookPanel(){if(disabled)return false;disable();if(productDescriptionLoaded){showOverlay();enable();return false;};var URL="/webapp/wcs/stores/servlet/ProductDescriptionPanelAjaxView";var data=this.rel;loadingIndicator.show();$.ajax({url:URL,type:"get",data:data,dataType:"json",success:quickLookPanelLoaded,error:function(){enable();Adoro.Dialogue.setHTML("There is an error");}});return false;};function quickLookPanelLoaded(response){enable();$(panel).append(response.html);$.publish(Salmon.UI.CustomEvents.quickLookDataReceived,response.data);product=new SF.ProductVariantsHandler($(panel).find("div.productInformation")[0]);var productId=$(panel).find("input[name='productId']").val()||null;showOverlay();moreLikeThis=new SF.ProductMoreLikeThis($(panel).find("div.moreLikeThis")[0]);productForm=new SF.ProductForm($(panel).find("form")[0],productId,me);var labels=$(panel).find("div.colorSwatch label");colourSwatchSet=new SF.ProductColourSwatchSet(labels);productDescriptionLoaded=true;};function showOverlay(){loadingIndicator.hide();Adoro.Dialogue.hideDialogue();Adoro.Dialogue.setHTML("");Adoro.Dialogue.setHTML(panel);Adoro.Dialogue.showDialogue({closeOnOverlayClick:true});SF.ImageRollovers.init();Cufon.replace("#quickLookOverlay p.sneekTitle, #quickLookOverlay .moreLikeThis h2");$("#overlay").bind("click",closeOverlay);};function closeOverlay(){Adoro.Dialogue.hideDialogue();panel.parentNode.removeChild(panel);Adoro.Dialogue.setHTML("");return false;};this.closeOverlay=closeOverlay;};});$.namespace("SF");SF.MiniShoppingBag=new(function(){var hideClass="hide",li=null,panel=null,innerPanel=null,hovering=false,hideDelay=6000,itemsDetails=null;$(document).ready(init);function init(){li=$("#globalNavigation li.shoppingBag")[0]||null;panel=document.getElementById("miniShoppingBag");$(panel).bgiframe();innerPanel=$(panel).find("div.miniShoppingBagInner")[0]||null;itemsDetails=$(li).find("span.details")[0]||null;if(!li||!panel)return;hideJustAdded();$(li).bind("mouseenter",liMouseenter);$(li).bind("mouseleave",liMouseleave);};function liMouseenter(){setInsideLiState(true);showPanel();};function liMouseleave(){setInsideLiState(false);hideJustAdded();hidePanel();};function liClosePermaPanel(){$("#miniShoppingBagClose a").unbind("click",liClosePermaPanel);$(li).bind("mouseleave",liMouseleave);$("body").unbind("click",liClosePermaPanel);setInsideLiState(false);hideJustAdded();hideCloseButton();hidePanel();};function setInsideLiState(value){hovering=value;};function showPanelPermanently(){showCloseButton();showPanel();$(li).unbind("mouseleave",liMouseleave);$(li).unbind("mouseenter",liMouseenter);$("body, *").bind("click",liClosePermaPanel);$('div#miniShoppingBag a.btnShare').css('margin',0).after('<a class="btnContinue" href="#">Continue shopping</a>');$("#miniShoppingBagClose a, #miniShoppingBag a.btnContinue").bind("click",function(){liClosePermaPanel();return false;});};function showCloseButton(){$(panel).find("#miniShoppingBagClose").removeClass(hideClass);};function hideCloseButton(){$(panel).find("#miniShoppingBagClose").addClass(hideClass);};function showPanel(){$(panel).removeClass(hideClass);$('div#footer').css('zIndex',-10);var shoppingBag=$('#globalNavigation li.shoppingBag');var link=$(shoppingBag).find('span.link');var linkPadding=parseInt($(link).css('paddingLeft'));var linkMidpoint=$(shoppingBag).width()-$(link).position().left-(($(link).width()-linkPadding)/2+linkPadding);var overlay=$('div#miniShoppingBag');$(overlay).css('right',linkMidpoint-175.5+'px');if($('div#miniShoppingBag a.btnContinue').length>0){$('div#miniShoppingBag a.btnContinue').remove();$('div#miniShoppingBag a.btnShare').css('margin','10.5px 0');}};function hidePanel(){$(panel).addClass(hideClass);$(li).bind("mouseenter",liMouseenter);$('div#footer').css('zIndex',0);};function setPanelHtml(html){innerPanel.innerHTML=html;};function updateItemsDetails(e){if(e.data[0].price&&e.data[0].items){var itemsLabel;var price=e.data[0].price;var items=e.data[0].items;if(items==1){itemsLabel='item';}else{itemsLabel='items';}
$(itemsDetails).html(price+'&nbsp;('+items+'&nbsp;'+itemsLabel+')');}};function showAndHide(e){var data=(function(){var d=e||null;if(d){d=e.data||null;if(d){d=e.data[0]||null;}}
return d;}());if(data&&data.script){eval(data.script);}
var panelContent;if(data.html){panelContent=data.html;}else{panelContent='<div id="miniShoppingBagClose" class="hide"><a href="#"><span>Close</span>';panelContent+='<img src="/wcsstore/ConsumerDirectStorefrontAssetStore/en_US/Style1/img/global/icon_close_overlay_l.gif" alt="close" />';panelContent+='</a></div>';panelContent+='<p class="sorry">Sorry, there was a problem adding that product to your bag!</p>';}
setPanelHtml(panelContent);showJustAdded();showPanelPermanently();window.scrollTo(0,0);$.publish(Salmon.UI.CustomEvents.miniShoppingBagChanged);};function hideJustAdded(){$(panel).find("div.justAdded").addClass(hideClass);$("#miniShoppingBag h3").removeClass(hideClass);};function showJustAdded(){$(panel).find("div.justAdded").removeClass(hideClass);$("#miniShoppingBag h3").addClass(hideClass);};$.subscribe(Salmon.UI.CustomEvents.productAddedToShoppingBag,showAndHide);$.subscribe(Salmon.UI.CustomEvents.productAddedToShoppingBag,updateItemsDetails);});$.namespace("SF");SF.MyAccountNavigation=new(function(){$(document).ready(init);var panel=null;function init(){var li=$("#globalNavigation li.myAccount")[0]||null;panel=document.getElementById("myaccountnav");if(!li||!panel)return;$(li).bind("mouseenter",show);$(li).bind("mouseleave",hide);}
function show(){$(panel).removeClass("off");$(panel).bgiframe();$('div#footer').css('zIndex',-10);var link=$('li.myAccount').children('a');var linkMidpoint=$(link).width()/2;var overlay=$('div#myaccountnav');$(overlay).css('right',linkMidpoint-79.5+'px');}
function hide(){$(panel).addClass("off");$('div#footer').css('zIndex',0);}});$.namespace("SF");SF.SecondaryNavigation=new(function(){$(document).ready(prepare);var maxItems=12;var root=null;if(Salmon.PageContext.SECNAVITEMCOUNT!=null)
maxItems=Salmon.PageContext.SECNAVITEMCOUNT;function prepare(){root=document.getElementById("secondaryNavigation");if(!root||$(root).hasClass("searchResults"))return;prepareCarousels();prepareAccordion();}
function prepareCarousels(){var options=$(root).find("div.options"),lis,option,clip;$(options).removeClass("hide");for(var i=0;i<options.length;i++){option=options[i];lis=$(option).find("ul li");if(lis.length<=maxItems)continue;clip=$(option).find("div.clip")[0];var backContainer=document.createElement("div");backContainer.className="backContainer";$(option).prepend(backContainer);var forwardContainer=document.createElement("div");forwardContainer.className="forwardContainer";$(option).append(forwardContainer);new Adoro.Carousel(option,{vertical:true,scrollCount:Math.floor(maxItems/2),indicators:false,startButton:false,stopButton:false,backButtonAppendTo:backContainer,forwardButtonAppendTo:forwardContainer,onMoveForwards:function(params){if(params.currentSlideIndex===(params.lisLength)-maxItems){return false;}
return true;}})
$(clip).css("height",getClipHeight(lis[0]));}}
function getClipHeight(li){return maxItems*$(li).outerHeight({margin:true})+"px";}
function prepareAccordion(){var anchors=$(root).find("div.header h2 a");var accordion=new Adoro.Accordion(anchors,{animate:true,alwaysOpen:true});}
function actionAccordion(){$(anchor).trigger("click");return false;}});$.namespace("SF");SF.Finder=new(function(){$(document).ready(init);var attributes=[],url=null,form=null,customEvent=Salmon.UI.CustomEvents.finderChanged;function init(){var finder=document.getElementById("finder");if(!finder)return;form=$(finder).find("form")[0]||null;if(!form)return;url=$(finder).find("input[name='viewURL']").val()||null;if(!url)return;var selects=$(finder).find("select");var select=null;for(var i=selects.length-1;i>=0;i--){select=new Attribute(selects[i]);attributes.push(select);};resetFinder(finder);form_onSubmit();};function Attribute(select){var name=select.name;$(select).bind("change",selectChange);$.subscribe(customEvent,update);function selectChange(){var data=$(form).serialize();data+=serializeSpecific(":disabled[name]");$.ajax({url:url,data:data,dataType:"json",success:complete})};function update(e){var data=e.data[0][name]||null;if(!data){select.disabled=true;return;};select.disabled=false;var options=jQuery.makeArray($(select).find("option"));$(options[0]).text("Please select");for(var i=1;i<options.length;i++){$(options[i]).remove();};for(var i=0;i<data.length;i++){if(data.length===1){$(select).append('<option selected="selected" value="'+data[i].name+'">'+data[i].value+'</option>');if($(select).is(".primaryCategory")){$(form).find("div.subCategory select").get(0).disabled=false;}
break;}
$(select).append('<option value="'+data[i].name+'">'+data[i].value+'</option>');};};};function serializeSpecific(selector){var obj="";$(form).find(selector).each(function(){obj+="&";obj+=$(this).attr("name");obj+="=";obj+=$(this).val();});return obj;};function resetFinder(finder){$(finder).find("a.reset").bind("click",function(){var subcategories=$(form).find("div.subCategory").find("select");subcategories.find("option").remove();subcategories.append("<option value=''></option>");var obj=serializeSpecific("input[type='hidden']");$.ajax({url:url,data:obj,dataType:"json",success:complete})
return false;});};function complete(data){$.publish(customEvent,data);var category=$(form).find("select.primaryCategory"),subcategory=$(form).find("div.subCategory");if(category.val()===""||data.showSubCategories==="false"){hideNode(subcategory);}else if(data.showSubCategories){showNode(subcategory,data.subCategoryName||"");}};function hideNode(node){if(node.find("option").length===1){node.find("select").get(0).disabled=true;}};function showNode(node,label){if(node.hasClass("hide")){node.find("select").removeAttr("disabled");}
node.removeClass("hide");if(label!==""){}};function form_onSubmit(){$(form).bind("submit",function(){$(form).find(":disabled[name]").each(function(){this.disabled=false;});});}});$.namespace("SF");SF.ProductData=new(function(){this.data={};$.subscribe(Salmon.UI.CustomEvents.quickLookDataReceived,function(e){var newData=e.data[0]||null;addData(newData);});function addData(data){for(var property in data){SF.ProductData.data[property]=data[property];};};});$.namespace("SF");SF.Cufon=new(function(){Cufon.replace("#searchNoResults h1, #moreLikeThis h2.header, #pgTreasureRailLanding h1, #pgTreasureRailChooseSize h1, #pgmydetails #sections h2, body.appointments h1, body.appointments #miniMonthView .controls .month, body.appointments #miniMonthView th, #pgpersonalisation #sections h2, #pgMyCalendar #agenda div.date h3, #pgMyCalendar #calendar th, #pgMyCalendar .calendarControls li.month, #pgMyCalendar #calendarMonth a.date, #pgMyCalendar #calendarMonth span.date, .prizeDraws h1, .prizeDraws h2, #pgPopUp h1, #pgPopUp h2, #pgDepartment h1, #pgSavedItems h1, #pgShoppingBag h1, #pgShoppingBag div.promotionalCode div.form label, #pgShoppingBag .items th, #error h1, .myaccount h1, #pgRFQStatus th, #pgwhatson h1, #pgB2BRegisterCompany h1, #pgB2BRegisterCompany h2, #pgSignIn .noAccount h2, #pgSignIn .existingAccount h2, #pgSignIn .registerOrganisation h2, #pgdeliverynoaddress #primary h2, #pgdeliverynoaddress #secondary h2, .checkout h1, #pgthankyou #sections h3, #pgsummary table.summary thead th, #pgsummary .promocode label, #pgsummary .deliverygroup h3, #pgpayment .checkoutoptions h3, #pgpayment .orderSummary thead th, #pgMyAuctions table.generic thead th, #pgfindcustomer h1, #pgviewcollections h1, #pgfindcustomer h1, #pgfindorderresults h1, #pgfindorder h1, #pgfindcustomerresults h1, #pgConciergeRequestForm h1, #pgorderdetails .deliverygroup .summary thead tr th, #pgnotifications h2, body.csr h1, #pgnotifications th, .cufonReplace, #productRating h2, #pgReturns .deliveryGroup h3, #pgReturns .deliveryGroup th, #pgReturns #primary h2, #pgReturns #printDetails h2, .blogsAndForums h1, .whatsOn #blogNavigation h2, #pgMyConnectionsDetail h2, #pgMyConnectionsAdd h2, div.productInformation div.moreLikeThis h2, #pgDiscountDetails h1, #pgProductOfTheDayDetails .poll h3, #pgShopBrands #primary #brandsOnlineHeading h2",{separate:'none'});Cufon.replace("#pggiftwrap .giftwrapdetails h2, .whatsOn h1");Cufon.replace(".cmsCufonLight",{fontFamily:"ITC Avant Garde Std XLt"});});$.namespace("SF.HotSpotCollection");SF.HotSpotCollection=new(function(){this.create=create;function create(data){return new HotSpot(data);};function HotSpot(data){var params=data;this.getXmlUrl=function(){return params.xmlUrl;};this.getVideoSkinUrl=function(){return params.videoSkinUrl;};this.debug=function(obj){};};});$.namespace("SF");SF.Flyout=new(function(){$(document).ready(init);function init(){var flyoutDivs=$("div.flyout");for(var i=flyoutDivs.length-1;i>=0;i--){new Flyout(flyoutDivs[i]);};};function Flyout(container){var primary=$(container).find(".primary")[0]||null;var secondary=$(container).find(".secondary")[0]||null;var className=container.className;var secondaryWidth=$(secondary).width();var secondaryWidthIncPadding=$(secondary).outerWidth();var secondaryHeightIncPadding=$(secondary).outerHeight();$(container).css("position","relative");$(primary).css({"z-index":"2","background-color":"#fff","position":"relative"});$(secondary).css({"position":"absolute","z-index":"1"});function getShownCssProperties(){var p={};if($(container).hasClass("flyLeft")){p={"left":-secondaryWidthIncPadding+"px","top":"0px"};}
else if($(container).hasClass("flyRight")){p={"left":secondaryWidthIncPadding+"px","top":"0px"};}
else if($(container).hasClass("flyDown")){p={"left":"0px","top":$(primary).outerHeight()+"px"};}
else{p={"left":"0px","top":-secondaryHeightIncPadding+"px"};}
return p;};function getHiddenCssProperties(){return{"left":"0px","top":"0px","z-index":"1"};};$(container).bind("mouseenter",show);$(container).bind("mouseleave",hide);$(secondary).css(getHiddenCssProperties());function show(){$(container).parent().css("z-index","10");$(container).css({"z-index":"13"});$(secondary).animate(getShownCssProperties(),{queue:false});};function hide(){$(container).css({"zIndex":"1"});$(secondary).animate(getHiddenCssProperties(),{queue:false,complete:function(){$(container).parent().css("z-index","1");}});};};});$.namespace("SF");SF.SearchComplete=new(function(){$(document).ready(init);var minLength=2;var data=[];var maxResults=20;var searchField;var activated=false;function addDataItem(value,valueType,deptName,url){data.push(new SF.SearchComplete.DataItem(value,valueType,deptName,url));};function addJsonDataItem(item){data.push(new SF.SearchComplete.DataItem(item.value,item.valueType,item.deptName,item.url));}
function addDataItems(items){data=items;};function init(){searchField=document.getElementById("searchbox");if(!searchField)return;$(searchField).bind("focus",searchField_onFocus);$(searchField).attr("autocomplete","off");if(SF.SearchComplete.url){$.ajax({url:SF.SearchComplete.url,type:"get",data:{"getResults":"Y"},dataType:"json",success:function(results){if(!results)return;for(var i=0;i<results.length;i++){addJsonDataItem(results[i]);}
$(searchField).bind("keydown",searchField_onKeyDown);$(searchField).bind("blur",searchField_onBlur);}});}};function searchField_onFocus(e){var container=document.getElementById("globalSearch");$(container).addClass("globalSearchFocused");}
function searchField_onKeyDown(e){if(!activated){var ac=new Adoro.AutoComplete(searchField,data,{maxResults:maxResults,minLength:minLength,objectMember:"value",onItemBound:onItemBound,onFilteredListDraw:onFilteredListDraw});ac.activate();activated=true;}}
function searchField_onBlur(e){var container=document.getElementById("globalSearch");$(container).removeClass("globalSearchFocused");}
function setMaxResults(value){maxResults=value;};function setMinLength(length){minLength=length;};function onItemBound(data){if(data.valueType==="brand"){$(this).addClass("brand");}
else{$(this).addClass("category");}};function onFilteredListDraw(data){$(data.nodes).removeClass("divider");if(!needsDivider(data))return;var li=getFirstCategoryNode(data);$(li).addClass("divider");};function getFirstCategoryNode(data){var node=null;for(var i=0;i<data.nodes.length;i++){node=data.nodes[i];if($(node).hasClass("brand"))continue;if($(node).hasClass("category")){break;}};return node;};function needsDivider(data){var hasBrands=false;var hasCategories=false;var node=null;for(var i=0;i<data.nodes.length;i++){node=data.nodes[i];if(hasBrands&&hasCategories){break;}
if($(node).hasClass("category")){hasCategories=true;}
if($(node).hasClass("brand")){hasBrands=true;}};return(hasBrands&&hasCategories);};$(document).bind("click",documentClick);function documentClick(){$("ul.autoCompleteList").remove();};this.addDataItem=addDataItem;this.setMinLength=setMinLength;this.setMaxResults=setMaxResults;});SF.SearchComplete.DataItem=(function(value,valueType,deptName,url){this.value=value;this.valueType=valueType;this.deptName=deptName;this.url=url;});$.namespace("SF.TreasureRail");SF.TreasureRail.Widget=new(function(){$(document).ready(init);function init(){if(SF.SizeSelector)SF.SizeSelector.init();var widget=$("#treasureRailWidgetLoggedIn div.carousel")[0]||null;if(!widget)return;new Adoro.Carousel(widget,{scrollCount:1,isCircular:false,stopButton:false,startButton:false});};});$.namespace("SF.TreasureRail");SF.TreasureRail.SizeOverlay=new(function(){var anchor,input;$(init);function init(){anchor=$(".sizeAction a");$(anchor).bind("click",function(){anchor_onClick();return false;});}
function anchor_onClick(){var url=$(anchor).attr("href");if(url==null)return;var actionContainer=$(anchor).parents("p").get(0);var overlayLoader=new Salmon.UI.LoadingHtml(actionContainer);overlayLoader.show();$.ajax({url:url,contentType:"appliction/ajax",success:function(data){Adoro.Dialogue.setHTML(data);Adoro.Dialogue.showDialogue({animateOverlay:true,showOverlay:true,overlayOpacity:".4",closeOnOverlayClick:true});overlayLoader.hide();SF.SizeSelector.init();SF.ImageRollovers.init();$("#ChooseSize").bind("submit",form_onSubmit);$("#ChooseSize .actions input").bind("click",setInput);}});}
function form_onSubmit(){var url="/webapp/wcs/stores/servlet/TreasureRailChooseSize";var data=getData(this);$.ajax({url:url,type:"post",data:data,dataType:"json",contentType:"application/x-www-form-urlencoded",success:function(response){if(response.pageHtml){Adoro.Dialogue.setHTML(response.pageHtml);Adoro.Dialogue.showDialogue();}else if(response.redirectUrl){location.href=response.redirectUrl;}}});return false;};function setInput(){input=$(this).attr("name");}
function getData(theForm){var data=$(theForm).serialize();if(input=="saveForSession"){data+="&saveForSession.x=1";}
return data;}});$.namespace("SF");SF.SizeSelector=new(function(){var fieldset=null,radios=null,cssFemale="femalesizes",cssMale="malesizes";this.init=init;function init(){fieldset=document.getElementById("sizeSelector");if(!fieldset)return;radios=$(fieldset).find("input[name='gender']");for(var i=radios.length;i>=0;i--){$(radios[i]).bind("click",radiosChanged);};radiosChanged();};function radiosChanged(){var checkedRadio=getCheckedRadio();if(checkedRadio){showFields(checkedRadio);};};function getCheckedRadio(){var radio=null;for(var i=radios.length-1;i>=0;i--){if(radios[i].checked){radio=radios[i];break;}};return radio;};function showFields(radio){var radioId=radio.id;if(radioId==="genderfemale"){$(fieldset).addClass(cssFemale);$(fieldset).removeClass(cssMale);}
else if(radioId==="gendermale"){$(fieldset).addClass(cssMale);$(fieldset).removeClass(cssFemale);}
else{$(fieldset).removeClass(cssMale);$(fieldset).removeClass(cssFemale);}};});SF.ShowFormOverlay=function(options){var formUrl=options.url||"";var loadMethod=options.loadMethod||"GET";var submitMethod=options.submitMethod||"GET";var submitReturnDataType=options.submitReturnDataType||"html";var closeWhenDone=options.closeWhenDone||false;var buttonClicked=null;var overlayContainer=document.getElementById("dialogue");if(!formUrl)return;var formLoader=$.ajax({url:formUrl,cache:"false",contentType:"appliction/ajax",dataType:"html",type:loadMethod,success:function(data){var size=$("li:contains('The user does not have the authority')",data).size();if(size>0){window.location='ReLogonFormView';return false;}
Adoro.Dialogue.setHTML(data);Adoro.Dialogue.showDialogue({animateOverlay:true,showOverlay:true,overlayOpacity:".4",closeOnOverlayClick:true});setFormEvents();onFormLoadActions();}});function submitForm(form){var elementToAppendTo=buttonClicked?buttonClicked.parentNode:form.get(0);var formSubmitLoader=new Salmon.UI.LoadingHtml(elementToAppendTo);formSubmitLoader.show();submitAction=form.attr("action");data=form.serialize();if(buttonClicked)
data+="&"+$(buttonClicked).attr("name")+"="+$(buttonClicked).val();var formLoader=$.ajax({url:submitAction,cache:"false",contentType:"application/x-www-form-urlencoded",data:data,dataType:submitReturnDataType,type:submitMethod,success:function(data){var logonId=$('#logonId',data).attr('id');var logonPassword=$('#logonPassword',data).attr('id');if(logonId=='logonId'&&logonPassword=='logonPassword'){var href='ReLogonFormView';window.location=href;return false;errorMessage}else{if(data.success&&options.callback){options.callback.call(data);}
switch(submitReturnDataType){case"json":Adoro.Dialogue.setHTML(data.pageHtml);break;case"html":Adoro.Dialogue.setHTML(data);break;}
setFormEvents();onFormLoadActions();}},error:function(a,b,c){alert(b+" "+c);}});buttonClicked=null;};function setFormEvents(){buttonClicked=null;$("#dialogue form input[type='submit'], #dialogue form input[type='image']").bind("click",function(){buttonClicked=this;});$("#dialogue form").bind("submit",function(){submitForm($(this));return false;});SF.ErrorMessageHandler.highlightErrors($("#dialogue div.errormessage"));$("#dialogue a.closeDialogue").bind("click",function(){Adoro.Dialogue.setHTML("");});if(SF.ImageRollovers)
SF.ImageRollovers.add("dialogue");if(closeWhenDone){$("#dialogue a.successClose").click(function(){Adoro.Dialogue.hideDialogue();Adoro.Dialogue.setHTML("");return false;});}};function onFormLoadActions(){var sfcmScript=$("#dialogue .sfcmScript").html();if(sfcmScript)
eval(sfcmScript);if(options.onFormLoad){options.onFormLoad.call(overlayContainer);}}};$.namespace("SF");SF.ReadMore=new(function(){var hideClass="hide";$(document).ready(init);function init(){var panels=$("div.readMorePanel");for(var i=0;i<panels.length;i++){new ReadMore(panels[i]);};};function ReadMore(panel){var open=false;var activator=$(panel).find("a.readMoreAnchor")[0]||null;var zone=$(panel).find(".readMoreZone")[0]||null;var text=$(activator).text();if(!activator||!zone)return null;$(zone).slideUp("fast");$(activator).click(function(){if(open===true){$(zone).slideUp("slow",function(){$(activator).text(text);});open=false;}else{$(zone).slideDown("slow",function(){$(activator).text("Hide");});open=true;}
return false;});};});$.namespace("SF");SF.ProductColourSwatchSet=function(nodes,isGalleryItem){if(!nodes||nodes.length===0)return;if(arguments.length==2){new Swatch(nodes);}else if(arguments.length==1||isGalleryItem===false){for(var i=0;i<nodes.length;i++){new Swatch(nodes[i]);}}
function Swatch(node){var user=new SF.UserAgent();var uagent=user.getUagent();var overlay=document.createElement("div");$(overlay).addClass("swatchOverlay");node.appendChild(overlay);if(uagent=='desktop'){var tooltip=document.createElement("div");$(tooltip).addClass("swatchTooltip");if(node.nodeName.toLowerCase()=="label"){tooltip.innerHTML='<div class="inner">'+$(node).find("img").attr("alt")+'</div>';}else if(node.nodeName.toLowerCase()=="div"){var image=node.getElementsByTagName("img")[0];tooltip.innerHTML='<div class="inner">'+image.alt+'</div>';}
node.appendChild(tooltip);}};};$.namespace("SF");SF.LocationHandler=new(function(){$(setCurrentLocation);function setCurrentLocation(){var section=document.getElementsByTagName("body")[0].className;if(section!="wishRoom"&&section!="checkout"&&section!='myaccount'&&section!="shoppingBag"&&section!="csr"){var location=window.location;createCookie("SELFRIDGES_PREVIOUS_LOCATION",location,7);}}
function createCookie(name,value,days){if(days){var date=new Date();date.setTime(date.getTime()+(days*24*60*60*1000));var expires="; expires="+date.toGMTString();}
else var expires="";document.cookie=name+"="+value+expires+"; path=/";}});$.namespace("SF");SF.ErrorMessageHandler=new(function(){$(init);function init(){highlightErrors($("div.errormessage"));};this.highlightErrors=highlightErrors;function highlightErrors(error){if(error===null)return;error.find("a").each(function(){var id=$(this).attr("href").replace("#",""),input=document.getElementById(id)||$(":input[name='"+id+"']");if(input){$(input).parents("div.field").addClass("error");}});};});$.namespace("SF");SF.Poll=new(function(){var step=1,poll;$(document).ready(init);function init(){poll=$("#pollItem"+step).get(0)||null;if(!poll)return;$(poll).find("div.poll").removeClass("hide");bindPollButtons();};function bindPollButtons(){$(poll).find("form input[type='image']").bind("click",function(){createPoll(this);});};function createPoll(button){var form=$(poll).find("form");form.bind("submit",function(){return false;});var formData=$(form).serialize();formData=formData+"&"+button.name+"="+button.value;$.ajax({url:form.attr("action"),type:"get",data:formData,dataType:"html",success:function(response){$(poll).html(response);var error=$(poll).find("div.errormessage")[0];if(!error){$(poll).find("a.next").bind("click",showNextPoll);}else{init();}},error:Salmon.UI.AjaxError});};function showNextPoll(event){$(poll).find("div.poll").addClass("hide");step++;init();return false;};});$.namespace("SF");SF.FacetNavigation=new(function(){var root=null;var maxItems=12,alwaysOpen=true;if(Salmon.PageContext.SECNAVITEMCOUNT!=null)
maxItems=Salmon.PageContext.SECNAVITEMCOUNT;$(document).ready(init);function init(){root=document.getElementById("facetNavigation");if(!root)return;prepareCarousels();prepareAccordion();}
function prepareAccordion(){if(document.getElementById("pgGallery")!=null){alwaysOpen=$("body").hasClass("nonCategory")?true:false;}
var anchors=$(root).find("div.facets div.header h3 a");var accordion=new Adoro.Accordion(anchors,{animate:true,alwaysOpen:alwaysOpen});var headers=$(root).find("div.facets div.header");for(var i=headers.length-1;i>=0;i--){new AccordionTrigger(headers[i]);}}
function AccordionTrigger(root){var trigger=$(root).find("p.selected a")[0]||null;var anchor=$(root).find("h3 a")[0]||null;if(!trigger||!anchor)return null;$(trigger).bind("click",actionAccordion);function actionAccordion(){$(anchor).trigger("click");return false;}}
function prepareCarousels(){var options=$(root).find("div.options"),lis,option,clip;$(options).removeClass("hide");for(var i=0;i<options.length;i++){option=options[i];lis=$(option).find("ul li");if(lis.length<=maxItems)continue;clip=$(option).find("div.clip")[0];var backContainer=document.createElement("div");backContainer.className="backContainer";$(option).prepend(backContainer);var forwardContainer=document.createElement("div");forwardContainer.className="forwardContainer";$(option).append(forwardContainer);$(clip).css("height",getClipHeight(lis[0]));$(clip).css("padding-top","0px");new Adoro.Carousel(option,{vertical:true,scrollCount:Math.floor(maxItems/2),indicators:false,startButton:false,stopButton:false,backButtonAppendTo:backContainer,forwardButtonAppendTo:forwardContainer,onMoveForwards:function(params){if(params.currentSlideIndex===(params.lisLength)-maxItems){return false;}
return true;}})}}
function getClipHeight(li){return maxItems*$(li).outerHeight(true)+"px";}});BlackBerry=new(function(){if((navigator.userAgent.toLowerCase()).search("blackberry")>-1){var bodyClass=document.getElementById("container").parentNode.className+" blackberry";document.getElementById("container").parentNode.className=bodyClass;}});SF=SF||{};SF.HandHeld=new(function(){this.isHandHeld=isHandHeld;function isHandHeld(){return($("#handheld").css("display")=="block");};this.pageHeight=pageHeight;function pageHeight(){return($(window).height()>$("body").height())?$(window).height():$("body").height();}});
