2015-11-10 18:08:47 +01:00
|
|
|
function initCarto() {
|
|
|
|
OSM = L.tileLayer("http://{s}.tile.openstreetmap.fr/osmfr/{z}/{x}/{y}.png", {
|
2015-11-12 10:51:53 +01:00
|
|
|
attribution: '© <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>'
|
2015-11-10 18:08:47 +01:00
|
|
|
});
|
|
|
|
|
|
|
|
position = get_position();
|
|
|
|
|
|
|
|
var map = L.map("map", {
|
|
|
|
center: new L.LatLng(position.lat, position.lon),
|
|
|
|
zoom: 13,
|
|
|
|
layers: [OSM]
|
|
|
|
});
|
|
|
|
|
2015-11-12 17:34:12 +01:00
|
|
|
var freeDraw = new L.FreeDraw({
|
2015-11-10 18:08:47 +01:00
|
|
|
mode: L.FreeDraw.MODES.CREATE
|
|
|
|
});
|
|
|
|
|
|
|
|
map.addLayer(freeDraw);
|
2015-11-12 17:34:12 +01:00
|
|
|
|
|
|
|
$.each($.parseJSON($("#json_latlngs").val()), function(i, val){
|
|
|
|
freeDraw.createPolygon(val);
|
|
|
|
});
|
|
|
|
|
|
|
|
add_event_freeDraw(freeDraw);
|
|
|
|
}
|
|
|
|
|
|
|
|
function add_event_freeDraw(freeDraw){
|
|
|
|
freeDraw.on('markers', function (e){
|
|
|
|
$("#json_latlngs").val(JSON.stringify(e.latLngs));
|
|
|
|
});
|
|
|
|
|
|
|
|
$("#new").on('click', function (e){
|
|
|
|
freeDraw.setMode(L.FreeDraw.MODES.CREATE);
|
|
|
|
});
|
|
|
|
|
|
|
|
$("#edit").on('click', function (e){
|
|
|
|
freeDraw.setMode(L.FreeDraw.MODES.EDIT);
|
|
|
|
});
|
|
|
|
|
|
|
|
$("#delete").on('click', function (e){
|
|
|
|
freeDraw.setMode(L.FreeDraw.MODES.DELETE);
|
|
|
|
});
|
2015-11-10 18:08:47 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
function get_position() {
|
2015-08-10 11:05:06 +02:00
|
|
|
var position;
|
|
|
|
|
|
|
|
$.ajax({
|
2015-11-10 18:08:47 +01:00
|
|
|
url: '/users/dossiers/' + dossier_id + '/carte/position',
|
2015-08-10 11:05:06 +02:00
|
|
|
dataType: 'json',
|
|
|
|
async: false
|
|
|
|
}).done(function (data) {
|
|
|
|
position = data
|
|
|
|
});
|
|
|
|
|
|
|
|
return position;
|
|
|
|
}
|