diff --git a/lib/Controller/Aria2Controller.php b/lib/Controller/Aria2Controller.php
index 5bf16a1..2aef8cd 100644
--- a/lib/Controller/Aria2Controller.php
+++ b/lib/Controller/Aria2Controller.php
@@ -28,7 +28,6 @@ class Aria2Controller extends Controller
private $rootFolder;
private $downloadDir;
private $urlGenerator;
-
public function __construct($appName, IRequest $request, $UserId, IL10N $IL10N, IRootFolder $rootFolder, Aria2 $aria2)
{
parent::__construct($appName, $request);
diff --git a/lib/Settings/Admin.php b/lib/Settings/Admin.php
index cd04afc..91baeb6 100644
--- a/lib/Settings/Admin.php
+++ b/lib/Settings/Admin.php
@@ -43,6 +43,7 @@ class Admin implements ISettings
];
$parameters = [
'settings' => $settings,
+ 'options' => Helper::getAdminOptions($settings),
];
return new TemplateResponse('ncdownloader', 'settings/Admin', $parameters, '');
}
diff --git a/lib/Settings/Personal.php b/lib/Settings/Personal.php
index 1ff13ed..9236c19 100644
--- a/lib/Settings/Personal.php
+++ b/lib/Settings/Personal.php
@@ -39,6 +39,7 @@ class Personal implements ISettings
*/
public function getForm()
{
+ $path = '/apps/ncdownloader/personal/save';
$parameters = [
"settings" => [
"ncd_downloader_dir" => Helper::getDownloadDir(),
@@ -46,11 +47,27 @@ class Personal implements ISettings
"ncd_seed_ratio" => $this->settings->get("ncd_seed_ratio"),
'ncd_seed_time_unit' => $this->settings->get("ncd_seed_time_unit"),
'ncd_seed_time' => $this->settings->get("ncd_seed_time"),
- "path" => '/apps/ncdownloader/personal/save',
+ "path" => $path,
"disallow_aria2_settings" => Helper::getAdminSettings("disallow_aria2_settings"),
"is_admin" => \OC_User::isAdminUser($this->uid),
"aria2_version" => Helper::getAria2Version(),
"ytdl_version" => Helper::getYtdlVersion(),
+ ],
+ "options" => [
+ [
+ "label" => "Downloads Folder ",
+ "id" => "ncd_downloader_dir",
+ "value" => Helper::getDownloadDir(),
+ "placeholder" => Helper::getDownloadDir() ?? "/downloads",
+ "path" => $path,
+ ],
+ [
+ "label" => "Torrents Folder",
+ "id" => "ncd_torrents_dir",
+ "value" => $this->settings->get("ncd_torrents_dir"),
+ "placeholder" => $this->settings->get("ncd_torrents_dir") ?? "/torrents",
+ "path" => $path,
+ ]
]
];
diff --git a/lib/Tools/Helper.php b/lib/Tools/Helper.php
index 06fda5c..10d0b5a 100644
--- a/lib/Tools/Helper.php
+++ b/lib/Tools/Helper.php
@@ -550,4 +550,46 @@ class Helper
$ytdl = self::query(Ytdl::class);
return $ytdl->version();
}
+
+ public static function getAdminOptions($data)
+ {
+ $options = [
+ [
+ "label" => "Aria2 RPC Host",
+ "id" => "ncd_aria2_rpc_host",
+ "value" => $data['ncd_aria2_rpc_host'] ?? "",
+ "placeholder" => $data['ncd_aria2_rpc_host'] ?? "127.0.0.1",
+ "path" => $data['path'],
+ ],
+ [
+ "label" => "Aria2 RPC Port",
+ "id" => "ncd_aria2_rpc_port",
+ "value" => $data['ncd_aria2_rpc_port'] ?? "",
+ "placeholder" => $data['ncd_aria2_rpc_port'] ?? 6800,
+ "path" => $data['path'],
+ ],
+ [
+ "label" => "Aria2 RPC Token",
+ "id" => "ncd_aria2_rpc_token",
+ "value" => $data['ncd_aria2_rpc_token'] ?? "",
+ "placeholder" => $data['ncd_aria2_rpc_token'] ?? "ncdownloader123",
+ "path" => $data['path'],
+ ],
+ [
+ "label" => "Youtube-dl binary",
+ "id" => "ncd_yt_binary",
+ "value" => $data['ncd_yt_binary'] ?? "",
+ "placeholder" => $data['ncd_yt_binary'] ?? "/usr/bin/youtube-dl",
+ "path" => $data['path'],
+ ],
+ [
+ "label" => "Aria2c binary",
+ "id" => "ncd_aria2_binary",
+ "value" => $data['ncd_aria2_binary'] ?? "",
+ "placeholder" => $data['ncd_aria2_binary'] ?? "/usr/bin/aria2c",
+ "path" => $data['path'],
+ ]
+ ];
+ return $options;
+ }
}
diff --git a/src/adminSettings.vue b/src/adminSettings.vue
index cf52dbe..f8b0bc3 100644
--- a/src/adminSettings.vue
+++ b/src/adminSettings.vue
@@ -1,31 +1,15 @@
-
+
-
+
+
-
+
Save Settings
@@ -95,50 +79,11 @@ export default {
try {
let data = this.$el.parentElement.getAttribute("data-settings");
data = JSON.parse(data);
+ let options = this.$el.parentElement.getAttribute("data-options");
+ options = JSON.parse(options);
this.settings = data;
this.pStatus = helper.str2Boolean(data["disallow_aria2_settings"]);
- let path = "/apps/ncdownloader/admin/save";
- this.options = [
- {
- label: "Aria2 RPC Host",
- id: "ncd_aria2_rpc_host",
- value: data.ncd_aria2_rpc_host,
- placeholder: "127.0.0.1",
- path: path,
- },
- {
- label: "Aria2 RPC Port",
- id: "ncd_aria2_rpc_port",
- value: data.ncd_aria2_rpc_port,
- placeholder: "6800",
- path: path,
- },
- {
- label: "Aria2 RPC Token",
- id: "ncd_aria2_rpc_token",
- value: data.ncd_aria2_rpc_token,
- placeholder: data.ncd_aria2_rpc_token
- ? data.ncd_aria2_rpc_token
- : "ncdownloader123",
- path: path,
- },
- {
- label: "Youtube-dl binary",
- id: "ncd_yt_binary",
- value: data.ncd_yt_binary,
- placeholder: data.ncd_yt_binary
- ? data.ncd_yt_binary
- : "/usr/local/bin/youtube-dl",
- path: path,
- },
- {
- label: "Aria2c binary",
- id: "ncd_aria2_binary",
- value: data.ncd_aria2_binary,
- placeholder: "/usr/local/bin/aria2c",
- path: path,
- },
- ];
+ this.options = options;
} catch (e) {
helper.error(e);
}
diff --git a/src/personalSettings.vue b/src/personalSettings.vue
index ec607a1..cd56780 100644
--- a/src/personalSettings.vue
+++ b/src/personalSettings.vue
@@ -98,27 +98,13 @@ export default {
try {
let data = this.$el.parentElement.getAttribute("data-settings");
data = JSON.parse(data);
- let path = "/apps/ncdownloader/personal/save";
+ let options = this.$el.parentElement.getAttribute("data-options");
+ options = JSON.parse(options);
this.disallowAria2Settings = helper.str2Boolean(data["disallow_aria2_settings"]);
this.isAdmin = data["is_admin"];
this.aria2Version = data["aria2_version"];
this.ytdVersion = data["ytdl_version"];
- this.options = [
- {
- label: "Downloads Folder ",
- id: "ncd_downloader_dir",
- value: data.ncd_downloader_dir,
- placeholder: data.ncd_downloader_dir ? data.ncd_downloader_dir : "/downloads",
- path: path,
- },
- {
- label: "Torrents Folder",
- id: "ncd_torrents_dir",
- value: data.ncd_torrents_dir,
- placeholder: data.ncd_torrents_dir ? data.ncd_torrents_dir : "/torrents",
- path: path,
- },
- ];
+ this.options = options
} catch (e) {
helper.error(e);
}
@@ -126,7 +112,6 @@ export default {
};