From a9e47bcddaa7f6cfdf0adb20254d104c679faf4e Mon Sep 17 00:00:00 2001 From: MaysWind Date: Thu, 28 Mar 2019 00:41:10 +0800 Subject: [PATCH] add copy magnet link in task list page --- src/langs/zh_Hans.txt | 1 + src/langs/zh_Hant.txt | 1 + src/scripts/config/defaultLanguage.js | 1 + src/scripts/controllers/main.js | 30 ++++++++++++++++++++----- src/scripts/services/aria2RpcService.js | 1 + src/views/list.html | 8 ++++++- 6 files changed, 35 insertions(+), 7 deletions(-) diff --git a/src/langs/zh_Hans.txt b/src/langs/zh_Hans.txt index 1ea6aed..b4f43e2 100644 --- a/src/langs/zh_Hans.txt +++ b/src/langs/zh_Hans.txt @@ -25,6 +25,7 @@ Select None=全部不选 Select Invert=反向选择 Display Order=显示顺序 Copy Download Url=复制下载链接 +Copy Magnet Link=复制磁力链接 Help=帮助 Search=搜索 Default=默认 diff --git a/src/langs/zh_Hant.txt b/src/langs/zh_Hant.txt index 3d846ca..23a3735 100644 --- a/src/langs/zh_Hant.txt +++ b/src/langs/zh_Hant.txt @@ -25,6 +25,7 @@ Select None=全部不選 Select Invert=反向選擇 Display Order=顯示順序 Copy Download Url=複製下載連結 +Copy Magnet Link=複製磁力連結 Help=說明 Search=搜尋 Default=預設 diff --git a/src/scripts/config/defaultLanguage.js b/src/scripts/config/defaultLanguage.js index f208d7a..78a1b06 100644 --- a/src/scripts/config/defaultLanguage.js +++ b/src/scripts/config/defaultLanguage.js @@ -29,6 +29,7 @@ 'Select Invert': 'Select Invert', 'Display Order': 'Display Order', 'Copy Download Url': 'Copy Download Url', + 'Copy Magnet Link': 'Copy Magnet Link', 'Help': 'Help', 'Search': 'Search', 'Default': 'Default', diff --git a/src/scripts/controllers/main.js b/src/scripts/controllers/main.js index b9653b3..7b8869b 100644 --- a/src/scripts/controllers/main.js +++ b/src/scripts/controllers/main.js @@ -69,13 +69,23 @@ }; $scope.isSingleUrlTaskSelected = function () { - var selectedTask = $rootScope.taskContext.getSelectedTasks(); + var selectedTasks = $rootScope.taskContext.getSelectedTasks(); - if (selectedTask.length !== 1) { + if (selectedTasks.length !== 1) { return false; } - return !!selectedTask[0].singleUrl; + return !!selectedTasks[0].singleUrl; + }; + + $scope.isSingleBittorrentHasInfoHashTaskSelected = function () { + var selectedTasks = $rootScope.taskContext.getSelectedTasks(); + + if (selectedTasks.length !== 1) { + return false; + } + + return !!selectedTasks[0].bittorrent && !!selectedTasks[0].infoHash; }; $scope.isSpecifiedTaskSelected = function () { @@ -313,10 +323,18 @@ }; $scope.copySelectedOneTaskDownloadLink = function () { - var selectedTask = $rootScope.taskContext.getSelectedTasks(); + var selectedTasks = $rootScope.taskContext.getSelectedTasks(); - if (selectedTask.length === 1) { - clipboard.copyText(selectedTask[0].singleUrl); + if (selectedTasks.length === 1) { + clipboard.copyText(selectedTasks[0].singleUrl); + } + }; + + $scope.copySelectedOneTaskMagnetLink = function () { + var selectedTasks = $rootScope.taskContext.getSelectedTasks(); + + if (selectedTasks.length === 1) { + clipboard.copyText('magnet:?xt=urn:btih:' + selectedTasks[0].infoHash); } }; diff --git a/src/scripts/services/aria2RpcService.js b/src/scripts/services/aria2RpcService.js index b9763d5..183741f 100644 --- a/src/scripts/services/aria2RpcService.js +++ b/src/scripts/services/aria2RpcService.js @@ -276,6 +276,7 @@ requestParams.push('files'); requestParams.push('bittorrent'); + requestParams.push('infoHash'); return requestParams; }, diff --git a/src/views/list.html b/src/views/list.html index 7b53199..8f144b1 100644 --- a/src/views/list.html +++ b/src/views/list.html @@ -163,13 +163,19 @@ Select All -
  • +
  • Copy Download Url
  • +
  • + + + Copy Magnet Link + +