Skip to content

Commit 3ef34d3

Browse files
committed
Set WFS field value to null if fylr field is empty
1 parent 581c1f4 commit 3ef34d3

1 file changed

Lines changed: 10 additions & 6 deletions

File tree

src/server/sendDataToGeoserver.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,11 @@ async function addTagsToChangeMap(object, fieldConfiguration, changeMap) {
283283
if (!tags) continue;
284284
const tag = tags.find(entry => entry._id === tagId);
285285
if (wfsFieldValue) {
286-
if (tag !== undefined) changeMap[wfsFieldName] = wfsFieldValue;
286+
if (tag !== undefined) {
287+
changeMap[wfsFieldName] = wfsFieldValue;
288+
} else {
289+
changeMap[wfsFieldName] = null;
290+
}
287291
} else {
288292
changeMap[wfsFieldName] = tag !== undefined;
289293
}
@@ -386,9 +390,9 @@ function getPoolNamesForDataTransfer(fieldConfiguration) {
386390
}
387391

388392
function addToChangeMap(wfsFieldName, fieldValue, changeMap) {
389-
if (!fieldValue) return;
390-
391-
if (typeof fieldValue === 'string') {
393+
if (!fieldValue) {
394+
if (changeMap[wfsFieldName] === undefined) changeMap[wfsFieldName] = null;
395+
} else if (typeof fieldValue === 'string') {
392396
setOrAdd(wfsFieldName, escapeSpecialCharacters(fieldValue), changeMap);
393397
} else if (typeof fieldValue === 'number') {
394398
setOrAdd(wfsFieldName, fieldValue, changeMap);
@@ -399,7 +403,7 @@ function addToChangeMap(wfsFieldName, fieldValue, changeMap) {
399403
}
400404

401405
function setOrAdd(wfsFieldName, value, changeMap) {
402-
if (changeMap[wfsFieldName] !== undefined) {
406+
if (changeMap[wfsFieldName] !== undefined && changeMap[wfsFieldName] !== null) {
403407
changeMap[wfsFieldName] = changeMap[wfsFieldName] + ' ' + value;
404408
} else {
405409
changeMap[wfsFieldName] = value;
@@ -515,7 +519,7 @@ function getPropertiesXml(changeMap) {
515519
return Object.keys(changeMap).map(propertyName => {
516520
return '<wfs:Property>'
517521
+ '<wfs:Name>' + propertyName + '</wfs:Name>'
518-
+ '<wfs:Value>' + changeMap[propertyName] + '</wfs:Value>'
522+
+ (changeMap[propertyName] !== null ? ('<wfs:Value>' + changeMap[propertyName] + '</wfs:Value>') : '')
519523
+ '</wfs:Property>';
520524
}).join('');
521525
}

0 commit comments

Comments
 (0)