diff --git a/src/langs/zh_Hans.txt b/src/langs/zh_Hans.txt index 8beefa9..514e47c 100644 --- a/src/langs/zh_Hans.txt +++ b/src/langs/zh_Hans.txt @@ -146,6 +146,7 @@ Are you sure you want to remove rpc setting "{{rpcName}}"?=您是否要删除 RP Global Stat Refresh Interval=全局状态刷新间隔 Download Task Refresh Interval=下载任务刷新间隔 Action After Creating New Tasks=创建新任务后执行操作 +Removing Old Task After Restarting=重试任务后删除原任务 Navigate to Task List Page=转到任务列表页面 Navigate to Task Detail Page=转到任务详情页面 Supported Placeholder=支持的占位符 diff --git a/src/langs/zh_Hant.txt b/src/langs/zh_Hant.txt index 87ff446..80d16d3 100644 --- a/src/langs/zh_Hant.txt +++ b/src/langs/zh_Hant.txt @@ -146,6 +146,7 @@ Are you sure you want to remove rpc setting "{{rpcName}}"?=您是否要刪除 RP Global Stat Refresh Interval=全局狀態刷新間隔 Download Task Refresh Interval=下載任務刷新間隔 Action After Creating New Tasks=創建新任務後執行操作 +Removing Old Task After Restarting=重試任務後刪除原任務 Navigate to Task List Page=轉到任務列表頁面 Navigate to Task Detail Page=轉到任務詳情頁面 Supported Placeholder=支持的佔位符 diff --git a/src/scripts/config/constants.js b/src/scripts/config/constants.js index 0eaa0ea..d169c51 100644 --- a/src/scripts/config/constants.js +++ b/src/scripts/config/constants.js @@ -31,6 +31,7 @@ extendRpcServers: [], globalStatRefreshInterval: 1000, downloadTaskRefreshInterval: 1000, - afterCreatingNewTask: 'task-list' + afterCreatingNewTask: 'task-list', + removeOldTaskAfterRestarting: false }); }()); diff --git a/src/scripts/config/defaultLanguage.js b/src/scripts/config/defaultLanguage.js index 92c2a96..85618d9 100644 --- a/src/scripts/config/defaultLanguage.js +++ b/src/scripts/config/defaultLanguage.js @@ -150,6 +150,7 @@ 'Global Stat Refresh Interval': 'Global Stat Refresh Interval', 'Download Task Refresh Interval': 'Download Task Refresh Interval', 'Action After Creating New Tasks': 'Action After Creating New Tasks', + 'Removing Old Task After Restarting': 'Removing Old Task After Restarting', 'Navigate to Task List Page': 'Navigate to Task List Page', 'Navigate to Task Detail Page': 'Navigate to Task Detail Page', 'Supported Placeholder': 'Supported Placeholder', diff --git a/src/scripts/controllers/settings-ariang.js b/src/scripts/controllers/settings-ariang.js index 6405b37..25aeac7 100644 --- a/src/scripts/controllers/settings-ariang.js +++ b/src/scripts/controllers/settings-ariang.js @@ -108,6 +108,10 @@ ariaNgSettingService.setAfterCreatingNewTask(value); }; + $scope.setRemoveOldTaskAfterRestarting = function (value) { + ariaNgSettingService.setRemoveOldTaskAfterRestarting(value); + }; + $scope.setDebugMode = function (value) { ariaNgSettingService.setDebugMode(value); }; diff --git a/src/scripts/services/aria2TaskService.js b/src/scripts/services/aria2TaskService.js index 03cfb93..21e05a3 100644 --- a/src/scripts/services/aria2TaskService.js +++ b/src/scripts/services/aria2TaskService.js @@ -1,7 +1,7 @@ (function () { 'use strict'; - angular.module('ariaNg').factory('aria2TaskService', ['$q', '$translate', 'bittorrentPeeridService', 'aria2Errors', 'aria2RpcService', 'ariaNgCommonService', 'ariaNgLogService', function ($q, $translate, bittorrentPeeridService, aria2Errors, aria2RpcService, ariaNgCommonService, ariaNgLogService) { + angular.module('ariaNg').factory('aria2TaskService', ['$q', '$translate', 'bittorrentPeeridService', 'aria2Errors', 'aria2RpcService', 'ariaNgCommonService', 'ariaNgSettingService', 'ariaNgLogService', function ($q, $translate, bittorrentPeeridService, aria2Errors, aria2RpcService, ariaNgCommonService, ariaNgSettingService, ariaNgLogService) { var getFileName = function (file) { if (!file) { ariaNgLogService.warn('[aria2TaskService.getFileName] file is null'); @@ -534,6 +534,18 @@ return; } + if (ariaNgSettingService.getRemoveOldTaskAfterRestarting()) { + aria2RpcService.removeDownloadResult({ + gid: gid, + silent: true, + callback: function (response) { + if (!response.success) { + ariaNgLogService.warn('[aria2TaskService.restartTask] removeDownloadResult response is not success'); + } + } + }); + } + deferred.resolve(response); callback(response); } diff --git a/src/scripts/services/ariaNgSettingService.js b/src/scripts/services/ariaNgSettingService.js index 77fbe68..1368412 100644 --- a/src/scripts/services/ariaNgSettingService.js +++ b/src/scripts/services/ariaNgSettingService.js @@ -265,6 +265,12 @@ setAfterCreatingNewTask: function (value) { setOption('afterCreatingNewTask', value); }, + getRemoveOldTaskAfterRestarting: function () { + return getOption('removeOldTaskAfterRestarting'); + }, + setRemoveOldTaskAfterRestarting: function (value) { + setOption('removeOldTaskAfterRestarting', value); + }, getBrowserNotification: function () { return getOption('browserNotification'); }, diff --git a/src/views/settings-ariang.html b/src/views/settings-ariang.html index 3a2826b..ffd4c23 100644 --- a/src/views/settings-ariang.html +++ b/src/views/settings-ariang.html @@ -127,6 +127,17 @@ +
+
+ Removing Old Task After Restarting +
+
+ +
+
* Changes to the settings take effect after refreshing page.