From be2c3dda41e8f43635070583bc330184e9bee836 Mon Sep 17 00:00:00 2001 From: MaysWind Date: Sun, 11 Nov 2018 15:28:04 +0800 Subject: [PATCH] modify file selection in task detail page --- src/scripts/controllers/task-detail.js | 28 ++++++++++++++++++++++++++ src/views/task-detail.html | 15 +++++++++++--- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/src/scripts/controllers/task-detail.js b/src/scripts/controllers/task-detail.js index ae40a4e..d2ed8e2 100644 --- a/src/scripts/controllers/task-detail.js +++ b/src/scripts/controllers/task-detail.js @@ -273,6 +273,10 @@ }; $scope.isAnyFileSelected = function () { + if (!$scope.task || !$scope.task.files) { + return false; + } + for (var i = 0; i < $scope.task.files.length; i++) { var file = $scope.task.files[i]; @@ -284,11 +288,35 @@ return false; }; + $scope.isAllFileSelected = function () { + if (!$scope.task || !$scope.task.files) { + return false; + } + + for (var i = 0; i < $scope.task.files.length; i++) { + var file = $scope.task.files[i]; + + if (!file.isDir && !file.selected) { + return false; + } + } + + return true; + }; + $scope.selectFiles = function (type) { if (!$scope.task || !$scope.task.files) { return; } + if (type === 'auto') { + if ($scope.isAllFileSelected()) { + type = 'none'; + } else { + type = 'all'; + } + } + for (var i = 0; i < $scope.task.files.length; i++) { var file = $scope.task.files[i]; diff --git a/src/views/task-detail.html b/src/views/task-detail.html index 7d3bfc7..1473578 100644 --- a/src/views/task-detail.html +++ b/src/views/task-detail.html @@ -199,9 +199,18 @@
- - - +
+ + + +