From e9cd8d9c409feca6cbfa1ff0125a033fc33a604d Mon Sep 17 00:00:00 2001 From: =?utf8?q?St=C3=A9phane=20Jacob?= Date: Sun, 12 Jun 2011 14:47:52 +0200 Subject: [PATCH] Only displays names on map on demand. MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Signed-off-by: Stéphane Jacob --- Makefile | 5 +---- htdocs/javascript/.gitignore | 1 - htdocs/javascript/maps.js | 20 +++++++++++++------- modules/geoloc.php | 3 ++- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/Makefile b/Makefile index 90b2ec8..c2dc546 100644 --- a/Makefile +++ b/Makefile @@ -243,14 +243,11 @@ $(JSTREE_PATH): ## ## Maps auxiliary scripts ## -maps: htdocs/javascript/markerclusterer.js htdocs/javascript/markerwithlabel.js +maps: htdocs/javascript/markerclusterer.js htdocs/javascript/markerclusterer.js: wget http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerclusterer/1.0/src/markerclusterer_compiled.js -O htdocs/javascript/markerclusterer.js -htdocs/javascript/markerwithlabel.js: - wget http://google-maps-utility-library-v3.googlecode.com/svn/tags/markerwithlabel/1.1.4/src/markerwithlabel_packed.js -O htdocs/javascript/markerwithlabel.js - ## ## lists rpc ## diff --git a/htdocs/javascript/.gitignore b/htdocs/javascript/.gitignore index c3428fc..6c46558 100644 --- a/htdocs/javascript/.gitignore +++ b/htdocs/javascript/.gitignore @@ -9,4 +9,3 @@ # Google Maps auxiliary scripts /markerclusterer.js -/markerwithlabel.js diff --git a/htdocs/javascript/maps.js b/htdocs/javascript/maps.js index a2f1864..97235c2 100644 --- a/htdocs/javascript/maps.js +++ b/htdocs/javascript/maps.js @@ -23,10 +23,9 @@ function map_initialize() { - var latlng = new google.maps.LatLng(0, 0); var myOptions = { zoom: 1, - center: latlng, + center: new google.maps.LatLng(0, 0), mapTypeId: google.maps.MapTypeId.ROADMAP }; var map = new google.maps.Map($('#map_canvas').get(0), myOptions); @@ -35,6 +34,8 @@ function map_initialize() var data = jQuery.parseJSON(json_data); var dots = data.data; var count = dots.length; + var info_window = new google.maps.InfoWindow({}); + var parameters = ", '_blank', 'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1,width=840,height=600'"; var markers = []; for (var i = 0; i < count; ++i) { @@ -47,20 +48,25 @@ function map_initialize() var link_array = new Array(); for (var j = 0; j < hrpids.length; ++j) { - link_array[j] = '' + names[j] + ''; + link_array[j] = '' + names[j] + ''; } var link = link_array.join('
'); } else { - var link = '' + dots[i].name + ''; + var link = '' + dots[i].name + ''; } - var marker = new MarkerWithLabel({ + var marker = new google.maps.Marker({ 'position': latLng, - 'labelContent': link, - 'labelClass': 'marker_label' + 'map': map, + 'title': dots[i].name }); marker.bindTo('icon', new ColoredIcon(color)); marker.set('color', color); + marker.set('html', link); + google.maps.event.addListener(marker, 'click', function() { + info_window.setContent(this.html); + info_window.open(map, this); + }); markers.push(marker); } var mc = new MarkerClusterer(map, markers); diff --git a/modules/geoloc.php b/modules/geoloc.php index 4db76cd..5e58052 100644 --- a/modules/geoloc.php +++ b/modules/geoloc.php @@ -51,7 +51,8 @@ class GeolocModule extends PLModule $data = XDB::rawFetchAllAssoc('SELECT pa.latitude, pa.longitude, GROUP_CONCAT(DISTINCT p.hrpid SEPARATOR \',\') AS hrpid, GROUP_CONCAT(pd.promo SEPARATOR \',\') AS promo, - GROUP_CONCAT(DISTINCT CONCAT(pd.private_name, \' (\', pd.promo, \')\') SEPARATOR \',\') AS name + GROUP_CONCAT(DISTINCT pd.private_name, \' (\', pd.promo, \')\' SEPARATOR \', \') AS name, + GROUP_CONCAT(DISTINCT pa.pid SEPARATOR \',\') AS pid FROM profile_addresses AS pa INNER JOIN profiles AS p ON (pa.pid = p.pid) INNER JOIN profile_display AS pd ON (pd.pid = pa.pid) -- 2.1.4