/*add marker cluster js first*/ (function(){var d=null;function e(a){return function(b){this[a]=b}}function h(a){return function(){return this[a]}}var j; function k(a,b,c){this.extend(k,google.maps.OverlayView);this.c=a;this.a=[];this.f=[];this.ca=[53,56,66,78,90];this.j=[];this.A=!1;c=c||{};this.g=c.gridSize||60;this.l=c.minimumClusterSize||2;this.J=c.maxZoom||d;this.j=c.styles||[];this.X=c.imagePath||this.Q;this.W=c.imageExtension||this.P;this.O=!0;if(c.zoomOnClick!=void 0)this.O=c.zoomOnClick;this.r=!1;if(c.averageCenter!=void 0)this.r=c.averageCenter;l(this);this.setMap(a);this.K=this.c.getZoom();var f=this;google.maps.event.addListener(this.c, "zoom_changed",function(){var a=f.c.getZoom();if(f.K!=a)f.K=a,f.m()});google.maps.event.addListener(this.c,"idle",function(){f.i()});b&&b.length&&this.C(b,!1)}j=k.prototype;j.Q="https://google-maps-utility-library-v3.googlecode.com/svn/trunk/markerclusterer/images/m";j.P="png";j.extend=function(a,b){return function(a){for(var b in a.prototype)this.prototype[b]=a.prototype[b];return this}.apply(a,[b])};j.onAdd=function(){if(!this.A)this.A=!0,n(this)};j.draw=function(){}; function l(a){if(!a.j.length)for(var b=0,c;c=a.ca[b];b++)a.j.push({url:a.X+(b+1)+"."+a.W,height:c,width:c})}j.S=function(){for(var a=this.o(),b=new google.maps.LatLngBounds,c=0,f;f=a[c];c++)b.extend(f.getPosition());this.c.fitBounds(b)};j.z=h("j");j.o=h("a");j.V=function(){return this.a.length};j.ba=e("J");j.I=h("J");j.G=function(a,b){for(var c=0,f=a.length,g=f;g!==0;)g=parseInt(g/10,10),c++;c=Math.min(c,b);return{text:f,index:c}};j.$=e("G");j.H=h("G"); j.C=function(a,b){for(var c=0,f;f=a[c];c++)q(this,f);b||this.i()};function q(a,b){b.s=!1;b.draggable&&google.maps.event.addListener(b,"dragend",function(){b.s=!1;a.L()});a.a.push(b)}j.q=function(a,b){q(this,a);b||this.i()};function r(a,b){var c=-1;if(a.a.indexOf)c=a.a.indexOf(b);else for(var f=0,g;g=a.a[f];f++)if(g==b){c=f;break}if(c==-1)return!1;b.setMap(d);a.a.splice(c,1);return!0}j.Y=function(a,b){var c=r(this,a);return!b&&c?(this.m(),this.i(),!0):!1}; j.Z=function(a,b){for(var c=!1,f=0,g;g=a[f];f++)g=r(this,g),c=c||g;if(!b&&c)return this.m(),this.i(),!0};j.U=function(){return this.f.length};j.getMap=h("c");j.setMap=e("c");j.w=h("g");j.aa=e("g"); j.v=function(a){var b=this.getProjection(),c=new google.maps.LatLng(a.getNorthEast().lat(),a.getNorthEast().lng()),f=new google.maps.LatLng(a.getSouthWest().lat(),a.getSouthWest().lng()),c=b.fromLatLngToDivPixel(c);c.x+=this.g;c.y-=this.g;f=b.fromLatLngToDivPixel(f);f.x-=this.g;f.y+=this.g;c=b.fromDivPixelToLatLng(c);b=b.fromDivPixelToLatLng(f);a.extend(c);a.extend(b);return a};j.R=function(){this.m(!0);this.a=[]}; j.m=function(a){for(var b=0,c;c=this.f[b];b++)c.remove();for(b=0;c=this.a[b];b++)c.s=!1,a&&c.setMap(d);this.f=[]};j.L=function(){var a=this.f.slice();this.f.length=0;this.m();this.i();window.setTimeout(function(){for(var b=0,c;c=a[b];b++)c.remove()},0)};j.i=function(){n(this)}; function n(a){if(a.A)for(var b=a.v(new google.maps.LatLngBounds(a.c.getBounds().getSouthWest(),a.c.getBounds().getNorthEast())),c=0,f;f=a.a[c];c++)if(!f.s&&b.contains(f.getPosition())){for(var g=a,u=4E4,o=d,v=0,m=void 0;m=g.f[v];v++){var i=m.getCenter();if(i){var p=f.getPosition();if(!i||!p)i=0;else var w=(p.lat()-i.lat())*Math.PI/180,x=(p.lng()-i.lng())*Math.PI/180,i=Math.sin(w/2)*Math.sin(w/2)+Math.cos(i.lat()*Math.PI/180)*Math.cos(p.lat()*Math.PI/180)*Math.sin(x/2)*Math.sin(x/2),i=6371*2*Math.atan2(Math.sqrt(i), Math.sqrt(1-i));i=this.l&&a.setMap(d); a=this.c.getZoom();if((b=this.k.I())&&a>b)for(a=0;b=this.a[a];a++)b.setMap(this.c);else if(this.a.length0&&a.e[0]0&&a.e[1]Find Schools Near You" +"" +"" +"
Find" +"
" +""; } } } //set google map function initialize_map() { create_json_script('jsonpMapCallback','map','Jacksonville','FL','city'); } //create json script function create_json_script(callback,action_type,condition1,condition2,show_type){ if(action_type=="list"){ contents_load_before=''; for(i=0;i" +"
    " +"
  • " +"
  • " +"
" +"
" +""; document.getElementById('detail_contents_list').innerHTML='
    '+contents_load_before+'
'; document.getElementById('detail_contents_list_page').innerHTML="prenextShowing 0 to 0 of 0"; newNode = document.createElement("div"); newNode.id="list_load"; newNode.innerHTML=""; document.getElementById('content_1').appendChild(newNode); }else if(action_type=="map"){ newNode = document.createElement("div"); newNode.id="map_load"; newNode.innerHTML=""; document.getElementById('content_0').appendChild(newNode); } var url='./widget_data.php'; if(callback){ url+='?callback='+callback; }else{ return false; } if(action_type){ url+='&action_type='+action_type; } if(condition1){ url+='&condition1='+escape(condition1); } if(condition2){ url+='&condition2='+escape(condition2); } if(show_type){ url+='&show_type='+show_type; } var script = document.createElement('script'); script.setAttribute('src', url); document.getElementById('data_'+action_type).innerHTML=""; document.getElementById('data_'+action_type).appendChild(script); } function jsonpMapCallback(result){ load_school_map(result); } function jsonpListCallback(result) { if(result[2].length>0){ public_list=result[0]; public_list_num=result[0].length; public_list_page= Math.ceil(public_list_num/size); public_list_add=public_list_page*size-public_list_num; private_list=result[1]; private_list_num=result[1].length; private_list_page= Math.ceil(private_list_num/size); private_list_add=private_list_page*size-private_list_num; all_list=result[2]; all_list_num=result[2].length; all_list_page= Math.ceil(all_list_num/size); all_list_add=all_list_page*size-all_list_num; contents=''; if(all_list_num < size){ for(i=0;isize){ next_page=2; num_to=size; }else{ next_page=0; num_to=all_list_num; } var search_address=document.getElementById('search_address').value; if(!search_address){ search_address='Jacksonville,FL'; } document.getElementById('content_1').removeChild(document.getElementById('list_load')); document.getElementById('content_head_list').innerHTML="

Schools in "+search_address+"

" +"
" +"
    " +"
  • " +"
  • " +"
" +"
" +"
"; document.getElementById('detail_contents_list').innerHTML='
    '+contents+'
'; if(next_page==0){ var next_class="class='next_false'"; }else{ var next_class="class='next_true'"; } document.getElementById('detail_contents_list_page').innerHTML="prenextShowing 1 to "+num_to+" of "+all_list_num+""; }else{ document.getElementById('content_1').removeChild(document.getElementById('list_load')); newNode = document.createElement("div"); newNode.id="list_nodata"; newNode.innerHTML="

No Data

"; document.getElementById('content_1').appendChild(newNode); } } function type_select(show_type,type){ var type_id=0; if(document.getElementById('type_public_'+show_type).checked){ type_id=type_id+1; } if(document.getElementById('type_private_'+show_type).checked){ type_id=type_id+2; } if(type==1){ if(type_id==0){ var public_checked=""; var private_checked=""; var data_type="all_list"; var data_num=all_list_num; var data_page=all_list_page; var data_add=all_list_add; var data=all_list; }else if(type_id==1){ var public_checked="checked='checked'"; var private_checked=""; var data_type="public_list"; var data_num=public_list_num; var data_page=public_list_page; var data_add=public_list_add; var data=public_list; }else if(type_id==2){ var public_checked=""; var private_checked="checked='checked'"; var data_type="private_list"; var data_num=private_list_num; var data_page=private_list_page; var data_add=private_list_add; var data=private_list; }else{ var public_checked="checked='checked'"; var private_checked="checked='checked'"; var data_type="all_list"; var data_num=all_list_num; var data_page=all_list_page; var data_add=all_list_add; var data=all_list; } var search_address=document.getElementById('search_address').value; if(!search_address){ search_address='Jacksonville,FL'; } document.getElementById('content_head_list').innerHTML="

Schools in "+search_address+"

" +"
" +"
    " +"
  • " +"
  • " +"
" +"
" +"
"; contents=''; if(data_num < size){ for(i=0;isize){ next_page=2; num_to=size; }else{ next_page=0; num_to=data_num; } document.getElementById('detail_contents_list').innerHTML='
    '+contents+'
'; if(next_page==0){ var next_class="class='next_false'"; }else{ var next_class="class='next_true'"; } document.getElementById('detail_contents_list_page').innerHTML="prenextShowing 1 to "+num_to+" of "+data_num+""; }else if(type==2){ if(type_id==0){ var public_checked=""; var private_checked=""; var data_type="all_search"; var data_num=all_search_num; var data_page=all_search_page; var data_add=all_search_add; var data=all_search; }else if(type_id==1){ var public_checked="checked='checked'"; var private_checked=""; var data_type="public_search"; var data_num=public_search_num; var data_page=public_search_page; var data_add=public_search_add; var data=public_search; }else if(type_id==2){ var public_checked=""; var private_checked="checked='checked'"; var data_type="private_search"; var data_num=private_search_num; var data_page=private_search_page; var data_add=private_search_add; var data=private_search; }else{ var public_checked="checked='checked'"; var private_checked="checked='checked'"; var data_type="all_search"; var data_num=all_search_num; var data_page=all_search_page; var data_add=all_search_add; var data=all_search; } var search_address=document.getElementById('search_address').value; document.getElementById('content_head_search').innerHTML="

Schools in "+search_address+"

" +"
" +"
    " +"
  • " +"
  • " +"
" +"
" +"
"; contents=''; if(data_num < size){ for(i=0;isize){ next_page=2; num_to=size; }else{ next_page=0; num_to=data_num; } document.getElementById('detail_contents_search').innerHTML='
    '+contents+'
'; if(next_page==0){ var next_class="class='next_false'"; }else{ var next_class="class='next_true'"; } document.getElementById('detail_contents_search_page').innerHTML="prenextShowing 1 to "+num_to+" of "+data_num+""; } } function to_page(page,show_type,other){ var contents=''; var data_type=other; var data_show=page*size; if(show_type==1){ var container='detail_contents_list'; if(other=='all_list'){ var data_num=all_list_num; var data_page=all_list_page; var data_add=all_list_add; var data=all_list; }else if(other=='public_list'){ var data_num=public_list_num; var data_page=public_list_page; var data_add=public_list_add; var data=public_list; }else if(other=='private_list'){ var data_num=private_list_num; var data_page=private_list_page; var data_add=private_list_add; var data=private_list; } data_from_key=(page-1)*size; if(page>data_page || page==0){ return false; }else if(page == data_page){ for(i=data_from_key;iprenextShowing "+data_from+" to "+data_to+" of "+data_num+""; document.getElementById(container).innerHTML="
    "+contents+"
"; }else if(show_type==2){ var container='detail_contents_search'; if(other=='all_search'){ var data_num=all_search_num; var data_page=all_search_page; var data_add=all_search_add; var data=all_search; }else if(other=='public_search'){ var data_num=public_search_num; var data_page=public_search_page; var data_add=public_search_add; var data=public_search; }else if(other=='private_search'){ var data_num=private_search_num; var data_page=private_search_page; var data_add=private_search_add; var data=private_search; } data_from_key=(page-1)*size; if(page>data_page || page==0){ return false; }else if(page == data_page){ for(i=data_from_key;iprenextShowing "+data_from+" to "+data_to+" of "+data_num+""; document.getElementById(container).innerHTML="
    "+contents+"
"; } } //school search function Array.prototype.contains = function(obj) { var i = this.length; while (i--) { if (this[i] === obj) { return true; } } return false; }; function Formatted_address(address) { var newAddress = address.replace(", USA", ""); var zipCodePattern = /(\d\d\d\d\d)-\d\d\d\d/; var matches = zipCodePattern.exec(newAddress); if (matches && matches.length > 1) { newAddress = newAddress.replace(zipCodePattern, matches[1]); } return newAddress; } function get_latlng(state_or_zipcode,type){ var geocoder = new google.maps.Geocoder(); if (geocoder && state_or_zipcode) { geocoder.geocode( { 'address': state_or_zipcode + ' US'}, function(results, status){ var numResults = 0; var GS_geocodeResults = new Array(); if (status == google.maps.GeocoderStatus.OK && results.length > 0){ numResults = results.length; for (var x = 0; x < numResults; x++) { var geocodeResult = new Array(); geocodeResult['lat'] = results[x].geometry.location.lat(); var lat=results[0].geometry.location.lat(); geocodeResult['lon'] = results[x].geometry.location.lng(); var lon=results[0].geometry.location.lng(); var formatted_address=Formatted_address(results[0].formatted_address); if(type=='search'){ document.getElementById('search_lng').value=lon; document.getElementById('search_lat').value=lat; document.getElementById('search_address').value=formatted_address; } for (var i = 0; i < results[x].address_components.length; i++){ if (results[x].address_components[i].types.contains('country')){ geocodeResult['country'] = results[x].address_components[i].short_name; } } if (!('lat' in geocodeResult && 'lon' in geocodeResult || geocodeResult['country'] != 'US')) { geocodeResult = null; } if (geocodeResult != null){ GS_geocodeResults.push(geocodeResult); } } } if (GS_geocodeResults.length == 0) { //alert("Location not found. Please enter a valid address."); return false; } else { if(type=='search'){ global_lat=lat; global_lon=lon; create_json_script('jsonpSearchCallback','search',lat,lon,'search'); } } }); } } function show_search_school(show_type){ var search_value=document.getElementById('school_search_input').value; global_search_value=search_value; if(search_value){ var geocoder = new google.maps.Geocoder(); if (geocoder && search_value) { geocoder.geocode( { 'address': search_value + ' US'}, function(results, status){ var numResults = 0; var GS_geocodeResults = new Array(); if (status == google.maps.GeocoderStatus.OK && results.length > 0){ numResults = results.length; for (var x = 0; x < numResults; x++) { var geocodeResult = new Array(); geocodeResult['lat'] = results[x].geometry.location.lat(); var lat=results[0].geometry.location.lat(); geocodeResult['lon'] = results[x].geometry.location.lng(); var lon=results[0].geometry.location.lng(); var formatted_address=Formatted_address(results[0].formatted_address); document.getElementById('search_lng').value=lon; document.getElementById('search_lat').value=lat; document.getElementById('search_address').value=formatted_address; for (var i = 0; i < results[x].address_components.length; i++){ if (results[x].address_components[i].types.contains('country')){ geocodeResult['country'] = results[x].address_components[i].short_name; } } if (!('lat' in geocodeResult && 'lon' in geocodeResult || geocodeResult['country'] != 'US')) { geocodeResult = null; } if (geocodeResult != null){ GS_geocodeResults.push(geocodeResult); } } } if (GS_geocodeResults.length == 0) { alert("Location not found. Please enter a valid address."); document.getElementById('school_search_input').focus(); return false; }else { global_lat=lat; global_lon=lon; var type_id=0; if(document.getElementById('type_public_search').checked){ type_id=type_id+1; } if(document.getElementById('type_private_search').checked){ type_id=type_id+2; } if(type_id==0){ var public_checked=""; var private_checked=""; }else if(type_id==1){ var public_checked="checked='checked'"; var private_checked=""; }else if(type_id==2){ var public_checked=""; var private_checked="checked='checked'"; }else{ var public_checked="checked='checked'"; var private_checked="checked='checked'"; } document.getElementById('content_2').innerHTML="" +"
" +"
" +"prenextShowing 0 to 0 of 0" +"
" +"" +"
"; var contents=''; for(i=0;i'; document.getElementById('detail_contents_search_page').innerHTML="prenextShowing 0 to 0 of 0"; newNode = document.createElement("div"); newNode.id="search_load"; newNode.innerHTML=""; document.getElementById('content_2').appendChild(newNode); create_json_script('jsonpSearchCallback','search',lat,lon,'search'); } }); } }else{ alert('Please input address or zipcode'); document.getElementById('school_search_input').focus(); return false; } } function jsonpSearchCallback(result) { if(result[2].length>0){ var type_id=0; if(document.getElementById('type_public_search').checked){ type_id=type_id+1; } if(document.getElementById('type_private_search').checked){ type_id=type_id+2; } public_search=result[0]; public_search_num=result[0].length; public_search_page= Math.ceil(public_search_num/size); public_search_add=public_search_page*size-public_search_num; private_search=result[1]; private_search_num=result[1].length; private_search_page= Math.ceil(private_search_num/size); private_search_add=private_search_page*size-private_search_num; all_search=result[2]; all_search_num=result[2].length; all_search_page= Math.ceil(all_search_num/size); all_search_add=all_search_page*size-all_search_num; if(type_id==0){ var public_checked=""; var private_checked=""; var data_type="all_search"; var data_num=all_search_num; var data_page=all_search_page; var data_add=all_search_add; var data=all_search; }else if(type_id==1){ var public_checked="checked='checked'"; var private_checked=""; var data_type="public_search"; var data_num=public_search_num; var data_page=public_search_page; var data_add=public_search_add; var data=public_search; }else if(type_id==2){ var public_checked=""; var private_checked="checked='checked'"; var data_type="private_search"; var data_num=private_search_num; var data_page=private_search_page; var data_add=private_search_add; var data=private_search; }else{ var public_checked="checked='checked'"; var private_checked="checked='checked'"; var data_type="all_search"; var data_num=all_search_num; var data_page=all_search_page; var data_add=all_search_add; var data=all_search; } var search_address_val=document.getElementById('search_address').value; document.getElementById('content_2').innerHTML="" +"
" +"
" +"prenextShowing 0 to 0 of 0" +"
" +"" +"
"; var contents=''; if(data_num < size){ for(i=0;isize){ next_page=2; num_to=size; }else{ next_page=0; num_to=data_num; } document.getElementById('detail_contents_search').innerHTML='
    '+contents+'
'; if(next_page==0){ var next_class="class='next_false'"; }else{ var next_class="class='next_true'"; } if(data){ document.getElementById('detail_contents_search_page').innerHTML="prenextShowing 1 to "+num_to+" of "+data_num+""; }else{ document.getElementById('detail_contents_search_page').innerHTML="prenextShowing 0 to 0 of 0"; } }else{ var type_id=0; if(document.getElementById('type_public_search').checked){ type_id=type_id+1; } if(document.getElementById('type_private_search').checked){ type_id=type_id+2; } if(type_id==0){ var public_checked=""; var private_checked=""; }else if(type_id==1){ var public_checked="checked='checked'"; var private_checked=""; }else if(type_id==2){ var public_checked=""; var private_checked="checked='checked'"; }else{ var public_checked="checked='checked'"; var private_checked="checked='checked'"; } document.getElementById('content_2').innerHTML="" +"
" +"
" +"prenextShowing 0 to 0 of 0" +"
" +"" +"
"; var contents=''; for(i=0;i'; document.getElementById('detail_contents_search_page').innerHTML="prenextShowing 0 to 0 of 0"; } } var Wmap=null; var Manager = new MapManager(); var default_zoom=1; function load_school_map(dtos){ var default_center = new google.maps.LatLng(0,180); var school_map_options={ zoom: default_zoom, center: default_center, mapTypeId: google.maps.MapTypeId.ROADMAP, mapTypeControl: true, panControl: false, zoomControl: true, scaleControl: true, streetViewControl: false } if(document.getElementById("wrap_map")){ if(!Wmap){ Wmap = new google.maps.Map(document.getElementById("wrap_map"), school_map_options); } if(dtos.length>0){ document.getElementById('content_0').removeChild(document.getElementById('map_load')); if(!Manager){ Manager = new MapManager(); } Manager.create_markers(dtos); Manager.show_by_type(['all']); Manager.center_on_group('all',null); if(global_search_value){ document.getElementById("show_map_in_address").innerText="Schools in "+document.getElementById('search_address').value; } }else{ document.getElementById('content_0').removeChild(document.getElementById('map_load')); newNode = document.createElement("div"); newNode.id="map_nodata"; newNode.innerHTML="

No Data

"; document.getElementById('content_0').appendChild(newNode); } } } function hide_data_box(id_f,id_c){ document.getElementById(id_f).removeChild(document.getElementById(id_c)); } function widget_map_type(){ widget_school_type=new Array(); if(document.getElementById('widget_map_elementary').checked==false){ widget_school_type.push('elementary'); } if(document.getElementById('widget_map_middle').checked==false){ widget_school_type.push('middle'); } if(document.getElementById('widget_map_high').checked==false){ widget_school_type.push('high'); } Manager.hide_by_type(widget_school_type); } function arrayBounds(ary) { var bounds = new google.maps.LatLngBounds(); if (ary && ary.length > 0) { for (var i = 0; i < 20; i++) { var marker = ary[i]; if (marker) { bounds.extend(marker.getPosition()); Wmap.fitBounds(bounds); } } } return bounds; }; function arrayAllBounds(ary) { var bounds = new google.maps.LatLngBounds(); if (ary && ary.length > 0) { for (var i = 0; i < ary.length; i++) { var marker = ary[i]; if (marker) { bounds.extend(marker.getPosition()); } } } return bounds; }; function MapManager(){ this.all=new Array(); this.elementary=new Array(); this.middle=new Array(); this.high=new Array(); this.others=new Array(); this.create_markers=function(marker_dto_array){ for(i=0;i 1)) { zoom = Wmap.getZoom(); } else if (zoom <= 0) { zoom = this.get_zoom(); } else if (this[group].length == 1) { zoom = default_zoom; } var center = bounds.getCenter(); this.pan_to_center_and_zoom(center, zoom); }; this.get_zoom = function () { zoom = Wmap.getZoom(); if (!zoom) { zoom = default_zoom; } return zoom; }; this.pan_to_center_and_zoom = function (center, zoom, callback) { if (typeof google === 'object' && typeof google.maps === 'object') { this.zoom(zoom); if (callback) { listener = new google.maps.event.addListener(Wmap, 'moveend', callback); listener2 = new google.maps.event.addListener(Wmap, 'moveend', function () { new google.maps.event.removeListener(listener); google.maps.event.removeListener(listener2); }) } Wmap.panTo(center); } else { Wmap.setCenter(center); Wmap.setZoom(zoom); } }; this.create_marker=function(id,lat,lng,label,school_type,school_type_other){ //create marker icon switch (school_type_other) { case 'Private': icon = new google.maps.MarkerImage("https://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=|0171AB|000000", new google.maps.Size(20, 34), new google.maps.Point(0, 0), new google.maps.Point(10, 34)); break; case 'Public': icon = new google.maps.MarkerImage("https://chart.apis.google.com/chart?chst=d_map_pin_letter&chld=|218B2F|000000", new google.maps.Size(20, 34), new google.maps.Point(0, 0), new google.maps.Point(10, 34)); break; } var marker = new google.maps.Marker({ position: new google.maps.LatLng(lat, lng), map: Wmap, icon: icon }); marker.set("id", id); marker.set("school_type", school_type); marker.infowindow = new google.maps.InfoWindow; marker.open = function () { Manager.close_all_infowindow(); marker.infowindow.setOptions({ maxWidth: 200 }); marker.infowindow.setContent(label); marker.infowindow.open(Wmap, marker); } marker.closeinfo = function () { marker.infowindow.close(); } marker.infoevent = function () { marker.open(); } google.maps.event.addListener(marker, 'click', marker.infoevent); this.all.push(marker); if ( (school_type && typeof school_type!== 'object' && school_type=='Elementary') || (school_type && typeof school_type === 'object' && school_type.constructor === Array && school_type.includes('Elementary')) ) { this.elementary.push(marker); }else if( (school_type && typeof school_type!== 'object' && school_type=='Middle') || (school_type && typeof school_type === 'object' && school_type.constructor === Array && school_type.includes('Middle')) ){ this.middle.push(marker); }else if( (school_type && typeof school_type!== 'object' && school_type=='High') || (school_type && typeof school_type === 'object' && school_type.constructor === Array && school_type.includes('High')) ){ this.high.push(marker); }else{ this.others.push(marker); } return marker; } this.zoom = function (zoom) { Wmap.setCenter(Wmap.getCenter()); Wmap.setZoom(zoom); }; this.close_all_infowindow = function () { for (var i = 0; i < this['all'].length; i++) { var marker = this['all'][i]; if (typeof marker.infowindow == 'object') { marker.infowindow.close(); } } }; this.show_by_type=function(school_type){ var temp_markers = new Array(); var mcOptions = { gridSize: 20, maxZoom: 15, minimumClusterSize: 2, /************************* we can define styles to custom colors of cluster marker . **************************/ styles:[ { url: '/include/srn_lib/shared/images/maps/m44.png', height: 55, width: 56, opt_anchor: [28, 27], opt_textColor: '#000000' } ], calculator: function(markers, numStyles) { //if (markers.length <= 50) return {text: markers.length, index: 1}; //if (markers.length <= 5) return {text: markers.length, index: 0}; return {text: markers.length, index: 0}; } } if (typeof(markerCluster) == 'undefined') { markerCluster = new MarkerClusterer(Wmap, temp_markers, mcOptions); } markerCluster.clearMarkers(); for(var i=0;i0 && school_type.length<3){ var all_school_type=['elementary','middle','high']; for( var i = all_school_type.length-1;i >= 0; i--){ if (school_type.includes(all_school_type[i])) { all_school_type.splice(i, 1); } } for(var i=0;i