forked from qwerty/tupali
94 lines
2.5 KiB
PHP
94 lines
2.5 KiB
PHP
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset=utf-8 />
|
|
<title>Display latitude longitude on marker movement</title>
|
|
|
|
<script src="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.3/leaflet.js"></script>
|
|
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/leaflet/0.7.3/leaflet.css" />
|
|
<style>
|
|
body { margin:0; padding:0; }
|
|
#map {width: 100%;height: 280px;}
|
|
</style>
|
|
</head>
|
|
<body>
|
|
|
|
|
|
|
|
<div id='map'></div>
|
|
<?php
|
|
if ($_REQUEST[lat] !='') {$lat=$_REQUEST[lat];}else {$lat= "-72";}
|
|
if ($_REQUEST[lon] !='') {$lon=$_REQUEST[lon];}else {$lon= "4";}
|
|
if ($_REQUEST[zoom] !='') {$zoom=$_REQUEST[zoom];}else {$zoom= "5";}
|
|
|
|
?>
|
|
<script>
|
|
var map = L.map('map')
|
|
.setView([<?php echo $lon ?>, <?php echo $lat ?>], <?php echo $zoom ?>);
|
|
L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png').addTo(map);
|
|
<?php
|
|
if(!isset($_REQUEST['exif'])) { ?>
|
|
function onLocationFound(e) {
|
|
var radius = e.accuracy / 2;
|
|
var marker = L.marker(e.latlng,{draggable: true}).addTo(map)
|
|
L.circle(e.latlng, radius).addTo(map);
|
|
var mapa = window.parent.document.getElementById('<?php echo $_REQUEST[id]?>');
|
|
|
|
marker.on('dragend', ondragend);
|
|
ondragend();
|
|
function ondragend() {
|
|
var m = marker.getLatLng();
|
|
var z = map.getZoom();
|
|
mapa.value= m.lng+' '+m.lat+' '+z;
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
map.on('locationfound', onLocationFound);
|
|
|
|
<?php } ?>
|
|
function onLocationError(e) {
|
|
//alert(e.message);
|
|
var marker = L.marker([<?php echo $lon ?>,<?php echo $lat ?>],{draggable: true}).addTo(map);
|
|
var mapa = window.parent.document.getElementById('<?php echo $_REQUEST[id]?>');
|
|
marker.on('dragend', ondragend);
|
|
ondragend();
|
|
function ondragend() {
|
|
var m = marker.getLatLng();
|
|
var z = map.getZoom();
|
|
mapa.value= m.lng+' '+m.lat+' '+z;
|
|
}
|
|
}
|
|
map.on('locationerror', onLocationError);
|
|
map.locate({setView: true, maxZoom: 16});
|
|
//var lat = window.parent.document.getElementById('lat');
|
|
//var lng = window.parent.document.getElementById('lon');
|
|
//var mapa = window.parent.document.getElementById('<?php echo $_REQUEST[id]?>');
|
|
|
|
//var marker = L.marker([<?php echo $lon ?>,<?php echo $lat ?>],{draggable: true}).addTo(map);
|
|
|
|
|
|
|
|
// every time the marker is dragged, update the coordinates container
|
|
//marker.on('dragend', ondragend);
|
|
|
|
// Set the initial marker coordinate on load.
|
|
//ondragend();
|
|
|
|
/*
|
|
function ondragend() {
|
|
var m = marker.getLatLng();
|
|
var z = map.getZoom();
|
|
|
|
// lat.value= m.lat;
|
|
// lng.value= m.lng;
|
|
mapa.value= m.lng+' '+m.lat+' '+z;
|
|
}*/
|
|
</script>
|
|
|
|
|
|
</body>
|
|
</html>
|