Add option to rename torrent from WebUI

Addresses #6815.
This commit is contained in:
Thomas Piccirello
2017-07-04 05:54:43 -04:00
committed by sledgehammer999
parent 8fc931a61b
commit cc141ba02f
7 changed files with 115 additions and 0 deletions

View File

@@ -109,6 +109,7 @@
<li class="separator"><a href="#Delete"><img src="theme/list-remove" alt="QBT_TR(Delete)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Delete)QBT_TR[CONTEXT=TransferListWidget]</a></li>
<li class="separator">
<a href="#SetLocation"><img src="theme/inode-directory" alt="QBT_TR(Set location...)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Set location...)QBT_TR[CONTEXT=TransferListWidget]</a>
<a href="#Rename"><img src="theme/edit-rename" alt="QBT_TR(Rename...)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Rename...)QBT_TR[CONTEXT=TransferListWidget]</a>
</li>
<li>
<a href="#Category" class="arrow-right"><img src="theme/view-categories" alt="QBT_TR(Category)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Category)QBT_TR[CONTEXT=TransferListWidget]</a>

View File

@@ -0,0 +1,63 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>QBT_TR(Rename)QBT_TR[CONTEXT=TransferListWidget]</title>
<link rel="stylesheet" href="css/style.css" type="text/css" />
<script type="text/javascript" src="scripts/mootools-1.2-core-yc.js" charset="utf-8"></script>
<script type="text/javascript" src="scripts/mootools-1.2-more.js" charset="utf-8"></script>
<script type="text/javascript" src="scripts/misc.js"></script>
<script type="text/javascript">
var renameKeyboardEvents = new Keyboard({
defaultEventType: 'keydown',
events: {
'enter': function (event) {
$('renameButton').click();
event.preventDefault();
}
}
});
renameKeyboardEvents.activate();
window.addEvent('domready', function() {
var name = new URI().getData('name');
// set text field to current value
if (name)
$('rename').value = escapeHtml(name);
$('rename').focus();
$('renameButton').addEvent('click', function(e) {
new Event(e).stop();
// check field
var name = $('rename').value.trim();
if (name === null || name === "")
return false;
var hash = new URI().getData('hash');
if (hash) {
new Request({
url: 'command/rename',
method: 'post',
data: {
hash: hash,
name: name
},
onComplete: function () {
window.parent.closeWindows();
}
}).send();
}
});
});
</script>
</head>
<body>
<div style="padding: 10px 10px 0px 10px;">
<p style="font-weight: bold;">QBT_TR(New name)QBT_TR[CONTEXT=TransferListWidget]:</p>
<input type="text" id="rename" value="" maxlength="100" style="width: 220px;"/>
<div style="text-align: center; padding-top: 10px;">
<input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="renameButton"/>
</div>
</div>
</body>
</html>

View File

@@ -338,6 +338,30 @@ initializeWindows = function() {
}
};
renameFN = function() {
var hashes = torrentsTable.selectedRowsIds();
if (hashes.length == 1) {
var hash = hashes[0];
var row = torrentsTable.rows[hash];
if (row) {
var name = row.full_data.name;
new MochaUI.Window({
id: 'renamePage',
title: "QBT_TR(Rename)QBT_TR[CONTEXT=TransferListWidget]",
loadMethod: 'iframe',
contentURL: 'rename.html?hash=' + hashes[0] + '&name=' + name,
scrollbars: false,
resizable: false,
maximizable: false,
paddingVertical: 0,
paddingHorizontal: 0,
width: 250,
height: 100
});
}
}
};
torrentNewCategoryFN = function () {
var hashes = torrentsTable.selectedRowsIds();
if (hashes.length) {

View File

@@ -40,6 +40,9 @@
setLocationFN();
},
Rename : function(element, ref) {
renameFN();
},
prioTop : function (element, ref) {
setPriorityFN('topPrio');
},