var _MAP=null; var _FAVOPTIONS=null; var REG_ICON="http://www.google.com/intl/en_ALL/mapfiles/marker.png"; var FAV_ICON="http://dogpark.klick.com/local/images/pushpin/fave.png"; var ICONS=[]; ICONS["Shadow"]="http://dogpark.klick.com/local/images/pushpin/shadow2.png"; ICONS['Un-fenced off-leash dog park']='http://dogpark.klick.com/local/images/pushpin/red.png'; ICONS['Pet friendly accommodations']='http://dogpark.klick.com/local/images/pushpin/purple.png'; ICONS['Veterinarian clinics']='http://dogpark.klick.com/local/images/pushpin/pink.png'; ICONS['On-leash dog park']='http://dogpark.klick.com/local/images/pushpin/green.png'; ICONS['Fenced off-leash dog park']='http://dogpark.klick.com/local/images/pushpin/blue.png'; ICONS['Restaurant/cafe']='http://dogpark.klick.com/local/images/pushpin/yellow.png'; var SEARCH=null; var DONE=false; function load() { if (GBrowserIsCompatible()) { var searchoptions = { // searchFormHint : "search...", suppressZoomToBounds : true, suppressInitialResultSelection : true, showOnLoad: false, onSearchCompleteCallback : function(searcher) { var dbresults=[]; var strToSearchFor=searcher.Db; var url="/facebook/search/.ssx?q="+escape(strToSearchFor)+"&s=95929ea3-ef39-4498-922f-766458c2cac8"; var res = getHTTP(url); var xml = GXml.parse(res); var results = xml.documentElement.getElementsByTagName("result"); if (results.length>0) { var prop=(results[0].getElementsByTagName("longtitude")[0].text ? "text" : "textContent"); for (var i = 0; !(i >= results.length); i++) { var r=results[i]; var iMadeIt=false; var p=new GLatLng(Number(r.getElementsByTagName("latitude")[0][prop]),Number(r.getElementsByTagName("longtitude")[0][prop])); var distance=(Math.round(p.distanceFrom(_MAP.Home)/100)/10); dbresults.push(createSearchResult( searcher, r.getElementsByTagName("id")[0][prop], r.getElementsByTagName("longtitude")[0][prop], r.getElementsByTagName("latitude")[0][prop], r.getElementsByTagName("name")[0][prop], r.getElementsByTagName("locationtype")[0][prop], r.getElementsByTagName("locationtypeid")[0][prop], r.getElementsByTagName("address")[0][prop], (r.getElementsByTagName("fav")[0][prop]+"")!="0", r.getElementsByTagName("hours")[0][prop], r.getElementsByTagName("descr")[0][prop], distance, iMadeIt)); //,hours,descr,IMadeThis } } insertSearchResults(dbresults,searcher.results); } }; var map = new GMap2(document.getElementById("map"), {googleBarOptions: searchoptions}); _MAP=map; var favIcon = new GIcon(G_DEFAULT_ICON); favIcon.image = FAV_ICON; var favOptions = { icon:favIcon }; _FAVOPTIONS=favOptions; var home=new GLatLng(45.5, -73.7); map.setCenter(home, 10); map.enableScrollWheelZoom(); map.setMapType(G_NORMAL_MAP); map.Home=home; map.Locations=[]; GEvent.addListener(map, "singlerightclick", function(point,src,overlay) { var p=_MAP.fromContainerPixelToLatLng(point); editForm(p.x,p.y); }); GEvent.addListener(map, "moveend", function() { updateLocations() }); var point=null; var marker=null; var cur_win=null; create_map_point(241,45.5064672064406, -73.7078762054443,"Parc Marcel-Laurin","Un-fenced off-leash dog park","1","2345 Boulevard Thimens","","Off-leash park",true,0==1, true); create_map_point(229,45.5204810207787, -73.6918258666992,"Parc Cousineau","Un-fenced off-leash dog park","1","Rue Poirier et Avenue O’Brien","","Off-leash park",true,0==1, true); create_map_point(745,45.5036700403817, -73.659725189209,"Baker Animal Hospital","Veterinarian clinics","3","8310 Mayrand St.","Mon - Fri 8am-7pm, Sat 10am-2pm, Sun Closed","Small animal hospital",true,0==1, true); create_map_point(242,45.5366557196803, -73.6848735809326,"Parc Marcelin-Wilson","On-leash dog park","4","Boulevard de l’Acadie et Boulevard Henri-Bourassa","","On-leash park",true,0==1, true); create_map_point(935,45.5360545129975, -73.683500289917,"asdf","Veterinarian clinics","3","fasdfafa","fdadf","sdfadf",true,0==1, true); create_map_point(247,45.5143165752721, -73.7421226501465,"Parc-nature du Bois-de-Saraguay","On-leash dog park","4","Boulevard Gouin Ouest et Avenue Joseph-Saucier","","On-leash park",true,0==1, true); create_map_point(222,45.5267349874682, -73.7336254119873,"Parc Beauséjour","On-leash dog park","4","Boulevard Gouin Ouest et Chemin du Golf","","On-leash park",true,0==1, true); create_map_point(375,45.4590921419713, -73.723304271698,"Centre Vétérinaire DMV","Veterinarian clinics","3","2300, 54ième Avenue","24/24, 7/7, 365 jours par année","Hôpital vétérinaire urgence et services spécialisé",true,0==1, true); create_map_point(237,45.5030384030041, -73.6331176757813,"Parc Kent","On-leash dog park","4","Avenue Van Horne et Avenue Decelles","","On-leash park",true,0==1, true); create_map_point(263,45.4358489109977, -73.7058699131012,"Parc Stoney Point","Un-fenced off-leash dog park","1","Lachine Boulevard St-Joseph et 45e Avenue","","Off-leash park",true,0==1, true); create_map_point(246,45.5082116052269, -73.7656831741333,"Parc-nature du Bois-de-Liesse","On-leash dog park","4","9432 Boulevard Gouin Ouest","","On-leash park",true,0==1, true); create_map_point(228,45.4715678784409, -73.6418724060059,"Parc de la Confédération","Un-fenced off-leash dog park","1","Avenue Fielding et Avenue West Hill","","Off-leash park",true,0==1, true); create_map_point(912,45.4386946136811, -73.7292909622192,"St Charles","Fenced off-leash dog park","5","Avenue St Charles, Dorval, Qc","7am to 10pm","About 1.5 acres, grassy with ramp to water ",true,0==1, true); create_map_point(257,45.4279133100879, -73.6814832687378,"Parc René-Lévesque","On-leash dog park","4","1 Chemin du Musée","","On-leash park",true,0==1, true); create_map_point(270,45.4575870414297, -73.6491358280182,"Parc William-Bowie","On-leash dog park","4","4951 Avenue Trenholme","","On-leash park",true,0==1, true); create_map_point(593,45.4713722609389, -73.6266589164734,"Le Doggie Bag Cafe","Restaurant/cafe","6","5976 Monkland, NDG","","At the corner of Hampton",true,0==1, true); create_map_point(265,45.4918858285028, -73.6054158210754,"Parc Summit","On-leash dog park","4","Summit Circle","","On-leash park",true,0==1, true); create_map_point(234,45.5331686314461, -73.6295127868652,"Parc Jarry","On-leash dog park","4","Rue Faillon et Rue Jarry","","On-leash park",true,0==1, true); create_map_point(268,45.4887193882945, -73.7936425209045,"Parc Westwood","Un-fenced off-leash dog park","1","Fin de la Blvd de Salaberry est de la Blvd Sources","","Off-leash park",true,0==1, true); create_map_point(728,45.4634266070652, -73.6308646202087,"Trenholme Park","Fenced off-leash dog park","5","6800 Sherbrooke West","","",true,0==1, true); create_map_point(729,45.4612594161718, -73.6318945884705,"Trenholme Park","Fenced off-leash dog park","5","6800 Sherbrooke West, Montreal, Quebec","","",true,0==1, true); create_map_point(243,45.5009930523927, -73.59290599823,"Parc du Mont-Royal","On-leash dog park","4","1260 Chemin Remembrance","","On-leash park",true,0==1, true); create_map_point(238,45.4838452797276, -73.6049652099609,"Parc King George","Un-fenced off-leash dog park","1","Chemin Cote St-Antoine et Avenue Murray","","Off-leash park",true,0==1, true); create_map_point(250,45.4721697741884, -73.6150074005127,"Parc Notre-Dame-de-Grace","Un-fenced off-leash dog park","1","Avenue Girouard et Rue Sherbrooke Ouest","","Off-leash park",true,0==1, true); create_map_point(906,45.4728318520864, -73.6140632629395,"NDG park","Fenced off-leash dog park","5","Giroud/Sherbrooke","","big dog run",true,0==1, true); create_map_point(251,45.4990980288972, -73.5846662521362,"Parc Percy Walters","Un-fenced off-leash dog park","1","Avenue Docteur-Penfield et Rue Redpath","","Off-leash park",true,0==1, true); create_map_point(543,45.5705383512351, -73.6537599563599,"parc a chien ahuntsic ","Fenced off-leash dog park","5","angle st-firmin et fleury est","toujours ouvert","grand parc pour chien sans laisse ",true,0==1, true); create_map_point(262,45.5705158196889, -73.6535131931305,"Parc du Sault-au-Recollet","Un-fenced off-leash dog park","1","Rue de St-Firmin et Rue Fleury Est","","Off-leash park",true,0==1, true); create_map_point(911,45.4541101055869, -73.7726783752441,"Surrey park","Un-fenced off-leash dog park","1","1945 Parkfield Ave, Dorval, QC H9P 1A1","7am to 10pm","About 2 acres, lots of trees and walking track",true,0==1, true); create_map_point(261,45.5056250635409, -73.5799992084503,"Parc Rutherford","Un-fenced off-leash dog park","1","Avenue Docteur-Penfield et Avenue des Pins Ouest","","Off-leash park",true,0==1, true); create_map_point(369,45.4983760984079, -73.5756540298462,"Loews Hotel Vogue","Pet friendly accommodations","2","1425 Rue de la Montagne","","Nice Montreal Hotel-Pets stay free & get treats!",true,0==1, true); create_map_point(226,45.4619968724237, -73.6113166809082,"Parc du Canal de Lachine","On-leash dog park","4","Rue St-Ambroise et Chemin de la Cote-Saint-Paul","","On-leash park",true,0==1, true); create_map_point(953,45.5247205644865, -73.5967683792114,"Le R?veil Du Ma?tre ","Restaurant/cafe","6","5377 Boulevard Saintt-Laurent","","Boutique sant? pour animaux",false,0==1, false); create_map_point(236,45.5145872236384, -73.586254119873,"Parc Jeanne Mance","On-leash dog park","4","Avenue du Parc et Avenue de Mont-Royal Ouest","","On-leash park",true,0==1, true); create_map_point(227,45.487997324748, -73.8174819946289,"Parc Centenaire","On-leash dog park","4","Chemin Mackle et Avenue Shalom","","On-leash park",true,0==1, true); create_map_point(804,45.4793920217783, -73.8088989257813,"fgd","Un-fenced off-leash dog park","1","gdfgdfgdfgfd","","asdfsdfsdf",false,0==1, false); create_map_point(232,45.574699021809, -73.6447048187256,"Parc des Hirondelles","On-leash dog park","4","Rue Sauvé Est et Avenue Larose","","On-leash park",true,0==1, true); create_map_point(1079,45.486703604412, -73.8208293914795,"Centenial Park","Fenced off-leash dog park","5","Lake ","","",true,0==1, true); create_map_point(510,45.553486897158, -73.7821197509766,"testing","Un-fenced off-leash dog park","1","testing","testing","testing",false,0==1, false); create_map_point(233,45.4537488532057, -73.606424331665,"Parc Ignace-Bourget","On-leash dog park","4","Avenue Newman et Avenue Irwin","","On-leash park",true,0==1, true); create_map_point(909,45.6207762225551, -73.7201607227325,"Parc Lausanne","Fenced off-leash dog park","5","Rue Lausanne","","",true,0==1, true); create_map_point(1074,45.5321822121904, -73.5904893279076,"Parc Sir Wilfrid Laurier","Fenced off-leash dog park","5","St-Grégoire coin Boyer","","Parc cloturé pour Chien Seulement",true,0==1, true); create_map_point(897,45.4764204798969, -73.5811471939087,"Parc Louis-Cyr","Fenced off-leash dog park","5","Corner St-Ferdinand et Ste-Emilie","","New, with water spigot, trees, grass and benches",true,0==1, true); create_map_point(774,45.523848627693, -73.5801601409912,"Brandy's Holistic Centre & Canine Café","Restaurant/cafe","6","469 Marie-Anne E.","Tues-Fri: 10am-6pm, Sat: 10am-5pm, Sun: 12pm-5pm","Holistic Pet Boutique, Canine Café",true,0==1, true); create_map_point(269,45.5320939033371, -73.587498664856,"Parc Wilfrid-Laurier","On-leash dog park","4","Rue de Mentana et Avenue Laurier Est","","On-leash park",true,0==1, true); create_map_point(773,45.5322367005626, -73.5873913764954,"Parc Wilfred-Laurier","Fenced off-leash dog park","5","St.Grégoire and Christophe-Colomb","","",true,0==1, true); create_map_point(253,45.5386095970081, -73.5936784744263,"Parc Père-Marquette","Un-fenced off-leash dog park","1","1555 Rue des Carrières","","Off-leash park",true,0==1, true); create_map_point(217,45.5166922220549, -73.5702037811279,"Carrée Saint-Louis","On-leash dog park","4","Carrée St-Louis et Rue St-Denis","","On-leash park",true,0==1, true); create_map_point(1363,45.538324034558, -73.5911464691162,"Parc du Père-Marquette","Fenced off-leash dog park","5","rue garnier","6am to 11pm","terrain de 25metres par 125metre cloturé",true,0==1, true); create_map_point(480,45.422311037651, -73.6286544799805,"Clinique vétérinaire Lasalle","Veterinarian clinics","3","7559 Broadway, Lasalle, QC H8P 1G7","Lun au vend de 9h à 20h et sam de 9h30 à 14h","Chats, chiens et animaux exotiques",true,0==1, true); //alert(G_ANCHOR_BOTTOM_RIGHT); map.addControl(new GMapTypeControl()); map.addControl(new GOverviewMapControl()); map.addControl(new GSmallMapControl()); //, new GControlPosition(G_ANCHOR_BOTTOM_LEFT, new GSize(10, 10))); //this is the OLD way of doing search - but we can position it top left, as per willer's request //map.addControl(new google.maps.LocalSearch(searchoptions), new GControlPosition(G_ANCHOR_TOP_LEFT, new GSize(10,10))); //this is the NEW way of doing search - but can't be positioned (that I can find) map.enableGoogleBar(); displayFaves(); try { document.forms["citySearchForm"].cityInput.focus(); }catch(e) { } } } function searchCallback(searcher) { var dbresults=[]; var strToSearchFor=searcher.Db; var url="/facebook/search/.ssx?q="+escape(strToSearchFor)+"&s=95929ea3-ef39-4498-922f-766458c2cac8"; var res = getHTTP(url); var xml = GXml.parse(res); var results = xml.documentElement.getElementsByTagName("result"); if (results.length>0) { var prop=(results[0].getElementsByTagName("longtitude")[0].text ? "text" : "textContent"); for (var i = 0; !(i >= results.length); i++) { var r=results[i]; var iMadeIt=false; var p=new GLatLng(Number(r.getElementsByTagName("latitude")[0][prop]),Number(r.getElementsByTagName("longtitude")[0][prop])); var distance=(Math.round(p.distanceFrom(_MAP.Home)/100)/10); dbresults.push(createSearchResult( searcher, r.getElementsByTagName("id")[0][prop], r.getElementsByTagName("longtitude")[0][prop], r.getElementsByTagName("latitude")[0][prop], r.getElementsByTagName("name")[0][prop], r.getElementsByTagName("locationtype")[0][prop], r.getElementsByTagName("locationtypeid")[0][prop], r.getElementsByTagName("address")[0][prop], (r.getElementsByTagName("fav")[0][prop]+"")!="0", r.getElementsByTagName("hours")[0][prop], r.getElementsByTagName("descr")[0][prop], distance, iMadeIt)); //,hours,descr,IMadeThis } } insertSearchResults(dbresults,searcher.results); } function create_map_point(id,x,y,name,type,typeid,add,hours,desc,ismine,fav,imadeit,personid) { var point =new GLatLng(x, y); point.ID =id; point.Name =name; point.Type =type; point.LocationTypeID =typeid point.Address =add; point.IsFavorite =fav; point.HoursOfOperation =hours; point.Description =desc; point.IMadeThis =imadeit; point.Icon =ICONS[type]; point.IsMine =ismine; var marker =(fav ? new GMarker(point,_FAVOPTIONS): new GMarker(point)); var icon=marker.getIcon(); icon.image =(fav ? FAV_ICON : ICONS[type]); icon.shadow =ICONS["Shadow"]; icon.iconSize.width =37; icon.iconSize.height =30 icon.shadowSize.width =37; icon.shadowSize.height =24; point.Marker =marker; _MAP.Locations.push(point); _MAP.addOverlay(marker); GEvent.addListener(marker, "click", function() { var p=this.getPoint(); this.openInfoWindowHtml(getLocationContent(p)); }); } function isPointAdded(id) { var rtn=false; for (var i=0;i!=_MAP.Locations.length && !rtn;i++) { rtn=(String(id)==String(_MAP.Locations[i].ID)) } return rtn; } function getLocationContent(p) { return getPointHTML(p.x,p.y,p.ID,p.Name,p.Type,p.Address,p.HoursOfOperation,(Math.round(p.distanceFrom(_MAP.Home)/100)/10),p.Description,p.IMadeThis,p.IsFavorite) } function editForm(x,y,point) { var frm=document.getElementById("NewParkForm"); var lat=document.getElementById("Latitude"); var lon=document.getElementById("Longtitude"); var f=document.getElementById("saveform"); f.reset(); if (point) { var p=null; var mypoint=new GPoint(x,y); for (var i=0;i!=_MAP.Locations.length;i++) { if (_MAP.Locations[i].x==x && _MAP.Locations[i].y==y) { mypoint=_MAP.Locations[i]; } } var name =document.getElementById("Name"); var addr =document.getElementById("Address"); var type =document.getElementById("LocationTypeID"); var id =document.getElementById("LocationID"); lat.value =mypoint.y; lon.value =mypoint.x; id.value =mypoint.ID; name.value=mypoint.Name; addr.value=mypoint.Address; }else { lat.value=y; lon.value=x; } frm.style.display="inline"; } function toggleFavorite(link,ID) { var p=null; for (var i=0;p==null && i!=_MAP.Locations.length;i++) { if (_MAP.Locations[i].ID==ID) { p=_MAP.Locations[i]; } } //do something to change the icon for P... var frame=document.getElementById("saveframe"); if (link==null || link.innerHTML.toLowerCase().indexOf("remove")>=0) { if (link!=null) { link.innerHTML="Add As Favorite" } p.Marker.setImage(p.Icon); p.IsFavorite=false; frame.src="/facebook/remove_favorite/"+escape(ID)+"?s=95929ea3-ef39-4498-922f-766458c2cac8"; }else { link.innerHTML="Remove From Favorites" p.Marker.setImage(FAV_ICON); p.IsFavorite=true; changeOldFavIcon(p) frame.src="/facebook/add_favorite/"+escape(ID)+"?s=95929ea3-ef39-4498-922f-766458c2cac8"; } displayFaves(); } function displayFaves() { var faveNum=1; for (var i=0;i!=_MAP.Locations.length;i++) { var loc=_MAP.Locations[i]; if (loc.IsFavorite) { var tr =document.getElementById("faveTr"+faveNum); var lbl =tr.cells[0]; var go =tr.cells[1]; var del =tr.cells[2]; var delfunc =null; var gofunc =null; eval("delfunc =function (){toggleFavorite(null,'"+loc.ID+"');}"); eval("gofunc =function (){showInfoWindow('"+loc.ID+"');}"); lbl.innerHTML =loc.Name; go.onclick =gofunc; del.onclick =delfunc; tr.style.display=""; faveNum++; } } while (faveNum!=4) { var tr=document.getElementById("faveTr"+faveNum); tr.style.display="none"; faveNum++; } } function showInfoWindow(id) { var p=null; for (var i=0;i!=_MAP.Locations.length;i++) { if (String(id)==_MAP.Locations[i].ID) { p=_MAP.Locations[i]; } } p.Marker.openInfoWindowHtml(getLocationContent(p)); } function changeOldFavIcon(newPoint) { var otherfavorites=[]; for (var i=0;i!=_MAP.Locations.length;i++) { if (_MAP.Locations[i].IsFavorite && !newPoint.equals(_MAP.Locations[i])) { otherfavorites.push(_MAP.Locations[i]); } } if (otherfavorites.length>=3) { var point=otherfavorites[otherfavorites.length-1]; //grab the furthest one away from the user's point of origin point.Marker.setImage(REG_ICON); point.IsFavorite=false; } } function form_submit(form) { if (!validate(form)) { return false; }else if (form.LocationID.value.length==0) { create_map_point(form.Latitude.value.replace(/\./gi,"_")+"/"+form.Longtitude.value.replace(/\./gi,"_"), form.Latitude.value, form.Longtitude.value, form.Name.value, form.LocationTypeID.options[form.LocationTypeID.selectedIndex].text, form.LocationTypeID.options[form.LocationTypeID.selectedIndex].value, form.Address.value, form.HoursOfOperation.value, form.Description.value, true, false, true) }return true; } function findOrCreatePoint(id,x,y,name,type,typeid,addr,fav) { var point=new GPoint(x,y); for (var i=0;i!=_MAP.Locations.length;i++) { if (_MAP.Locations[i].x==point.x && _MAP.Locations[i].y==point.y) { return _MAP.Locations[i]; } } point.x =x; point.y =y; point.ID =id; point.Name =name; point.Type =type; point.LocationTypeID =typeid point.Address =addr; point.IsFavorite =fav; _MAP.Locations.push(point); return point; } function validate(form) { var req=['Name','Address']; var nam=['Nom','Adresse']; nam=req; var erMsg=[ "The [fieldname] field is required, and cannot be left blank.", "The [fieldname] contains words that may be offensive to some people."]; var err=[]; for (var i=0;i!=req.length;i++) { var val=form.elements[req[i].replace(/\s/gi,'')].value; if (val.length==0) { err.push(erMsg[0].replace(/\[fieldname\]/gi,nam[i])); }else if (isBadWord(val)) { err.push(erMsg[1].replace(/\[fieldname\]/gi,nam[i])); } } if (err.length>0) { alert(err.join("\n")); } return err.length==0; } function validateAbuseForm(form) { if (form.AbuseTypeID.selectedIndex==0) { alert("The Type of abuse is required and cannot be left blank."); return false; }else if ( form.AbuseTypeID.options[form.AbuseTypeID.selectedIndex].value=="3" && form.NewLocationTypeID.selectedIndex==0) { alert("The New Location Type must be selected for an Abuse Type of Incorrect Type of Location."); return false; } } function isBadWord(s) { var bad=new Array("(",")",".cn",".com","=","script kiddie","£","??","º","»","÷","ã","afganastan","asshole","binladen","bitch","boris","browsing","bullshit","Ç","c**t","chick","cialis","cock","colors","cool","crook","cum","cunt","dead","design","dick","dirty","drunk","dyke","Ê","fag","failure","Fine","fine","fuck","fucker","gay","gimp","grave","hobble","homosexual","hot","HOT","html","http","Hussein","hussein","?","iraq","Iraq","jew","kiss","kool","loser","lover","matrix","Neo","neo","niger","nigger","Notify","Õ","Ø","online","prick","queer","rape","ROCK","rocks","rox","saddam","Saddam","sex","shit","site","sleep","stupid","suck","theif","Trinity","trinity","twat","vagina","Valentine","valentine's","valium","viagra","womanizer","www.","zzzz","slut","fake","Æ","¶",""); for (var i=0;i!=bad.length;i++) { if (bad[i].length>0 && s.indexOf(bad[i])>=0) { return true; } }return false; } function createSearchResult(searcher,id,x,y,name,type,typeid,addr,fav,hours,descr,distance,IMadeThis) { var r ={}; r.lat =y; r.lng =x; r.title =name; r.titleNoFormatting =name; r.streetAddress =addr; r.GsearchResultClass="GlocalSearch" r.html =document.getElementById("searchresulttoclone").cloneNode(true); r.html.innerHTML =getPointHTML(x,y,id,name,type,addr,hours,distance,descr,IMadeThis,fav); r.html.style.display="inline"; r.url =""; r.ddUrl =""; r.ddUrlToHere =""; r.ddUrlFromHere =""; r.staticMapUrl =""; r.homeUrl =""; return r; } function getPointHTML(x,y,id,name,type,addr,hours,distance,descr,IMadeThis,fav) { return ''+name+'
'+type+'
'+addr+(hours.length>0 ? '
Hours: '+hours : '')+'

'+descr+'

'+ '
'+(fav ? 'Remove From Favorites' : 'Add As Favorite')+'
'; } function insertSearchResults(dbresults,results) { if (dbresults.length>0) { var gresults=[]; while (results.length>0) //push all google's results to an array, { gresults.push(results.pop()); //while clearing the old one out } while (dbresults.length>0) //insert all Klick results { results.push(dbresults.pop()); } while (gresults.length>0) //then reappend google's results at { results.push(gresults.pop()); //the END of the array } } } function getHTTP(url) { var httpObj; var browser = navigator.appName; if(browser.indexOf("Microsoft") > -1) httpObj = new ActiveXObject("Microsoft.XMLHTTP"); else httpObj = new XMLHttpRequest(); httpObj.open("GET", url, false); httpObj.send(null); return httpObj.responseText; } function savePosition() { var center =_MAP.getCenter(); var zoom =_MAP.getZoom(); var type =_MAP.getCurrentMapType().getName(); var myframe =document.getElementById("saveframe"); var URL ="/facebook/saveoptions/?zoom="+zoom+"&x="+center.x+"&y="+center.y+"&type="+type+"&s=95929ea3-ef39-4498-922f-766458c2cac8"; if (navigator.userAgent.indexOf("Safari")==-1) { myframe.src =URL; }else { new Ajax.Updater('hiddenDiv', URL, {evalScripts: true}); } } function updateLocations() { var center =_MAP.getCenter(); var myframe =document.getElementById("saveframe"); var URL ="/facebook/update_locations/?Lng="+center.x+"&Lat="+center.y+"&s=95929ea3-ef39-4498-922f-766458c2cac8"; if (navigator.userAgent.indexOf("Safari")==-1) { myframe.src =URL; }else { new Ajax.Updater('hiddenDiv', URL, {evalScripts: true}); } } function reportAbuseForm(pointid) { var frm=document.getElementById("AbuseForm"); var f=document.getElementById("abuse"); f.reset(); if (pointid) { var desc =document.getElementById("Description"); var type =document.getElementById("AbuseTypeID"); var id =document.getElementById("AbuseLocationID"); id.value =pointid; frm.style.display="inline"; } } //