Browse Source

WebUI: show correct location path

The `path` might contains '&' (delimit character) so it must be
encoded.
Closes #15976.
adaptive-webui-19844
Chocobo1 3 years ago
parent
commit
0d334369f0
No known key found for this signature in database
GPG Key ID: 210D9C873253A68C
  1. 2
      src/webui/www/private/scripts/mocha-init.js
  2. 5
      src/webui/www/private/setlocation.html

2
src/webui/www/private/scripts/mocha-init.js

@ -487,7 +487,7 @@ const initializeWindows = function() {
id: 'setLocationPage', id: 'setLocationPage',
title: "QBT_TR(Set location)QBT_TR[CONTEXT=TransferListWidget]", title: "QBT_TR(Set location)QBT_TR[CONTEXT=TransferListWidget]",
loadMethod: 'iframe', 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, scrollbars: false,
resizable: true, resizable: true,
maximizable: false, maximizable: false,

5
src/webui/www/private/setlocation.html

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

Loading…
Cancel
Save