WebUI: show correct location path

The `path` might contains '&' (delimit character) so it must be
encoded.
Closes #15976.
This commit is contained in:
Chocobo1 2022-03-30 14:56:49 +08:00
parent 08f3630f01
commit 0d334369f0
No known key found for this signature in database
GPG Key ID: 210D9C873253A68C
2 changed files with 4 additions and 3 deletions

View File

@ -487,7 +487,7 @@ const initializeWindows = function() {
id: 'setLocationPage',
title: "QBT_TR(Set location)QBT_TR[CONTEXT=TransferListWidget]",
loadMethod: 'iframe',
contentURL: new URI("setlocation.html").setData("hashes", hashes.join('|')).setData("path", row.full_data.save_path).toString(),
contentURL: new URI("setlocation.html").setData("hashes", hashes.join('|')).setData("path", encodeURIComponent(row.full_data.save_path)).toString(),
scrollbars: false,
resizable: true,
maximizable: false,

View File

@ -31,16 +31,17 @@
window.addEvent('domready', function() {
const path = new URI().getData('path');
// set text field to current value
if (path)
$('setLocation').value = window.qBittorrent.Misc.escapeHtml(path);
$('setLocation').value = decodeURIComponent(path);
$('setLocation').focus();
$('setLocationButton').addEvent('click', function(e) {
new Event(e).stop();
// check field
const location = $('setLocation').value.trim();
if (location === null || location === "") {
if ((location === null) || (location === "")) {
$('error_div').set('text', 'QBT_TR(Save path is empty)QBT_TR[CONTEXT=TorrentsController]');
return false;
}