diff --git a/src/webui/www/private/views/preferences.html b/src/webui/www/private/views/preferences.html
index f32ca3f2f..d8e845baa 100644
--- a/src/webui/www/private/views/preferences.html
+++ b/src/webui/www/private/views/preferences.html
@@ -127,22 +127,6 @@
-
-
- |
-
-
-
-
-
-
- |
-
-
@@ -1290,30 +1274,10 @@
$('temppath_text').setProperty('disabled', !isTempDirEnabled);
};
- const addWatchFolder = function() {
- const new_folder = $('new_watch_folder_txt').getProperty('value').trim();
- if (new_folder.length <= 0) return;
-
- const new_other = $('new_watch_folder_other_txt').getProperty('value').trim();
- if (new_other.length <= 0) return;
-
- const new_select = $('new_watch_folder_select').getProperty('value').trim();
-
- const i = $('watched_folders_tab').getChildren('tbody')[0].getChildren('tr').length;
- pushWatchFolder(i, new_folder, new_select, new_other);
-
- // Clear fields
- $('new_watch_folder_txt').setProperty('value', '');
- const elt = $('new_watch_folder_select');
- elt.setProperty('value', 'watch_folder');
- const text = elt.options[elt.selectedIndex].innerHTML;
- $('new_watch_folder_other_txt').setProperty('value', text);
- };
-
- const changeWatchFolderSelect = function(item) {
- if (item.value == "other") {
+ const changeWatchFolderSelect = (item) => {
+ if (item.value === "other") {
item.nextElementSibling.hidden = false;
- item.nextElementSibling.value = 'QBT_TR(Type folder here)QBT_TR[CONTEXT=HttpServer]';
+ item.nextElementSibling.value = 'QBT_TR(Type folder here)QBT_TR[CONTEXT=ScanFoldersModel]';
item.nextElementSibling.select();
}
else {
@@ -1323,16 +1287,19 @@
}
};
- const pushWatchFolder = function(pos, folder, sel, other) {
+ const addWatchFolder = (folder = "", sel = "default_folder", other = "") => {
+ const pos = $('watched_folders_tab').getChildren('tbody')[0].getChildren('tr').length;
const myinput = "";
- const disableInput = (sel != "other");
+ const disableInput = (sel !== "other");
const mycb = ""
+ ""
- + "
";
+ + ""
+ + ""
+ + "";
watchedFoldersTable.push([myinput, mycb]);
$('cb_watch_' + pos).setProperty('value', sel);
@@ -1341,9 +1308,13 @@
other = elt.options[elt.selectedIndex].innerHTML;
}
$('cb_watch_txt_' + pos).setProperty('value', other);
+
+ // hide previous img
+ if (pos > 0)
+ $('addFolderImg_' + (pos - 1)).style.display = "none";
};
- const getWatchedFolders = function() {
+ const getWatchedFolders = () => {
const nb_folders = $("watched_folders_tab").getChildren("tbody")[0].getChildren("tr").length;
const folders = new Hash();
for (let i = 0; i < nb_folders; ++i) {
@@ -1352,7 +1323,7 @@
const sel = $('cb_watch_' + i).getProperty('value').trim();
let other;
- if (sel == "other")
+ if (sel === "other")
other = $('cb_watch_txt_' + i).getProperty('value').trim();
else
other = (sel === "watch_folder") ? 0 : 1;
@@ -1663,19 +1634,19 @@
updateExportDirFinEnabled();
// Automatically add torrents from
- let i = 0;
- for (const folder in pref.scan_dirs) {
- let sel;
+ for (const [folder, folderType] of Object.entries(pref.scan_dirs)) {
+ let sel = "";
let other = "";
- if (typeof pref.scan_dirs[folder] == "string") {
- other = pref.scan_dirs[folder];
- sel = "other";
+ if (typeof folderType === "number") {
+ sel = (folderType === 0) ? "watch_folder" : "default_folder";
}
else {
- sel = (pref.scan_dirs[folder] == 0) ? "watch_folder" : "default_folder";
+ sel = "other";
+ other = folderType;
}
- pushWatchFolder(i++, folder, sel, other);
+ addWatchFolder(folder, sel, other);
}
+ addWatchFolder();
// Email notification upon download completion
$('mail_notification_checkbox').setProperty('checked', pref.mail_notification_enabled);