From 7f3f12a97393892ddab03cac4ef001d15abf0553 Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Thu, 15 Mar 2018 10:32:32 +0100 Subject: [PATCH] getting zoom method --- .../src/main/js/map/AbstractCustomMap.js | 6 +++++- .../src/main/js/plugin/MinervaPluginProxy.js | 7 +++++++ .../test/js/plugin/MinervaPluginProxy-test.js | 17 +++++++++++++++++ 3 files changed, 29 insertions(+), 1 deletion(-) diff --git a/frontend-js/src/main/js/map/AbstractCustomMap.js b/frontend-js/src/main/js/map/AbstractCustomMap.js index 348f6818ee..c5387bf2af 100644 --- a/frontend-js/src/main/js/map/AbstractCustomMap.js +++ b/frontend-js/src/main/js/map/AbstractCustomMap.js @@ -1081,11 +1081,15 @@ AbstractCustomMap.prototype.setZoom = function (zoom) { if (this.initialized) { return Promise.resolve(this.getGoogleMap().setZoom(zoom)); } else { - logger.warn("cannot center map that is not opened yet"); + logger.warn("cannot change zoom for map that is not opened yet"); return Promise.resolve(); } }; +AbstractCustomMap.prototype.getZoom = function () { + return this.getGoogleMap().getZoom() +}; + AbstractCustomMap.prototype.fitBounds = function (markers) { var self = this; var map = self.getGoogleMap(); diff --git a/frontend-js/src/main/js/plugin/MinervaPluginProxy.js b/frontend-js/src/main/js/plugin/MinervaPluginProxy.js index 672a159302..40eeb4fb94 100644 --- a/frontend-js/src/main/js/plugin/MinervaPluginProxy.js +++ b/frontend-js/src/main/js/plugin/MinervaPluginProxy.js @@ -423,6 +423,13 @@ function createProjectMap(options) { } return submap.setZoom(params.zoom); }, + getZoom: function (params) { + var submap = map.getSubmapById(params.modelId); + if (submap === null) { + throw new Error("Unknown modelId: " + params.modelId); + } + return submap.getZoom(); + }, openMap: function (params) { return map.openSubmap(params.id); } diff --git a/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js b/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js index 2e561621db..f6ff68f9fd 100644 --- a/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js +++ b/frontend-js/src/test/js/plugin/MinervaPluginProxy-test.js @@ -328,6 +328,23 @@ describe('MinervaPluginProxy', function () { }); }); + it("getZoom", function () { + var map, proxy; + return ServerConnector.getProject().then(function (project) { + map = helper.createCustomMap(project); + proxy = createProxy(map); + return proxy.project.map.setZoom({ + modelId: 15781, + zoom: 10 + }); + }).then(function () { + var zoom = proxy.project.map.getZoom({modelId: 15781}); + assert.equal(zoom, 10); + }).then(function () { + map.destroy(); + }); + }); + it("getReactionByParticipantId", function () { var ie = { modelId: 15781, -- GitLab