123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- (function($){
- Drupal.behaviors.locationmap = {
- attach: function(context, settings) {
- var target_point = new google.maps.LatLng(Drupal.settings.locationmap.lat, Drupal.settings.locationmap.lng);
- var mapOptions = {
- zoom: parseInt(Drupal.settings.locationmap.zoom),
- center: target_point,
- mapTypeId: eval(Drupal.settings.locationmap.type),
- mapTypeControl: true
- };
- var map = new google.maps.Map(document.getElementById("locationmap_map"), mapOptions);
- var markerOptions = {
- position: target_point,
- draggable: Drupal.settings.locationmap.admin,
- map: map
- };
- var marker = new google.maps.Marker(markerOptions);
- var infowindow = new google.maps.InfoWindow({
- content: Drupal.settings.locationmap.info
- });
- google.maps.event.addListener(marker, 'click', function() {
- infowindow.open(map, marker);
- });
- // Allow fine tuning of the marker position in admin mode.
- if (Drupal.settings.locationmap.admin) {
- google.maps.event.addListener(marker, 'dragend', function(event) {
- $('#edit-locationmap-lat').val(event.latLng.lat());
- $('#edit-locationmap-lng').val(event.latLng.lng());
- });
- google.maps.event.addListener(map, 'zoom_changed', function(event) {
- $('#edit-locationmap-zoom').val(map.getZoom());
- });
- }
- }
- };
- })(jQuery);
|