don't forget about created geometry when the editor form is invalid
This commit is contained in:
parent
4d837cfddd
commit
f2248a6c74
1 changed files with 22 additions and 12 deletions
|
@ -1027,23 +1027,33 @@ editor = {
|
||||||
var sidebarcontent = $('#sidebar').find('.content');
|
var sidebarcontent = $('#sidebar').find('.content');
|
||||||
|
|
||||||
var geometry_field = sidebarcontent.find('input[name=geometry]');
|
var geometry_field = sidebarcontent.find('input[name=geometry]');
|
||||||
var options;
|
|
||||||
if (geometry_field.length) {
|
if (geometry_field.length) {
|
||||||
var form = geometry_field.closest('form');
|
var form = geometry_field.closest('form');
|
||||||
if (editor._editing_layer !== null) {
|
var options, mapitem_type = form.attr('data-new');
|
||||||
options = editor._editing_layer.options;
|
var geometry_value = geometry_field.val();
|
||||||
editor._editing_layer.remove();
|
if (geometry_value) {
|
||||||
editor._editing_layer = L.geoJSON(JSON.parse(geometry_field.val()), {
|
if (editor._editing_layer !== null) {
|
||||||
style: function() { return options; },
|
options = editor._editing_layer.options;
|
||||||
pointToLayer: editor._point_to_layer,
|
editor._editing_layer.remove();
|
||||||
}).getLayers()[0].addTo(editor._geometries_layer);
|
} else if (mapitem_type) {
|
||||||
editor._editing_layer.enableEdit();
|
// creating a new geometry, already drawn but form was rejected
|
||||||
if (editor._editing_layer.editor._resizeLatLng !== undefined) {
|
options = editor._get_mapitem_type_style(mapitem_type);
|
||||||
editor._editing_layer.editor._resizeLatLng.__vertex._icon.style.display = 'none';
|
if (mapitem_type === 'area') {
|
||||||
|
options.fillOpacity = 0.5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (options) {
|
||||||
|
editor._editing_layer = L.geoJSON(JSON.parse(geometry_field.val()), {
|
||||||
|
style: function() { return options; },
|
||||||
|
pointToLayer: editor._point_to_layer,
|
||||||
|
}).getLayers()[0].addTo(editor._geometries_layer);
|
||||||
|
editor._editing_layer.enableEdit();
|
||||||
|
if (editor._editing_layer.editor._resizeLatLng !== undefined) {
|
||||||
|
editor._editing_layer.editor._resizeLatLng.__vertex._icon.style.display = 'none';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else if (form.is('[data-new]')) {
|
} else if (form.is('[data-new]')) {
|
||||||
// create new geometry
|
// create new geometry
|
||||||
var mapitem_type = form.attr('data-new');
|
|
||||||
options = editor._get_mapitem_type_style(mapitem_type);
|
options = editor._get_mapitem_type_style(mapitem_type);
|
||||||
if (mapitem_type === 'area') {
|
if (mapitem_type === 'area') {
|
||||||
options.fillOpacity = 0.5;
|
options.fillOpacity = 0.5;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue