qbittorrent-webui-cjratliff.../private/rename_file.html

96 lines
3.3 KiB
HTML

<!DOCTYPE html>
<html lang="${LANG}">
<head>
<meta charset="UTF-8" />
<title>Renaming</title>
<link rel="stylesheet" href="css/style.css?v=${CACHEID}" type="text/css" />
<script src="scripts/lib/MooTools-Core-1.6.0-compat-compressed.js"></script>
<script src="scripts/lib/MooTools-More-1.6.0-compat-compressed.js"></script>
<script src="scripts/misc.js?locale=${LANG}&v=${CACHEID}"></script>
<script src="scripts/filesystem.js?v=${CACHEID}"></script>
<script>
'use strict';
new Keyboard({
defaultEventType: 'keydown',
events: {
'Enter': function(event) {
$('renameButton').click();
event.preventDefault();
},
'Escape': function(event) {
window.parent.closeWindows();
event.preventDefault();
},
'Esc': function(event) {
window.parent.closeWindows();
event.preventDefault();
}
}
}).activate();
window.addEvent('domready', function() {
const hash = new URI().getData('hash');
const oldPath = new URI().getData('path');
const isFolder = ((new URI().getData('isFolder')) === 'true');
const oldName = window.qBittorrent.Filesystem.fileName(oldPath);
$('rename').value = oldName;
$('rename').focus();
if (!isFolder)
$('rename').setSelectionRange(0, oldName.lastIndexOf('.'));
$('renameButton').addEvent('click', function(e) {
new Event(e).stop();
// check field
const newName = $('rename').value.trim();
if (newName === '') {
alert('Name cannot be empty');
return;
}
if (newName === oldName) {
alert('Name is unchanged');
return;
}
$('renameButton').disabled = true;
const parentPath = window.qBittorrent.Filesystem.folderName(oldPath);
const newPath = parentPath
? parentPath + window.qBittorrent.Filesystem.PathSeparator + newName
: newName;
new Request({
url: isFolder ? 'api/v2/torrents/renameFolder' : 'api/v2/torrents/renameFile',
method: 'post',
data: {
hash: hash,
oldPath: oldPath,
newPath: newPath
},
onSuccess: function() {
window.parent.closeWindows();
},
onFailure: function() {
alert('Failed to update name');
$('renameButton').disabled = false;
}
}).send();
});
});
</script>
</head>
<body>
<div style="padding: 10px 10px 0px 10px;">
<p style="font-weight: bold;">New name:</p>
<input type="text" id="rename" style="width: 220px;" />
<div style="text-align: center; padding-top: 10px;">
<input type="button" value="Save" id="renameButton" />
</div>
</div>
</body>
</html>