summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Wells <mark@freeside.biz>2016-10-05 16:11:27 -0700
committerMark Wells <mark@freeside.biz>2016-10-05 16:11:27 -0700
commit08088516109297c4a5bb787dba6a31f4338b01f0 (patch)
tree5d03b533d2039201299eb3ca73c4450f574754d0
parent07a1441c0fbce0a6ec76c7821e440444b4aec4f8 (diff)
minor map tweaks37802
-rw-r--r--httemplate/elements/mapselect.html28
-rwxr-xr-xhttemplate/search/tower-map.html12
2 files changed, 31 insertions, 9 deletions
diff --git a/httemplate/elements/mapselect.html b/httemplate/elements/mapselect.html
index 7d1447f..95c96ca 100644
--- a/httemplate/elements/mapselect.html
+++ b/httemplate/elements/mapselect.html
@@ -21,7 +21,7 @@ my %opt = @_;
<input type="hidden" class="gllpLatitude" id="map_lat">
<input type="hidden" class="gllpLongitude" id="map_lon">
<input type="hidden" class="gllpElevation" id="map_alt">
- <input type="hidden" class="gllpZoom" id="map_zoom" value="12">
+ <input type="hidden" class="gllpZoom" id="map_zoom">
<div class="gllpMap"></div>
</fieldset>
<br/>
@@ -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');
+
});
</script>
diff --git a/httemplate/search/tower-map.html b/httemplate/search/tower-map.html
index 4460db8..559d83d 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 = {};