function addMarkers() { mySelect = document.getElementById('selection'); Cottonport = [];Moreauville = [];Mansura = [];Bunkie = [];Effie = [];Marksville = [];Plaucheville = [];Simmesport = [];mySelect.options[mySelect.options.length] = new Option("Bunkie schools",'all=Bunkie'); mySelect.options[mySelect.options.length] = new Option("Cottonport schools",'all=Cottonport'); mySelect.options[mySelect.options.length] = new Option("Effie schools",'all=Effie'); mySelect.options[mySelect.options.length] = new Option("Mansura schools",'all=Mansura'); mySelect.options[mySelect.options.length] = new Option("Marksville schools",'all=Marksville'); mySelect.options[mySelect.options.length] = new Option("Moreauville schools",'all=Moreauville'); mySelect.options[mySelect.options.length] = new Option("Plaucheville schools",'all=Plaucheville'); mySelect.options[mySelect.options.length] = new Option("Simmesport schools",'all=Simmesport'); mySelect.options[mySelect.options.length] = new Option("---------------------------",''); Cottonport[Cottonport.length] = createMarker(new GPoint(-92.03430939,30.97435379),"
",iconGr); mySelect.options[mySelect.options.length] = new Option("Avoyelles Correctional Center",'Cottonport=' + Cottonport.length); Moreauville[Moreauville.length] = createMarker(new GPoint(-91.97058105,31.03447342),"",iconGr); mySelect.options[mySelect.options.length] = new Option("Avoyelles High School",'Moreauville=' + Moreauville.length); Mansura[Mansura.length] = createMarker(new GPoint(-92.05112457,31.08027267),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Avoyelles Public Charter School",'Mansura=' + Mansura.length); Bunkie[Bunkie.length] = createMarker(new GPoint(-92.18368530,30.94934464),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Bunkie Elementary School",'Bunkie=' + Bunkie.length); Bunkie[Bunkie.length] = createMarker(new GPoint(-92.17784882,30.95380592),"",iconGr); mySelect.options[mySelect.options.length] = new Option("Bunkie High School",'Bunkie=' + Bunkie.length); Bunkie[Bunkie.length] = createMarker(new GPoint(-92.17855072,30.95760727),"",iconBl); mySelect.options[mySelect.options.length] = new Option("Bunkie Middle School",'Bunkie=' + Bunkie.length); Cottonport[Cottonport.length] = createMarker(new GPoint(-92.05317688,30.98200417),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Cottonport Elementary School",'Cottonport=' + Cottonport.length); Effie[Effie.length] = createMarker(new GPoint(-92.15242767,31.21137047),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Lafargue Elementary School",'Effie=' + Effie.length); Bunkie[Bunkie.length] = createMarker(new GPoint(-92.16362762,31.31868172),"",iconGr); mySelect.options[mySelect.options.length] = new Option("Louisiana School For Agricultural Sciences",'Bunkie=' + Bunkie.length); Mansura[Mansura.length] = createMarker(new GPoint(-92.05364227,31.06166458),"",iconBl); mySelect.options[mySelect.options.length] = new Option("Mansura Middle School",'Mansura=' + Mansura.length); Marksville[Marksville.length] = createMarker(new GPoint(-92.07290649,31.12685394),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Marksville Elementary School",'Marksville=' + Marksville.length); Marksville[Marksville.length] = createMarker(new GPoint(-92.07351685,31.12969017),"",iconGr); mySelect.options[mySelect.options.length] = new Option("Marksville High School",'Marksville=' + Marksville.length); Marksville[Marksville.length] = createMarker(new GPoint(-92.17368317,31.12946510),"",iconBl); mySelect.options[mySelect.options.length] = new Option("Marksville Middle School",'Marksville=' + Marksville.length); Plaucheville[Plaucheville.length] = createMarker(new GPoint(-91.98029327,30.96516991),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Plaucheville Elementary School",'Plaucheville=' + Plaucheville.length); Simmesport[Simmesport.length] = createMarker(new GPoint(-91.80487823,30.98417091),"",iconRd); mySelect.options[mySelect.options.length] = new Option("Riverside Elementary School",'Simmesport=' + Simmesport.length); } // End addStateMarkers JavaScript Function // Takes an array of markers and centers/zooms map based on marker range function centerByArray(myArray, recenter, newMaxMin) { if (newMaxMin == true) reMaxMin(myArray); for (var i = 0; i < myArray.length; i++) { var markLng = myArray[i].getPoint().x; var markLat = myArray[i].getPoint().y; if (markLat > maxLat) maxLat = markLat; if (markLng > maxLng) maxLng = markLng; if (markLat < minLat) minLat = markLat; if (markLng < minLng) minLng = markLng; } if (recenter) reCenterMap(); } // Reinit max/mins function reMaxMin(myArray) { maxLng = myArray[0].getPoint().x; maxLat = myArray[0].getPoint().y; minLng = myArray[0].getPoint().x; minLat = myArray[0].getPoint().y; } // Recenter map based on global max/mins function reCenterMap() { var bounds = new GLatLngBounds(); bounds.extend(new GLatLng(minLat, minLng)); bounds.extend(new GLatLng(maxLat, maxLng)); var center_lat = (bounds.getNorthEast().lat() + bounds.getSouthWest().lat()) / 2.0; var center_lng = (bounds.getNorthEast().lng() + bounds.getSouthWest().lng()) / 2.0; var center = new GLatLng(center_lat, center_lng); var zoom = map.getBoundsZoomLevel(bounds); map.setCenter(center,zoom); //map.setCenter(center,10); /* var center = new GPoint( (maxLng + minLng)/2, (maxLat+minLat)/2 ); var delta = new GSize(maxLng - minLng, maxLat - minLat); var minZoom = map.spec.getLowestZoomLevel(center, delta, map.viewSize); if (minZoom < 4) minZoom = 4; // Lowest possible zoom is 4 map.centerAndZoom(center, minZoom); */ } // Fires when drop down list of schools changes function selectChange(selection) { var myVal = selection.options[selection.selectedIndex].value; map.closeInfoWindow(); // Add entire array based on variable type if (myVal.indexOf('all') != -1 && myVal != 'all') { var temp = myVal.split('='); var showArray = temp[1]; // If Array is > X amount of markers, then open in a new page if (eval(showArray).length > 20) // New window depends on whether or not we're on the search page if (location.href.indexOf('nearby_schools.php') == -1) window.open(location.href + '/map/' + showArray); else window.open('/search////' + showArray); map.removeOverlays(Bunkie); map.removeOverlays(Cottonport); map.removeOverlays(Effie); map.removeOverlays(Mansura); map.removeOverlays(Marksville); map.removeOverlays(Moreauville); map.removeOverlays(Plaucheville); map.removeOverlays(Simmesport); map.addOverlays(eval(showArray)); centerByArray(eval(showArray), true, true); // Center and zoom on set of markers } // Add individual markers if (myVal.indexOf('all') == -1 && myVal != 'all' && myVal.length) { var temp = myVal.split('='); var myArray = temp[0]; var myIndex = parseInt(temp[1]) - 1; document.getElementById('map').width = "750"; map.removeOverlay(eval(myArray)[myIndex]); map.addOverlay(eval(myArray)[myIndex]); GEvent.trigger(eval(myArray)[myIndex],'click'); } // Show all markers if (myVal == 'all') { cntMarker = 0; reMaxMin(Cottonport);map.removeOverlays(Bunkie); map.removeOverlays(Cottonport); map.removeOverlays(Effie); map.removeOverlays(Mansura); map.removeOverlays(Marksville); map.removeOverlays(Moreauville); map.removeOverlays(Plaucheville); map.removeOverlays(Simmesport); map.addOverlays(Bunkie); centerByArray(Bunkie, false, false); cntMarker += Bunkie.length; map.addOverlays(Cottonport); centerByArray(Cottonport, false, false); cntMarker += Cottonport.length; map.addOverlays(Effie); centerByArray(Effie, false, false); cntMarker += Effie.length; map.addOverlays(Mansura); centerByArray(Mansura, false, false); cntMarker += Mansura.length; map.addOverlays(Marksville); centerByArray(Marksville, false, false); cntMarker += Marksville.length; map.addOverlays(Moreauville); centerByArray(Moreauville, false, false); cntMarker += Moreauville.length; map.addOverlays(Plaucheville); centerByArray(Plaucheville, false, false); cntMarker += Plaucheville.length; map.addOverlays(Simmesport); centerByArray(Simmesport, false, false); cntMarker += Simmesport.length; centerByArray(Cottonport,true, false); if (cntMarker > 20) // New window depends on whether or not we're on the search page if (location.href.indexOf('schools-by-distance') == -1) window.open(location.href + '/map/all'); else window.open('/search////all'); } }