var gcd;var isUK=true;var stores;var map;var pMk;var sLs;var sMks;var dWin;var mapProp=0.6;var mapSearch="";var root;var mCd;var showAllStores=false;var loadxml=null;var loadingData=false;var mapLang="en";var mapShowLang="true";var mapWidth=700;var mapHeight=350;var mapMiles=true;var mapLines=true;var mapScale=true;var mapSmallControl=true;var mapBlowup=false;var mapLogo="";var mapLogoWidth=220;var mapLogoHeight=40;var mapLogoPos="left";var mapIcon="";var mapIconWidth=37;var mapIconHeight=35;var mapBannerColour="106,0,106";var mapBackgroundColour="230,230,230";function bs0(){if (!GBrowserIsCompatible()){alert("Error - not a compatible browser!");return;}var st=window.location.search;if(st==""){alert("Error!");return;}st=st.substring(1);var ind=st.split("&");for(var i=0;i<ind.length;i++){var indsp=ind[i].split("=");if(indsp[0]=="cd")mCd=indsp[1];}if(mCd==null){alert("URL error");return;}loadxml=bs24();root="accounts/"+mCd+"/";bs25();}function bs1(inid){return document.getElementById(inid);}function bs2(inval){if(inval<0 && map.getZoom()<19)map.setZoom(map.getZoom()+1);if(inval>0 && map.getZoom()>2)map.setZoom(map.getZoom()-1);}function bs3(){if(document.body.clientWidth)return document.body.clientWidth;if(window.innerWidth)return window.innerWidth;return 0;}function bs4(){try{new GlocalSearch();isUK=true;}catch(e){isUK=false;}isUK=true;if(isUK==true){gLS = new GlocalSearch();gLS.setSearchCompleteCallback(this, bs10);}else{gcd = new GClientGeocoder();}var windowWidth=bs3();var marginLeft=(windowWidth/2)-(mapWidth/2);if(marginLeft<0)marginLeft=0;stores=new Array();sLs=new Array();sMks=new Array();var dcontain=bs1("blipstarcontainer");var dbanner=bs1("blipstarbanner");var dmap=bs1("blipstarmap");var dinfo=bs1("blipstarinfo");var dsearch=bs1("blipstarsearch");var dlogo=bs1("logo");if(isUK==true){var dajax=bs1("ajaxsearchresult");dajax.style.marginLeft=(mapWidth-185)+"px";}if(mapLogo==""){dlogo.src="images/defaultlogo.png";}else{dlogo.src=root+mapLogo;}dlogo.setAttribute("width",mapLogoWidth);dlogo.setAttribute("height",mapLogoHeight);dlogo.setAttribute("text-align",mapLogoPos);dcontain.style.height=mapHeight+"px";dcontain.style.width=mapWidth+"px";dcontain.style.marginLeft=marginLeft+"px";mapHeight=mapHeight-8-mapLogoHeight;mapWidth=mapWidth-2;dbanner.style.width=mapWidth+"px";dbanner.style.background="rgb("+mapBannerColour+")";dbanner.style.textAlign=mapLogoPos;dmap.style.width=((mapWidth*mapProp)-2)+"px";dmap.style.height=(mapHeight-2)+"px";dmap.style.marginLeft=(mapWidth*(1-mapProp))+"px";dinfo.style.width=(mapWidth*(1-mapProp))+"px";dinfo.style.height=mapHeight+"px";dinfo.display="none";dsearch.style.width=mapWidth+"px";dsearch.style.height=mapHeight+"px";dsearch.style.background="rgb("+mapBackgroundColour+")";map=new GMap2(bs1("blipstarmap"));if(mapSmallControl==true){map.addControl(new GSmallMapControl());}else{map.addControl(new GLargeMapControl());}if(mapScale==true)map.addControl(new GScaleControl());map.setCenter(new GLatLng(54,-2),5);map.enableDoubleClickZoom();map.enableContinuousZoom();pMk=new GMarker(new GLatLng(-90,-180),bs19());map.addOverlay(pMk);try{if(document.body.addEventListener){map.getContainer().addEventListener("DOMMouseScroll",function(oEvent){bs2(oEvent.detail);},false);}else{map.getContainer().onmousewheel = function() { bs2(-event.wheelDelta); return false;};}}catch(e){}bs1("searchbutton").value="Search";document.body.style.visibility="visible";}function bs5(inval){if(inval==false){bs1("blipstarinfo").style.display="block";bs1("blipstarsearch").style.display="none";}else{bs1("blipstarinfo").style.display="none";bs1("blipstarsearch").style.display="block";}}function bs6(inval){bs1("searchingtext").innerHTML=inval;}function bs7(){if(bs1("searchbutton").value!="Search")return;showAllStores=false;var tval=bs1("searchterm").value;if(tval.length<2)return;bs6(searchMessageVal);bs8(tval);}function bs8(inval){inval=inval.charAt(0).toUpperCase()+inval.substring(1);if(isUK==true){inval=inval.replace(/ /g,"");document.getElementById("ajaxsearchresult").style.display="inline";gLS.execute(inval+",UK");}else{gcd.getLatLng(inval,function(point){if(!point){bs6(searchMessageNoVal);}else{mapSearch=inval;map.setCenter(point,16);pMk.setPoint(point);bs11();bs15();bs6("");bs5(false);}});}}function bs9(){if(bs1("searchbutton").value!="Search"){alert("Please wait - still loading");return;}showAllStores=true;var oURL="accounts/cf/data.xml";loadxml.open("GET",oURL,false);loadxml.send(null);bs12();bs15(true);bs6("");bs5(false);}function bs10(){var ajx=document.getElementById("ajaxsearchresult");ajx.innerHTML="";if(gLS.results.length!=1){bs6(searchMessageNoVal);return;}var point=new GLatLng(gLS.results[0].lat,gLS.results[0].lng);if(point){map.setCenter(point,16);bs11();mapSearch=gLS.results[0].title;if(bs15()==true){bs6("");bs5(false);}else{bs6("Sorry - no relevant stockists were found");return;}}var node=gLS.results[0].html.cloneNode(true);ajx.appendChild(node);setTimeout("document.getElementById('ajaxsearchresult').style.display='none';",3000);}function bs11(){var oURL="getdata.jsp?lat="+map.getCenter().lat()+"&long="+map.getCenter().lng()+"&cd=cf&rds="+(360/24901*parseInt(bs1("radiusnum").value))+"&r="+Math.random();loadxml.open("GET",oURL,false);loadxml.send(null);bs12();}function bs12(){if(loadxml.readyState!=4)return;var ps=loadxml.responseXML.getElementsByTagName("ps");var curps;stores=[];for(var i=0;i<ps.length;i++){curps=bs13(ps[i],i);stores.push(curps);}if(initQuery!=""){bs1("searchterm").value=initQuery;bs7();}}function bs13(innode,inid){var pos=new GLatLng(innode.getAttribute("lat"),innode.getAttribute("long"));var sName=innode.getAttribute("name").toLowerCase();var marker;if(sName.indexOf("cosyfeet:")==-1){marker=new GMarker(pos);}else{markerWidth=48;markerHeight=48;marker=new GMarker(pos,bs14());}var html="<b>"+unescape(innode.getAttribute("name"))+"</b><br>"+unescape(innode.getAttribute("addr"))+"<br>"+unescape(innode.getAttribute("html"));var options="<div class='searchopt'><a href='javascript:bs20("+inid+");'>"+mapLinkVal+"</a>&nbsp;&nbsp;<a href='javascript:bs22("+inid+");'>"+directionsLinkVal+"</a>&nbsp;&nbsp;</div>";marker.html=html;marker.options=options;GEvent.addListener(marker, "click", function() {marker.openInfoWindowHtml(html+options);});return marker;}function bs14(){var icon = new GIcon();icon.image = root+mapIcon;icon.iconSize = new GSize(mapIconWidth,mapIconHeight);icon.iconAnchor = new GPoint(mapIconWidth/2,mapIconHeight/2);icon.infoWindowAnchor = new GPoint(mapIconWidth/2,mapIconHeight/2);return icon;}function bs15(inall){for(var i=0;i<sMks.length;i++){map.removeOverlay(sMks[i]);}for(var i=0;i<sLs.length;i++){map.removeOverlay(sLs[i]);}sLs=new Array();sMks=new Array();var sortDist=new Array();var dist;var ce;for(var i=0;i<stores.length;i++){dist=stores[i].getPoint().distanceFrom(map.getCenter());ce=new Array();ce.id=i;ce.dist=dist;sortDist.push(ce);}sortDist.sort(bs16);showMax=sortDist.length;var mbound=map.getBounds();var iwidth=(mapWidth*(1-mapProp)-28)+"px";var st=bs1("blipstarinfo");var stext="<div class='searchinfotitle'>"+mapSearch+"</div><div style='text-align:right;width:"+iwidth+"'><a href='javascript:bs21()'>"+searchTextVal+"</a></div>";if(st==null)return;var outStores=0;for(var i=0;i<showMax;i++){var cs=stores[sortDist[i].id];if(bs18(sortDist[i].dist)<=parseInt(bs1("radiusnum").value) || inall==true){if(inall==true || (bs23("b",6,cs.html)==true && bs23("d",1,cs.html)==true && bs23("p",5,cs.html))){outStores++;map.addOverlay(cs);sMks.push(cs);var clp=new Array();clp.push(cs.getPoint());clp.push(map.getCenter());if(mapLines==true && showAllStores==false){var cline=new GPolyline(clp);map.addOverlay(cline);sLs.push(cline);}mbound.extend(cs.getPoint());stext+="<div class='storebox' style='background:rgb("+mapBackgroundColour+");width:"+iwidth+"'>";stext+=cs.html+"<br><br><div>";if(inall!=true)stext+="<div class='searchdist'>"+bs17(sortDist[i].dist)+"</div>";stext+=cs.options+"<br>All our stockists are independent organisations and we leave it to them to stock appropriate Cosyfeet products for their customers. Please contact them to discuss your requirements prior to your visit.</div></div>";}}}if(outStores==0)return false;st.innerHTML=stext;if(inall!=true){var inside=map.getBoundsZoomLevel(mbound);while(inside>1){map.setCenter(map.getCenter(),inside);if(map.getBounds().containsBounds(mbound))inside=0;inside--;}}return true;}function bs16(a,b){return a.dist-b.dist;}function bs17(inval){var outval;inval=bs18(inval);if(inval<1){outval="<1";if(mapMiles==true){outval+=" "+mileVal;}else{outval+="km";}}else{outval=Math.round(inval);if(mapMiles==true){outval+=" "+milesVal;}else{outval+="km";}}return outval;}function bs18(inval){inval=inval/1000;if(mapMiles==true)inval=inval*0.621371192;return inval;}function bs19(){var icon = new GIcon();icon.image = "images/marker.png";icon.iconSize = new GSize(12,12);icon.iconAnchor = new GPoint(3,3);icon.infoWindowAnchor = new GPoint(3,3);return icon;}function bs20(inid){var cp=stores[inid].getPoint();if(mapBlowup==true){map.showMapBlowup(cp);}else{map.setCenter(cp,14);}}function bs21(){bs5(true);}function bs22(inid){dWin=window.open("http://maps.google.com?saddr="+mapSearch+"&daddr="+stores[inid].getPoint().toUrlValue(),"search");dWin.focus();}function bs23(instem,innum,inval){var found=false;var turnon=false;inval=inval.toLowerCase();for(var i=0;i<innum;i++){var te=bs1(instem+i);if(te.checked==true){if(inval.indexOf(te.value.toLowerCase())!=-1)found=true;turnon=true;}}if(turnon==false)found=true;return found;}function bs24(){var xp;try{xp = new ActiveXObject("Msxml2.XMLHTTP");} catch (e) {try{xp = new ActiveXObject("Microsoft.XMLHTTP");} catch (e) {xp = null;}}if(!xp && typeof XMLHttpRequest!='undefined'){try{xp = new XMLHttpRequest();} catch (e) {xp=null;}}if(xp==null)alert("Sorry - this browser does not support XML Http so cannot operate correctly");return xp;}function bs25(){if(loadingData==true){alert("Busy...please wait.");return;}loadxml.open("GET",root+"options.xml?r="+Math.random(),false);loadxml.send(null);bs26();}function bs26(){if(loadxml.readyState!=4)return;loadingData=false;var ps=loadxml.responseXML.getElementsByTagName("options");if(ps.length==1){var opt=ps[0];mapLang=opt.getAttribute("lang");if(opt.getAttribute("showlang")=="true"){mapShowLang=true;}else{mapShowLang=false;}mapWidth=parseInt(opt.getAttribute("width"));mapHeight=parseInt(opt.getAttribute("height"));if(opt.getAttribute("miles")=="true"){mapMiles=true;}else{mapMiles=false;}if(opt.getAttribute("lines")=="true"){mapLines=true;}else{mapLines=false;}if(opt.getAttribute("scale")=="true"){mapScale=true;}else{mapScale=false;}if(opt.getAttribute("smallcontrol")=="true"){mapSmallControl=true;}else{mapSmallControl=false;}if(opt.getAttribute("blowup")=="true"){mapBlowup=true;}else{mapBlowup=false;}mapLogo=opt.getAttribute("logo");mapLogoPos=opt.getAttribute("logopos");mapLogoWidth=parseInt(opt.getAttribute("logowidth"));mapLogoHeight=parseInt(opt.getAttribute("logoheight"));mapIcon=opt.getAttribute("icon");mapIconWidth=parseInt(opt.getAttribute("iconwidth"));mapIconHeight=parseInt(opt.getAttribute("iconheight"));mapBannerColour=opt.getAttribute("banner");mapBackgroundColour=opt.getAttribute("background");}bs4();}