diff --git a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/widgets/DatasetViewerView.js b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/widgets/DatasetViewerView.js index ab8acd4c0a3ae8caa580f5bbccd858c542bbf682..7227d3e92b9ad10ecfd1b45928d2573d5995ccec 100644 --- a/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/widgets/DatasetViewerView.js +++ b/openbis_standard_technologies/dist/core-plugins/eln-lims/1/as/webapps/eln-lims/html/js/views/DataSetForm/widgets/DatasetViewerView.js @@ -49,10 +49,26 @@ function DataSetViewerView(dataSetViewerController, dataSetViewerModel) { var $filesContainer = $("<div>"); $containerContent.append($filesContainer); if (this._dataSetViewerModel.enableDeepUnfolding) { - var b = FormUtil.getButtonWithIcon("glyphicon-chevron-down", function() { - _this._expandAll(); - }, null, "Expand all"); - $filesContainer.append(b); + var expandCollapseAll = FormUtil.getButtonWithIcon("glyphicon-chevron-down", function() { + var icon = $($(this).children()[0]); + + if(icon.hasClass("glyphicon-chevron-down")) { + _this._expandAll(); + icon.removeClass("glyphicon-chevron-down"); + icon.addClass("glyphicon-chevron-up"); + } else if(icon.hasClass("glyphicon-chevron-up")) { + + $("#filestree").fancytree("getRootNode").visit(function(node) { + node.setExpanded(false); + }); + + icon.removeClass("glyphicon-chevron-up"); + icon.addClass("glyphicon-chevron-down"); + } + + }, null, "Expand/Collapse all"); + $filesContainer.append(expandCollapseAll); + var $treeContainer = $("<div>"); $filesContainer.append($treeContainer); $filesContainer = $treeContainer;