From 0e89372f9e9dd7a324bd974c696e4a1d94ed89a5 Mon Sep 17 00:00:00 2001
From: pkupczyk <piotr.kupczyk@id.ethz.ch>
Date: Mon, 5 Jun 2023 12:32:58 +0200
Subject: [PATCH] SSDM-13671 : remove empty nodes from ELN navigation menu -
 show a folder only if there are more than 50 nodes found on the server-side
 or if among the first 50 found nodes some have already passed the local
 filtering

---
 .../SideMenuWidgetBrowserController.js         | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/ui-eln-lims/src/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SideMenu/SideMenuWidgetBrowserController.js b/ui-eln-lims/src/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SideMenu/SideMenuWidgetBrowserController.js
index d5b98234a00..2ad618c47aa 100644
--- a/ui-eln-lims/src/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SideMenu/SideMenuWidgetBrowserController.js
+++ b/ui-eln-lims/src/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/SideMenu/SideMenuWidgetBrowserController.js
@@ -1854,7 +1854,7 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
         var loadSamplesPromise = this._loadNodesExperimentSamples({
             node: samplesFolderNode,
             offset: 0,
-            limit: 0,
+            limit: this.LOAD_LIMIT,
         })
 
         var dataSetsFolderNode = this._createExperimentDataSetsNode()
@@ -1871,10 +1871,11 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
             loadDataSetsPromise = this._loadNodesExperimentDataSets({
                 node: dataSetsFolderNode,
                 offset: 0,
-                limit: 0,
+                limit: this.LOAD_LIMIT,
             })
         } else {
             loadDataSetsPromise = Promise.resolve({
+                nodes: [],
                 totalCount: 0,
             })
         }
@@ -1885,11 +1886,11 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
             nodes: [],
         }
 
-        if (samplesResults.totalCount > 0) {
+        if (samplesResults.totalCount > this.LOAD_LIMIT || samplesResults.nodes.length > 0) {
             results.nodes.push(samplesFolderNode)
         }
 
-        if (dataSetsResults.totalCount > 0) {
+        if (dataSetsResults.totalCount > this.LOAD_LIMIT || dataSetsResults.nodes.length > 0) {
             results.nodes.push(dataSetsFolderNode)
         }
 
@@ -2054,7 +2055,7 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
         var loadChildrenPromise = this._loadNodesSampleChildren({
             node: childrenFolderNode,
             offset: 0,
-            limit: 0,
+            limit: this.LOAD_LIMIT,
         })
 
         var dataSetsFolderNode = this._createSampleDataSetsNode()
@@ -2071,10 +2072,11 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
             loadDataSetsPromise = this._loadNodesSampleDataSets({
                 node: dataSetsFolderNode,
                 offset: 0,
-                limit: 0,
+                limit: this.LOAD_LIMIT,
             })
         } else {
             loadDataSetsPromise = Promise.resolve({
+                nodes: [],
                 totalCount: 0,
             })
         }
@@ -2085,11 +2087,11 @@ class SideMenuWidgetBrowserController extends window.NgComponents.default.Browse
             nodes: [],
         }
 
-        if (childrenResults.totalCount > 0) {
+        if (childrenResults.totalCount > this.LOAD_LIMIT || childrenResults.nodes.length > 0) {
             results.nodes.push(childrenFolderNode)
         }
 
-        if (dataSetsResults.totalCount > 0) {
+        if (dataSetsResults.totalCount > this.LOAD_LIMIT || dataSetsResults.nodes.length > 0) {
             results.nodes.push(dataSetsFolderNode)
         }
 
-- 
GitLab