mirror of
https://github.com/qbittorrent/qBittorrent.git
synced 2026-01-02 05:38:06 -06:00
97 lines
4.0 KiB
HTML
97 lines
4.0 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="${LANG}" class="dark">
|
|
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<title>QBT_TR(Renaming)QBT_TR[CONTEXT=TorrentContentTreeView]</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/localpreferences.js?v=${CACHEID}"></script>
|
|
<script src="scripts/color-scheme.js?v=${CACHEID}"></script>
|
|
<script src="scripts/misc.js?locale=${LANG}&v=${CACHEID}"></script>
|
|
<script src="scripts/filesystem.js?v=${CACHEID}"></script>
|
|
<script>
|
|
"use strict";
|
|
|
|
window.addEventListener("DOMContentLoaded", () => {
|
|
window.addEventListener("keydown", (event) => {
|
|
switch (event.key) {
|
|
case "Enter":
|
|
event.preventDefault();
|
|
document.getElementById("renameButton").click();
|
|
break;
|
|
case "Escape":
|
|
event.preventDefault();
|
|
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
|
break;
|
|
}
|
|
});
|
|
|
|
const searchParams = new URLSearchParams(window.location.search);
|
|
const hash = searchParams.get("hash");
|
|
const oldPath = searchParams.get("path");
|
|
const isFolder = ((searchParams.get("isFolder")) === "true");
|
|
|
|
const oldName = window.qBittorrent.Filesystem.fileName(oldPath);
|
|
document.getElementById("rename").value = oldName;
|
|
document.getElementById("rename").focus();
|
|
if (!isFolder)
|
|
document.getElementById("rename").setSelectionRange(0, oldName.lastIndexOf("."));
|
|
|
|
document.getElementById("renameButton").addEventListener("click", (e) => {
|
|
e.preventDefault();
|
|
e.stopPropagation();
|
|
|
|
// check field
|
|
const newName = document.getElementById("rename").value.trim();
|
|
if (newName === "") {
|
|
alert("QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]");
|
|
return;
|
|
}
|
|
|
|
if (newName === oldName) {
|
|
alert("QBT_TR(Name is unchanged)QBT_TR[CONTEXT=HttpServer]");
|
|
return;
|
|
}
|
|
|
|
document.getElementById("renameButton").disabled = true;
|
|
|
|
const parentPath = window.qBittorrent.Filesystem.folderName(oldPath);
|
|
const newPath = parentPath
|
|
? parentPath + window.qBittorrent.Filesystem.PathSeparator + newName
|
|
: newName;
|
|
fetch((isFolder ? "api/v2/torrents/renameFolder" : "api/v2/torrents/renameFile"), {
|
|
method: "POST",
|
|
body: new URLSearchParams({
|
|
hash: hash,
|
|
oldPath: oldPath,
|
|
newPath: newPath
|
|
})
|
|
})
|
|
.then((response) => {
|
|
if (!response.ok) {
|
|
alert("QBT_TR(Failed to update name)QBT_TR[CONTEXT=HttpServer]");
|
|
document.getElementById("renameButton").disabled = false;
|
|
return;
|
|
}
|
|
|
|
window.parent.qBittorrent.Client.closeFrameWindow(window);
|
|
});
|
|
});
|
|
});
|
|
</script>
|
|
</head>
|
|
|
|
<body>
|
|
<div style="padding: 10px 10px 0px 10px;">
|
|
<label for="rename" style="font-weight: bold;">QBT_TR(New name:)QBT_TR[CONTEXT=TorrentContentTreeView]</label>
|
|
<input type="text" id="rename" style="width: 99%;">
|
|
<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>
|