<script src="//maps.googleapis.com/maps/api/js?sensor=true&key={$settings.google_maps_api_key}"></script>
<script type="text/javascript">var enableDraggable = true;</script>
<div id="glm-locationMap" class="glm-map glmgrid-small-12 glmgrid-columns">(map loads here)</div>
- {/if}
+ {/if}
</div>
<div id="glm-member-detail-map-button" class="button map-button">view map</div>
<a class="glm-member-detail-link-to-top">Back to top</a>
</div>
</div>
-
+
{apply_filters('glm-member-db-front-members-detail-events', '', $member.id)}
-
+
{apply_filters('glm-member-db-front-members-detail-couponsBefore', '', $member.id)}
{if $settings.detail_show_coupons && $coupons}
<div id="glm-member-detail-coupons-toggle" class="glm-member-detail-content-toggle">Coupons</div>
</div>
{/if}
{apply_filters('glm-member-db-front-members-detail-couponsAfter', '', $member.id)}
-
+
{apply_filters('glm-member-db-front-members-detail-amenitiesBefore', '', $member.id)}
{if $member.amenities && $settings.detail_show_amenities}
<div id="glm-member-detail-amenities-toggle" class="glm-member-detail-content-toggle">Amenities & Services</div>
{/if}
{apply_filters('glm-member-db-front-members-detail-liveCamAfter', '', $member.id)}
-
+
{$customFields = apply_filters('get_glm_custom_fields','glm-member-db',$member.memberInfoId)}
{if !empty($customFields[0].field_data)}
<div id="glm-member-detail-hours-toggle" class="glm-member-detail-content-toggle">Hours</div>
<div id="glm-member-detail-hours-container" class="glm-member-detail-content-data">
<div id="glm-member-detail-hours" >
-
+
{foreach $customFields as $field}
{if $field.field_data}
<div class="glm-member-detail-custom-field">
<span class="glm-member-detail-custom-field-name small-12 medium-5 columns" >{$field.field_name}</span>
<span class="glm-member-detail-custom-field-data small-12 medium-7 columns">{$field.field_data}</span>
</div>
-
+
</div>
{/if}
{/foreach}
</div>
-
+
<div class="glm-member-detail-sub-data-links row">
<a class="glm-member-detail-content-toggle">Collapse</a>
<a class="glm-member-detail-link-to-top">Back to top</a>
</div>
</div>
{/if}
-
+
{apply_filters('glm-member-db-front-members-detail-imageGalleryBefore', '', $member.id)}
{if $settings.detail_show_imagegallery && $haveImageGallery}
<div id="glm-member-detail-images-toggle" class="glm-member-detail-content-toggle">Photos</div>
</div>
{/if}
{apply_filters('glm-member-db-front-members-detail-imageGalleryAfter', '', $member.id)}
-
+
{apply_filters('glm-member-db-front-members-detail-dataBottom','',$member.id)}
</div>
</div>
</div>
{apply_filters('glm-member-db-front-members-detail-pageBottom', '', $member.id)}
+ <div id="findingYourLocationDialog" title="Your present location">
+ <p>
+ We would like to lookup your present location so we can provide accurate directions.
+ </p><p>
+ Your browser may ask for your permission to determine your location
+ (possibly at the top of this page).
+ </p><p>
+ If you agree, we will use your current location as the starting point for
+ directions. If you don't agree, you may enter a starting location when the map is displayed.
+ </p>
+ </div>
+
<script type="text/javascript">
{apply_filters('glm-member-db-front-members-detail-jqueryScriptTop', '', $member.id)}
jQuery(document).ready(function($) {
+ // Dialog box to show when submitting checkout page
+ $( "#findingYourLocationDialog" ).dialog({
+ autoOpen: false,
+ width: 600
+ });
+ $( "#lookingUpYourLocationDialog" ).dialog({
+ autoOpen: false,
+ width: 600
+ });
+
+ var trackToConsole = true; // Send debug/progress messages to developers console (Firefox)
+ var trackPositionInterval = 60000; // Time interval for getting user's current geolocation - 1 Min
+ var highAccuracyPoisition = true; // Request high-accuracy user geolocation from user's device
+ var postionTimeout = 15000; // Maximum amount of time we'll wait for geolocation result - 15 Sec
+
+ // Process form for sending user to Google Maps for driving directions
+ $("#MemberDrivingDirectionsForm").submit(function(){
+
+ var stopGeolocation = false;
+ var myCurrentLocation = false;
+
+ // If we already have a location
+ if (myCurrentLocation) {
+ sendToGoogleMaps(myCurrentLocation);
+ } else {
+
+ // We don't yet have a location, so try to get it
+ if (navigator.geolocation) {
+
+ $( "#findingYourLocationDialog" ).dialog("open");
+
+ // Get the user's location
+ navigator.geolocation.getCurrentPosition(function(position) {
+
+ // Save their current location
+ myCurrentLocation = {
+ lat: position.coords.latitude,
+ lon: position.coords.longitude
+ };
+
+ $( "#findingYourLocationDialog" ).dialog("close");
+ sendToGoogleMaps(myCurrentLocation);
+
+ // If we can't get the location, then go without it
+ },
+ function(err) {
+ $( "#findingYourLocationDialog" ).dialog("close");
+ sendToGoogleMaps(false);
+ },
+ {
+ enableHighAccuracy: highAccuracyPoisition,
+ timeout: postionTimeout,
+ maximumAge: trackPositionInterval - 100 // Allows cached position resulting from other requests during interval
+ });
+
+ }
+
+ }
+
+ return false;
+
+ });
+
+ function sendToGoogleMaps(myLocation) {
+ var lat = plusifyMyValue(jQuery("#MemberLat").val());
+ var lon = plusifyMyValue(jQuery("#MemberLon").val());
+ var dest = '&destination=' + lat + '%2C+' + lon;
+
+ var origin = '';
+ if (myLocation) {
+ var myLat = plusifyMyValue(myLocation.lat);
+ var myLon = plusifyMyValue(myLocation.lon);
+ origin = '&origin=' + myLat + '%2C+' + myLon;
+ }
+
+ var url = "https://www.google.com/maps/dir/?api=1" + origin + dest;
+ window.open(url, '_blank');
+ }
+
+ function plusifyMyValue(v) {
+ if (v > 0) {
+ v = '+' + v;
+ }
+ return v;
+ }
+
// change the member detail photos grid structure depending
var images_container = $("#glm-member-detail-images-container");
// Check if Foundation exists first
$("#glm-member-detail-packages-container").slideToggle("fast", "swing", function() {});
$("#glm-member-detail-packages-toggle").toggleClass("selected");
}
-
+
if( $("#glm-member-detail-images-container").length > 0 && $("#glm-member-detail-description-toggle").length > 0){
$("#glm-member-detail-images-container").slideToggle("fast", "swing", function() {});
$("#glm-member-detail-images-toggle").toggleClass("selected");
}
-
+
}
// Open or close the appropriate section if a toggle is clicked
$(this).html(mapBtnTxt);
});
- {if $settings.selected_map_interface == 1}
-
+ {if $settings.selected_map_interface == 1}
+
/*
* Leaflet Map
* API reference: https://leafletjs.com/reference-1.3.2.html
{/if}
function initMap() {
-
+
var leafletMap = L.map('LeafletMapContainer').setView([memberLat, memberLon], {$settings.maps_default_zoom});
var leafletTileServer = '{$settings.leaflet_tile_server}/{$settings.leaflet_tile_server_key}/' + {literal}'{z}/{x}/{y}.png'{/literal};
var leafletMinZoom = 5;
delayIndicator: 500
});
leafletMap.addControl(loadingControl);
-
+
// Marker
var leafletMarker = L.marker([memberLat, memberLon]).addTo(leafletMap);
-
+
}
-
+
{/if}
- {if $settings.selected_map_interface == 2}
-
+ {if $settings.selected_map_interface == 2}
+
/*
* Google Maps
* API reference: https://developers.google.com/maps/documentation/javascript/reference
google.maps.event.addDomListener(window, 'load', initMap);
{/if}
-
+
{/if} {*detail_show_map*}
-
+
$(window).load(function(){
initMap();
});