From 4541d2a8cbbf14fb049fd6518ae0389c6e690936 Mon Sep 17 00:00:00 2001 From: Steve Sutton Date: Thu, 23 Aug 2018 10:30:30 -0400 Subject: [PATCH] Update event view file for maps maps --- .../views/front/events/detail.html | 70 +++++++++++++++++++ 1 file changed, 70 insertions(+) diff --git a/glm-member-db-events/views/front/events/detail.html b/glm-member-db-events/views/front/events/detail.html index cc19890..d5d05c4 100644 --- a/glm-member-db-events/views/front/events/detail.html +++ b/glm-member-db-events/views/front/events/detail.html @@ -201,6 +201,76 @@ var view_select = $("#glm-event-view-select"); view_select.hide(); + + {if $settings.selected_map_interface == 1} + + /* + * Leaflet Map + * API reference: https://leafletjs.com/reference-1.3.2.html + */ + + // Get member location if available, otherwise use this site's default locatgion + var myLocation = false; + var eventLat = $("#event-lat").attr('rel'); + var eventLon = $("#event-lon").attr('rel'); + var mapType = "eventDetail-map"; + var mapOptions = { dragging: false, zoomControl: false }; + var attributionText = 'Map © OpenStreetMap Contrib, CC-BY-SA'; + + function initMap() { + + var leafletMap = L.map(mapType, mapOptions ).setView([eventLat, eventLon], {$settings.maps_default_zoom}); + var leafletTileServer = '{$settings.leaflet_tile_server}/{$settings.leaflet_tile_server_key}/' + {literal}'{z}/{x}/{y}.png'{/literal}; + var leafletMinZoom = 5; + var leafletMaxZoom = 18; + var geocoder; + + // Tile server + L.tileLayer(leafletTileServer, { + attribution: attributionText, + minZoom: leafletMinZoom, + maxZoom: leafletMaxZoom, + id: 'nothot' + }).addTo(leafletMap); + + var loadingControl = L.Control.loading({ + separate: true, + delayIndicator: 500 + }); + leafletMap.addControl(loadingControl); + + // Marker + var leafletMarker = L.marker([eventLat, eventLon]).addTo(leafletMap); + + } + + $(window).load(function(){ + initMap(); + }); + + jQuery('#map-dialog').dialog({ + height: 490, + width: 630, + modal: true, + autoOpen: false + }); + + var largeMapInit = false; + jQuery("#eventDetail-map").click(function(e){ + e.preventDefault(); + jQuery("#map-dialog").dialog('open'); + if (!largeMapInit) { + mapType = "map_canvas"; + mapOptions = {}; + attributionText = 'Map data © OpenStreetMap contributors, CC-BY-SA, Imagery © Gaslight Media'; + initMap(); + largeMapinit = true; + } + }); + + {/if} + + // Replace the phone separation character with whatever is set in the management {if $settings.phone_infix} //var processedPhone = $('.glm-event-detail-contact-phone .glm-field-value').text().trim().replace(/[^a-zA-Z0-9 ]/g, '{$settings.phone_infix}'); -- 2.17.1