, mapTypeId: google.maps.MapTypeId.ROADMAP }; the_map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); } function deleteOverlays() { if (markersArray) { for (i in markersArray) { markersArray[i].setMap(null); } markersArray.length = 0; } } // MAIN jQuery(document).ready(function(){ var selected_cat = ""; var ajaxurl = 'http://cilac.test/wp-admin/admin-ajax.php'; jQuery('#dd_cat').bind('change', function() { deleteOverlays(); loadMap(); selected_cat = jQuery('#dd_cat option:selected').val(); // get ads var data = { action: 'query_geo_ads', cat: selected_cat }; jQuery.post(ajaxurl, data, function(r){ var ads = jQuery.parseJSON(r); if (ads.length) { process(ads); } else loadMap2(); }); // end get ads function process(ads) { //var bounds = new google.maps.LatLngBounds(); jQuery.each(ads, function(k, v){ var coord = new google.maps.LatLng(parseFloat(v.lat) + (Math.random()-.5)/150000, parseFloat(v.lng) + (Math.random()-.5)/150000); var mark = new google.maps.Marker({ position: coord, map: the_map, icon: "http://cilac.test/wp-content/themes/classipress/images/red-flag.png"}); // on click Marker google.maps.event.addListener(mark, 'click', function(){ var infoW = new google.maps.InfoWindow(); var data = { action: 'get_image_url', id: v.post_id }; jQuery.post(ajaxurl, data, function(img){ var nice_title = (v.post_title.length >= 75) ? v.post_title.substring(0, 75)+'...' : v.post_title; if (v.price == null) v.price = '0'; if (img) content = '
\
\ \ <\/div>\
\

'+nice_title+'<\/h3><\/a>\

\ Category: '+v.category+'\ <\/p>\ Price: '+currency+v.price+'\ <\/div>\

<\/div>\ <\/div>'; else content = '
\
\ \ <\/div>\
\

'+nice_title+'<\/h3><\/a>\

\ Catégorie: '+v.category+'\ <\/p>\ Ressource documentaire: '+currency+v.price+'\ <\/div>\

<\/div>\ <\/div>'; infoW.setContent(content); }); // ens ajax post infoW.open(the_map, this); }); // end onclick marker event handler markersArray.push(mark); //bounds.extend(coord); });// end each var cluster = new MarkerClusterer(the_map, markersArray, {maxZoom: 15, minimumClusterSize: 2}); //the_map.fitBounds(bounds); cluster.fitMapToMarkers(); if (markersArray.length == 1) { the_map.setZoom(13); google.maps.event.trigger(markersArray[0], 'click'); } }// end process // Total count jQuery.post(ajaxurl, {action: 'query_total'}, function(r){ jQuery('#total_count').fadeOut('fast').html("Nombre de fiches géolocalisées: "+r).fadeIn('fast'); }); }); // end change jQuery('#dd_cat').trigger('change'); });// end document ready