diff --git a/frontend-js/src/main/js/ServerConnector.js b/frontend-js/src/main/js/ServerConnector.js index 7c52cddad0c057772375f4ac115ca261b5520335..06a9f5847c584b9439bf61779f6dd962833bbc44 100644 --- a/frontend-js/src/main/js/ServerConnector.js +++ b/frontend-js/src/main/js/ServerConnector.js @@ -362,6 +362,8 @@ ServerConnector.sendClearRequest = function(overlayName) { } else { logger.warn("Clear function for " + overlayName + " doesn't exist"); } + } else if (overlayName==="search" || overlayName==="comment"){ + logger.warn("Send clear request for overlay that doesn't support it: "+overlayName); } else { throw new Error("[Clear function] Unknown overlay: ", overlayName); } diff --git a/frontend-js/src/main/js/map/CustomMap.js b/frontend-js/src/main/js/map/CustomMap.js index d9833aa81b2d358c0c7108bb060f4275de8336ca..a8db3e2ab3d9015a4a1a9687e83fad2a3f8055a2 100644 --- a/frontend-js/src/main/js/map/CustomMap.js +++ b/frontend-js/src/main/js/map/CustomMap.js @@ -196,7 +196,11 @@ CustomMap.prototype.clearOverlays = function() { for ( var overlayName in this.overlayCollections) { if (this.overlayCollections.hasOwnProperty(overlayName)) { var collection = this.overlayCollections[overlayName]; - this.clearOverlayCollection(collection); + if (collection.constructor.name==="OverlayCollection") { + this.clearOverlayCollection(collection); + }else { + collection.clear(); + } } } }; diff --git a/frontend-js/src/main/js/map/overlay/SearchDbOverlay.js b/frontend-js/src/main/js/map/overlay/SearchDbOverlay.js index b88672edecd6f5d63adc638a211197b584261609..0aa57ad4b17bd5835df720a87741fefce7598aa4 100644 --- a/frontend-js/src/main/js/map/overlay/SearchDbOverlay.js +++ b/frontend-js/src/main/js/map/overlay/SearchDbOverlay.js @@ -235,6 +235,8 @@ SearchDbOverlay.prototype.searchByEncodedQuery = function(originalQuery, perfect } }; - +SearchDbOverlay.prototype.clear = function() { + return this.searchByQuery(""); +}; module.exports = SearchDbOverlay;