diff --git a/frontend-js/src/main/js/SessionData.js b/frontend-js/src/main/js/SessionData.js index 5d89ab83ea242d716b1f2b490139c722a0a215e2..6228b934e8763708eae84a4faf8511e95b0ecdde 100644 --- a/frontend-js/src/main/js/SessionData.js +++ b/frontend-js/src/main/js/SessionData.js @@ -88,7 +88,7 @@ SessionData.prototype.setSearchQuery = function (value) { * * @param {Object} param * @param {string} param.type - * @param {Object} param.query + * @param {string} param.query */ SessionData.prototype.setQuery = function (param) { if (param.type === "drug") { @@ -106,7 +106,7 @@ SessionData.prototype.setQuery = function (param) { /** * - * @returns {any} + * @returns {string} */ SessionData.prototype.getSearchQuery = function () { var key = this.getKey(SessionObjectType.SEARCH_QUERY); diff --git a/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js b/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js index 87e2ed6edbe562afce5043edc20501d2013e4335..0a4314e03ef67b32367298a5e233ec7577240b94 100644 --- a/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js +++ b/frontend-js/src/main/js/gui/leftPanel/AbstractDbPanel.js @@ -4,6 +4,7 @@ var Promise = require("bluebird"); +var AbstractDbOverlay = require('../../map/overlay/AbstractDbOverlay'); var GuiConnector = require('../../GuiConnector'); var Panel = require('../Panel'); var PanelControlElementType = require('../PanelControlElementType'); @@ -79,6 +80,11 @@ AbstractDbPanel.prototype._createEventHandlers = function () { searchInput.value = ""; }); + self.getOverlayDb().addListener("onSearch", function (data) { + if (data.arg.type === AbstractDbOverlay.QueryType.SEARCH_BY_COORDINATES) { + $(searchInput).val(""); + } + }); }; /** diff --git a/frontend-js/src/test/js/gui/leftPanel/GenericSearchPanel-test.js b/frontend-js/src/test/js/gui/leftPanel/GenericSearchPanel-test.js index af96b91184fa8c3bfbf0b63addeb10c82c426af0..34200db33ff6af90d16155a5885a8c3db1855862 100644 --- a/frontend-js/src/test/js/gui/leftPanel/GenericSearchPanel-test.js +++ b/frontend-js/src/test/js/gui/leftPanel/GenericSearchPanel-test.js @@ -15,9 +15,16 @@ var assert = chai.assert; var logger = require('../../logger'); describe('GenericSearchPanel', function () { - var createPanel = function () { - var map = helper.createCustomMap(); - map.getModel().setId(15781); + /**t + * + * @param {CustomMap} [map] + * @returns {GenericSearchPanel} + */ + var createPanel = function (map) { + if (map===undefined) { + map = helper.createCustomMap(); + map.getModel().setId(15781); + } helper.createSearchDbOverlay(map); return new GenericSearchPanel({ @@ -243,6 +250,23 @@ describe('GenericSearchPanel', function () { }); }); + it('clear after search by coordinates', function () { + var map = helper.createCustomMap(); + map.getModel().setId(15781); + var panel = createPanel(map); + + $("[name='searchInput']", panel.getElement()).val("some input"); + var searchParams = { + modelId: map.getModel().getId(), + coordinates: new Point(553.10, 479.18), + zoom: 4 + }; + + return panel.getOverlayDb().searchByCoordinates(searchParams).then(function () { + assert.equal("", $("[name='searchInput']", panel.getElement()).val()); + }); + }); + describe("getAutocomplete", function () { it("without initialization", function () { var panel = createPanel();