Sha256: d6c0fdff8ffaa09fe4daee670ab1a9bb7ebd8593774c89e3be91e0fcf7b5a831
Contents?: true
Size: 1.66 KB
Versions: 14
Compression:
Stored size: 1.66 KB
Contents
var Setlatlng = new Class({ Implements: [Options, Events], options: { }, initialize: function(elem){ var latElem = elem; var lngElem = elem.getNext('.map_data_lng'); var setValues = function(lat, lng){ latElem.value = lat; lngElem.value = lng; }; var center = new google.maps.LatLng( latElem.value ? latElem.value : latElem.get('data-default-lat'), lngElem.value ? lngElem.value : latElem.get('data-default-lng') ); var map = new google.maps.Map(new Element('div.map_canvas').inject(latElem, 'before'), { zoom: 14, mapTypeId: google.maps.MapTypeId.ROADMAP, center: center, mapTypeControl: true, zoomControl: true, zoomControlOptions: { style: google.maps.ZoomControlStyle.SMALL }, streetViewControl: false, panControl: false, scaleControl: false, overviewMapControl: false }); var marker = new google.maps.Marker({ title: 'Location', draggable: true }); if (latElem.value && lngElem.value) { marker.position = new google.maps.LatLng(latElem.value, lngElem.value); marker.setMap(map); } else { if (navigator) { navigator.geolocation.getCurrentPosition(function(e){ map.setCenter(new google.maps.LatLng(e.coords.latitude, e.coords.longitude)); }); } google.maps.event.addListener(map, 'click', function(e){ marker.position = e.latLng; marker.setMap(map); setValues(marker.getPosition().lat(), marker.getPosition().lng()); google.maps.event.clearListeners(map, 'click'); }); } google.maps.event.addListener(marker, 'dragend', function(){ var mPos = marker.getPosition(); map.panTo(mPos); setValues(mPos.lat(), mPos.lng()); }); } });
Version data entries
14 entries across 14 versions & 1 rubygems