From 08088516109297c4a5bb787dba6a31f4338b01f0 Mon Sep 17 00:00:00 2001 From: Mark Wells Date: Wed, 5 Oct 2016 16:11:27 -0700 Subject: [PATCH] minor map tweaks --- httemplate/elements/mapselect.html | 28 +++++++++++++++++++--------- httemplate/search/tower-map.html | 12 ++++++++++++ 2 files changed, 31 insertions(+), 9 deletions(-) diff --git a/httemplate/elements/mapselect.html b/httemplate/elements/mapselect.html index 7d1447f98..95c96caa3 100644 --- a/httemplate/elements/mapselect.html +++ b/httemplate/elements/mapselect.html @@ -21,7 +21,7 @@ my %opt = @_; - +

@@ -32,14 +32,6 @@ $(function() { var container = $('#latlonpicker'); var map = gMapsLatLonPickerState['latlonpicker'].vars.map; - var lat = $('#latitude'); - var lon = $('#longitude'); - var alt = $('#altitude'); - $('#map_lat').val(lat.val()); - $('#map_lon').val(lon.val()); - $('#map_alt').val(alt.val()); - $(document).trigger('gllp_update_fields'); - $(document).on('location_changed', function(ev, obj) { lat.val($('#map_lat').val()); lon.val($('#map_lon').val()); @@ -68,5 +60,23 @@ $(function() { $(document).trigger('gllp_update_fields'); } }); + + // load initial values + var lat = $('#latitude'); + var lon = $('#longitude'); + var alt = $('#altitude'); + if (lat.val() && lon.val()) { + $('#map_lat').val(lat.val()); + $('#map_lon').val(lon.val()); + $('#map_alt').val(alt.val()); + $('#map_zoom').val(12); + } else { + // uh. North America? that's where Map::Splat works right now. + $('#map_lat').val(54.5259614); + $('#map_lon').val(-105.25511870000003); + $('#map_zoom').val(3); + } + $(document).trigger('gllp_update_fields'); + }); diff --git a/httemplate/search/tower-map.html b/httemplate/search/tower-map.html index 4460db8fe..559d83d08 100755 --- a/httemplate/search/tower-map.html +++ b/httemplate/search/tower-map.html @@ -77,6 +77,17 @@ var clickHandler = function(ev) { } }; +var dblclickHandler = function(ev) { + // do everything as for single click + clickHandler(ev); + // plus zoom to the feature + var feature = ev.feature; + if (feature.getGeometry().getType() == 'Point') { + map.setCenter(feature.getGeometry().get()); + map.setZoom(12); + } +}; + var zoomLayer = function(layer) { // takes a google.maps.Data object var bounds = new google.maps.LatLngBounds; @@ -97,6 +108,7 @@ var tower_data = new google.maps.Data; tower_data.addGeoJson(<% encode_json($tower_data) %>); tower_data.setStyle(markerStyle); tower_data.addListener('click', clickHandler); +tower_data.addListener('dblclick', dblclickHandler); var towernums = <% encode_json(\@towernums) %>; var tower_svc_data = {}; -- 2.11.0