From 1991a9e2c7381fed587a8d76d94ac30b437cd577 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gina=20H=C3=A4u=C3=9Fge?= Date: Mon, 4 Jul 2016 16:01:50 +0200 Subject: [PATCH] Fix hide empty folders option Now hides folders which contain no files at all --- src/octoprint/static/js/app/client/files.js | 4 ++++ src/octoprint/static/js/app/viewmodels/files.js | 2 +- src/octoprint/templates/sidebar/files_header.jinja2 | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/octoprint/static/js/app/client/files.js b/src/octoprint/static/js/app/client/files.js index 67cb6cbd..902a3c18 100644 --- a/src/octoprint/static/js/app/client/files.js +++ b/src/octoprint/static/js/app/client/files.js @@ -34,10 +34,14 @@ if (!element.hasOwnProperty("date")) element.date = undefined; if (element.type == "folder") { + element.weight = 0; _.each(element.children, function(e, i, l) { e.parent = element; recursiveCheck(e, i, l); + element.weight += e.weight; }); + } else { + element.weight = 1; } }; _.each(response.files, recursiveCheck); diff --git a/src/octoprint/static/js/app/viewmodels/files.js b/src/octoprint/static/js/app/viewmodels/files.js index 348fc365..18256d39 100644 --- a/src/octoprint/static/js/app/viewmodels/files.js +++ b/src/octoprint/static/js/app/viewmodels/files.js @@ -111,7 +111,7 @@ $(function() { return data["type"] && (data["type"] == "model" || data["type"] == "folder"); }, "emptyFolder": function(data) { - return data["type"] && (data["type"] != "folder" || data["children"].length != 0); + return data["type"] && (data["type"] != "folder" || data["weight"] > 0); } }, "name", diff --git a/src/octoprint/templates/sidebar/files_header.jinja2 b/src/octoprint/templates/sidebar/files_header.jinja2 index 88275082..efc592f7 100644 --- a/src/octoprint/templates/sidebar/files_header.jinja2 +++ b/src/octoprint/templates/sidebar/files_header.jinja2 @@ -23,7 +23,7 @@
  • {{ _('Only show files stored on SD') }}
  • {% endif %}
  • -
  • {{ _('Hide empty folders') }}
  • +
  • {{ _('Hide folders without files') }}
  • {{ _('Hide successfully printed files') }}