var gcd; var stores; var map; var pMk; var sLs; var sMks; var dWin; var mapProp = 0.6; var mapSearch = ""; var root; var mCd = "dm"; function bs3() { if (!GBrowserIsCompatible()) { alert("Error - not a compatible browser!"); return } loadxml = bs0(); root = "accounts/" + mCd + "/"; bs1() } function bs4(a) { return document.getElementById(a) } function bs5(a) { if (a < 0 && map.getZoom() < 19) { map.setZoom(map.getZoom() + 1) } if (a > 0 && map.getZoom() > 2) { map.setZoom(map.getZoom() - 1) } } function bs6() { if (document.body.clientWidth) { return document.body.clientWidth } if (window.innerWidth) { return window.innerWidth } return 0 } function bs7() { gcd = new GClientGeocoder(); var a = bs6(); var c = (a / 2) - (mapWidth / 2); if (c < 0) { c = 0 } stores = new Array(); sLs = new Array(); sMks = new Array(); var h = bs4("blipstarcontainer"); var i = bs4("blipstarbanner"); var j = bs4("blipstarmap"); var d = bs4("blipstarinfo"); var b = bs4("blipstarsearch"); var g = bs4("logo"); if (mapLogo == "") { g.src = "headerclear.jpg" } else { g.src = root + mapLogo } g.setAttribute("width", mapLogoWidth); g.setAttribute("height", mapLogoHeight); g.setAttribute("text-align", mapLogoPos); h.style.height = mapHeight + "px"; h.style.width = mapWidth + "px"; h.style.marginLeft = c + "px"; mapHeight = mapHeight - 8 - mapLogoHeight; mapWidth = mapWidth - 2; i.style.width = mapWidth + "px"; i.style.background = "rgb(" + mapBannerColour + ")"; i.style.textAlign = mapLogoPos; j.style.width = ((mapWidth * mapProp) - 2) + "px"; j.style.height = (mapHeight - 2) + "px"; j.style.marginLeft = (mapWidth * (1 - mapProp)) + "px"; d.style.width = (mapWidth * (1 - mapProp)) + "px"; d.style.height = mapHeight + "px"; d.display = "none"; b.style.width = mapWidth + "px"; b.style.height = mapHeight + "px"; b.style.background = "rgb(" + mapBackgroundColour + ")"; map = new GMap2(bs4("blipstarmap")); if (mapSmallControl == true) { map.addControl(new GSmallMapControl()) } else { map.addControl(new GLargeMapControl()) } if (mapScale == true) { map.addControl(new GScaleControl()) } map.setCenter(new GLatLng(49, -97), 2); map.enableDoubleClickZoom(); map.enableContinuousZoom(); pMk = new GMarker(new GLatLng(-90, -180), bs20()); map.addOverlay(pMk); try { if (document.body.addEventListener) { map.getContainer().addEventListener("DOMMouseScroll", function(e) { bs5(e.detail) }, false) } else { map.getContainer().onmousewheel = function() { bs5(-event.wheelDelta); return false } } } catch (f) { } bs13(); if (initQuery == "") { document.body.style.visibility = "visible" } } function bs8(a) { if (a == false) { bs4("blipstarinfo").style.display = "block"; bs4("blipstarsearch").style.display = "none" } else { bs4("blipstarinfo").style.display = "none"; bs4("blipstarsearch").style.display = "block" } } function bs9(a) { bs4("searchingtext").innerHTML = a } function bs10() { var a = bs4("searchterm").value; if (bs4("searchnum").value == "-1") { bs17(); bs8(false); bs9(""); return } if (a.length < 2) { return } bs9(searchMessageVal); bs11(a) } function bs11(a) { a = a.charAt(0).toUpperCase() + a.substring(1); gcd.getLatLng(a, function(b) { if (!b) { bs9(searchMessageNoVal) } else { mapSearch = a; map.setCenter(b, 16); pMk.setPoint(b); bs17(); bs9(""); bs8(false) } }) } function bs12() { bs17(); bs9(""); bs8(false) } function bs13() { loadxml.open("GET", root + "Data.aspx?r=" + Math.random(), true); loadxml.onreadystatechange = bs14; loadxml.send(null) } function bs14() { if (loadxml.readyState != 4) { return } var c = loadxml.responseXML.getElementsByTagName("ps"); var b; for (var a = 0; a < c.length; a++) { b = bs15(c[a], a); stores.push(b) } } function bs15(b, d) { var f = new GLatLng(b.getAttribute("lat"), b.getAttribute("long")); var a; if (mapIcon == "") { a = new GMarker(f) } else { a = new GMarker(f, bs16()) } var e = "<b>" + unescape(b.getAttribute("name")) + "</b><br>" + unescape(b.getAttribute("addr")) + "<br>" + unescape(b.getAttribute("html")); var c = "<div class='searchopt' id='searchopt'><a href='javascript:bs21(" + d + ");'>" + mapLinkVal + "</a>&nbsp;&nbsp;<a href='javascript:bs23(" + d + ");'>" + directionsLinkVal + "</a>&nbsp;&nbsp;</div>"; a.html = e; a.options = c; GEvent.addListener(a, "click", function() { a.openInfoWindowHtml(e + c) }); return a } function bs16() { var a = new GIcon(); a.image = root + mapIcon; a.iconSize = new GSize(mapIconWidth, mapIconHeight); a.iconAnchor = new GPoint(mapIconWidth / 2, mapIconHeight / 2); a.infoWindowAnchor = new GPoint(mapIconWidth / 2, mapIconHeight / 2); return a } function bs17() { for (var g = 0; g < sMks.length; g++) { map.removeOverlay(sMks[g]) } for (var g = 0; g < sLs.length; g++) { map.removeOverlay(sLs[g]) } sLs = new Array(); sMks = new Array(); if (initQuery == "") { mSN = parseInt(bs4("searchnum").value); if (mSN == "-1") { mSN = stores.length } } var h = new Array(); var k; var b; for (var g = 0; g < stores.length; g++) { k = stores[g].getPoint().distanceFrom(map.getCenter()); b = new Array(); b.id = g; b.dist = k; h.push(b) } h.sort(bs18); var c = mSN; if (c > h.length) { c = h.length } var l = map.getBounds(); var e = (mapWidth * (1 - mapProp) - 28) + "px"; var n = bs4("blipstarinfo"); var m = "<div class='searchinfotitle' id='searchinfotitle'>" + mapSearch + "</div><div style='text-align:right;width:" + e + "'><a href='javascript:bs22()'>" + searchTextVal + "</a></div>"; if (n == null) { return } for (var g = 0; g < c; g++) { var j = stores[h[g].id]; map.addOverlay(j); sMks.push(j); var a = new Array(); a.push(j.getPoint()); a.push(map.getCenter()); if (mapLines == true) { var f = new GPolyline(a); map.addOverlay(f); sLs.push(f) } l.extend(j.getPoint()); m += "<div class='storebox' style='background:rgb(" + mapBackgroundColour + ");width:" + e + "'>"; m += j.html + "<br><br><div>"; m += "<div class='searchdist'>" + bs19(h[g].dist) + "</div>"; m += j.options + "</div></div>" } n.innerHTML = m; var d = map.getBoundsZoomLevel(l); while (d > 1) { map.setCenter(map.getCenter(), d); if (map.getBounds().containsBounds(l)) { d = 0 } d-- } } function bs18(d, c) { return d.dist - c.dist } function bs19(b) { var a; b = b / 1000; if (mapMiles == true) { b = b * 0.621371192 } if (b < 1) { a = "<1"; if (mapMiles == true) { a += " " + mileVal } else { a += "km" } } else { a = Math.round(b); if (mapMiles == true) { a += " " + milesVal } else { a += "km" } } return a } function bs20() { var a = new GIcon(); a.image = "marker.png"; a.iconSize = new GSize(12, 12); a.iconAnchor = new GPoint(3, 3); a.infoWindowAnchor = new GPoint(3, 3); return a } function bs21(a) { var b = stores[a].getPoint(); if (mapBlowup == true) { map.showMapBlowup(b) } else { map.setCenter(b, 14) } } function bs22() { if (initQuery != "") { history.back() } else { bs8(true) } } function bs23(a) { dWin = window.open("http://maps.google.com?saddr=" + mapSearch + "&daddr=" + stores[a].getPoint().toUrlValue(), "search"); dWin.focus() };
