From 12e85568ddf4312dfb6eedac8333bbf6ae80685b Mon Sep 17 00:00:00 2001 From: Piotr Gawron <piotr.gawron@uni.lu> Date: Wed, 1 Aug 2018 14:16:18 +0200 Subject: [PATCH] hideTab is implemented in guiUtils --- .../src/main/js/gui/leftPanel/GuiUtils.js | 15 ++++++++++++++- .../src/main/js/gui/leftPanel/LeftPanel.js | 15 --------------- .../src/main/js/gui/leftPanel/SearchPanel.js | 19 ------------------- .../src/main/js/gui/leftPanel/SubmapPanel.js | 4 ++-- .../test/js/gui/leftPanel/SubmapPanel-test.js | 6 ++---- 5 files changed, 18 insertions(+), 41 deletions(-) diff --git a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js index ac94582e47..65deeac5ba 100644 --- a/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js +++ b/frontend-js/src/main/js/gui/leftPanel/GuiUtils.js @@ -784,7 +784,6 @@ GuiUtils.prototype.createTabMenuObject = function (params) { navLink.innerHTML = name; } navLink.onclick = function () { - console.log("SHOW", $(this)[0].href); $(this).tab('show'); }; navLi.appendChild(navLink); @@ -1021,4 +1020,18 @@ GuiUtils.prototype.addTab = function (abstractGuiElement, params) { abstractGuiElement._panels.push(new params.panelClass(options)); }; +/** + * + * @param {AbstractGuiElement} abstractGuiElement + * @param {Panel} panel + */ +GuiUtils.prototype.hideTab = function (abstractGuiElement, panel) { + var liElement = $("li:has(a[href='#" + panel.getElement().id + "'])", $(abstractGuiElement.getElement()))[0]; + if (liElement !== undefined) { + liElement.style.display = "none"; + } else { + logger.warn("Cannot find tab link for panel: " + panel.getPanelName()); + } +}; + module.exports = GuiUtils; diff --git a/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js b/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js index 434d40fc09..0814cf115c 100644 --- a/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js +++ b/frontend-js/src/main/js/gui/leftPanel/LeftPanel.js @@ -104,21 +104,6 @@ LeftPanel.prototype.getPanelsDefinition = function () { }]; }; -LeftPanel.prototype.hideTab = function (panel) { - var self = this; - var panelDefinitions = self.getPanelsDefinition(); - for (var i = 0; i < panelDefinitions.length; i++) { - if (panel instanceof panelDefinitions[i].panelClass) { - var liElement = $("li:has(a[href='#" + panel.getElement().id + "'])", $(self.getElement()))[0]; - if (liElement !== undefined) { - liElement.style.display = "none"; - } else { - logger.warn("Cannot find tab link for panel: " + panel.getPanelName()); - } - } - } -}; - LeftPanel.prototype.init = function () { var self = this; diff --git a/frontend-js/src/main/js/gui/leftPanel/SearchPanel.js b/frontend-js/src/main/js/gui/leftPanel/SearchPanel.js index 17b93ec24a..6b72929cf5 100644 --- a/frontend-js/src/main/js/gui/leftPanel/SearchPanel.js +++ b/frontend-js/src/main/js/gui/leftPanel/SearchPanel.js @@ -73,25 +73,6 @@ SearchPanel.prototype.getPanelsDefinition = function () { }]; }; -/** - * - * @param {AbstractDbPanel} panel - */ -SearchPanel.prototype.hideTab = function (panel) { - var self = this; - var panelDefinitions = self.getPanelsDefinition(); - for (var i = 0; i < panelDefinitions.length; i++) { - if (panel instanceof panelDefinitions[i].panelClass) { - var liElement = $("li:has(a[href='#search_panel_tab_" + i + "'])", $(self.getElement()))[0]; - if (liElement !== undefined) { - liElement.style.display = "none"; - } else { - logger.warn("Cannot find tab link for panel: " + panel.getPanelName()); - } - } - } -}; - /** * * @returns {Promise} diff --git a/frontend-js/src/main/js/gui/leftPanel/SubmapPanel.js b/frontend-js/src/main/js/gui/leftPanel/SubmapPanel.js index 908a50916e..2d08849eb5 100644 --- a/frontend-js/src/main/js/gui/leftPanel/SubmapPanel.js +++ b/frontend-js/src/main/js/gui/leftPanel/SubmapPanel.js @@ -2,7 +2,7 @@ var Promise = require("bluebird"); -var GuiConnector= require('../../GuiConnector'); +var GuiConnector = require('../../GuiConnector'); var Panel = require('../Panel'); var PanelControlElementType = require('../PanelControlElementType'); @@ -107,7 +107,7 @@ SubmapPanel.prototype.init = function () { div.appendChild(self.createTable(modelsByType[type], tableName)); } if (models.length <= 1) { - self.getParent().hideTab(self); + self.getGuiUtils().hideTab(self.getParent(), self); } return resolve(); }); diff --git a/frontend-js/src/test/js/gui/leftPanel/SubmapPanel-test.js b/frontend-js/src/test/js/gui/leftPanel/SubmapPanel-test.js index 8264a0fed2..c3a1b27487 100644 --- a/frontend-js/src/test/js/gui/leftPanel/SubmapPanel-test.js +++ b/frontend-js/src/test/js/gui/leftPanel/SubmapPanel-test.js @@ -43,12 +43,12 @@ describe('SubmapPanel', function () { getMap: function () { return map; }, - hideTab: function () { + getElement: function () { + return div; } } }); return panel.init().then(function () { - assert.equal(logger.getWarnings().length, 0); var buttons = div.getElementsByTagName("button"); assert.equal(buttons.length, 1); }).finally(function () { @@ -67,8 +67,6 @@ describe('SubmapPanel', function () { parent: { getMap: function () { return map; - }, - hideTab: function () { } } }); -- GitLab