mirror of
https://github.com/Carve/qbittorrent-webui-cjratliff.com.git
synced 2024-11-14 18:57:36 +01:00
No longer provide translation for 3rd party themes
This commit is contained in:
parent
6819ff8482
commit
a1a6256816
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Add Peers)QBT_TR[CONTEXT=PeersAdditionDialog]</title>
|
||||
<title>Add Peers</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>
|
||||
@ -46,7 +46,7 @@
|
||||
peers: peers.join('|')
|
||||
},
|
||||
onFailure: function() {
|
||||
alert("QBT_TR(Unable to add peers. Please ensure you are adhering to the IP:port format.)QBT_TR[CONTEXT=HttpServer]");
|
||||
alert("Unable to add peers. Please ensure you are adhering to the IP:port format.");
|
||||
},
|
||||
onSuccess: function() {
|
||||
window.parent.closeWindows();
|
||||
@ -59,11 +59,11 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(List of peers to add (one IP per line):)QBT_TR[CONTEXT=PeersAdditionDialog]</p>
|
||||
<textarea id="peers" rows="10" style="width: 100%;" placeholder="QBT_TR(Format: IPv4:port / [IPv6]:port)QBT_TR[CONTEXT=PeersAdditionDialog]"></textarea>
|
||||
<p>List of peers to add (one IP per line):</p>
|
||||
<textarea id="peers" rows="10" style="width: 100%;" placeholder="Format: IPv4:port / [IPv6]:port"></textarea>
|
||||
<div style="margin-top: 10px; text-align: center;">
|
||||
<button onclick="parent.closeWindows();">QBT_TR(Cancel)QBT_TR[CONTEXT=PeersAdditionDialog]</button>
|
||||
<button id="addPeersOk">QBT_TR(Ok)QBT_TR[CONTEXT=PeersAdditionDialog]</button>
|
||||
<button onclick="parent.closeWindows();">Cancel</button>
|
||||
<button id="addPeersOk">Ok</button>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Add trackers)QBT_TR[CONTEXT=TrackersAdditionDialog]</title>
|
||||
<title>Add trackers</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>
|
||||
@ -48,10 +48,10 @@
|
||||
<body>
|
||||
<div style="text-align: center;">
|
||||
<br />
|
||||
<h2 class="vcenter">QBT_TR(List of trackers to add (one per line):)QBT_TR[CONTEXT=TrackersAdditionDialog]</h2>
|
||||
<h2 class="vcenter">List of trackers to add (one per line):</h2>
|
||||
<textarea name="list" id="trackersUrls" rows="10" cols="1"></textarea>
|
||||
<br />
|
||||
<input type="button" value="QBT_TR(Add)QBT_TR[CONTEXT=HttpServer]" id="addTrackersButton" />
|
||||
<input type="button" value="Add" id="addTrackersButton" />
|
||||
</div>
|
||||
</body>
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Remove torrent(s))QBT_TR[CONTEXT=confirmDeletionDlg]</title>
|
||||
<title>Remove torrent(s)</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>
|
||||
@ -44,10 +44,10 @@
|
||||
<body>
|
||||
<br />
|
||||
|
||||
<p> QBT_TR(Are you sure you want to remove the selected torrents from the transfer list?)QBT_TR[CONTEXT=HttpServer]</p>
|
||||
<input type="checkbox" id="deleteFromDiskCB" /> <label for="deleteFromDiskCB"><i>QBT_TR(Also permanently delete the files)QBT_TR[CONTEXT=confirmDeletionDlg]</i></label><br /><br />
|
||||
<p> Are you sure you want to remove the selected torrents from the transfer list?</p>
|
||||
<input type="checkbox" id="deleteFromDiskCB" /> <label for="deleteFromDiskCB"><i>Also permanently delete the files</i></label><br /><br />
|
||||
<div style="text-align: right;">
|
||||
<input type="button" id="cancelBtn" value="QBT_TR(Cancel)QBT_TR[CONTEXT=MainWindow]" /> <input type="button" id="confirmBtn" value="QBT_TR(Remove)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="cancelBtn" value="Cancel)QBT_TR[CONTEXT=MainWindow]" /> <input type="button" id="confirmBtn" value="QBT_TR(Remove" />
|
||||
</div>
|
||||
</body>
|
||||
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Deletion confirmation)QBT_TR[CONTEXT=RSSWidget]</title>
|
||||
<title>Deletion confirmation</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>
|
||||
@ -44,10 +44,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(Are you sure you want to delete the selected RSS feeds?)QBT_TR[CONTEXT=RSSWidget]</p>
|
||||
<p>Are you sure you want to delete the selected RSS feeds?</p>
|
||||
<div style="text-align: right;">
|
||||
<input type="button" id="cancelBtn" value="QBT_TR(No)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="confirmBtn" value="QBT_TR(Yes)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="cancelBtn" value="No" />
|
||||
<input type="button" id="confirmBtn" value="Yes" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Clear downloaded episodes)QBT_TR[CONTEXT=AutomatedRssDownloader]</title>
|
||||
<title>Clear downloaded episodes</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>
|
||||
@ -37,10 +37,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(Are you sure you want to clear the list of downloaded episodes for the selected rule?)QBT_TR[CONTEXT=AutomatedRssDownloader]</p>
|
||||
<p>Are you sure you want to clear the list of downloaded episodes for the selected rule?</p>
|
||||
<div style="text-align: right;">
|
||||
<input type="button" id="cancelBtn" value="QBT_TR(No)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="confirmBtn" value="QBT_TR(Yes)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="cancelBtn" value="No" />
|
||||
<input type="button" id="confirmBtn" value="Yes" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Rule deletion confirmation)QBT_TR[CONTEXT=AutomatedRssDownloader]</title>
|
||||
<title>Rule deletion confirmation</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>
|
||||
@ -45,10 +45,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(Are you sure you want to remove the selected download rules?)QBT_TR[CONTEXT=AutomatedRssDownloader]</p>
|
||||
<p>Are you sure you want to remove the selected download rules?</p>
|
||||
<div style="text-align: right;">
|
||||
<input type="button" id="cancelBtn" value="QBT_TR(No)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="confirmBtn" value="QBT_TR(Yes)QBT_TR[CONTEXT=MainWindow]" />
|
||||
<input type="button" id="cancelBtn" value="No" />
|
||||
<input type="button" id="confirmBtn" value="Yes" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Add Torrent Links)QBT_TR[CONTEXT=downloadFromURL]</title>
|
||||
<title>Add Torrent Links</title>
|
||||
<link rel="stylesheet" href="css/style.css?v=${CACHEID}" type="text/css" />
|
||||
<link rel="stylesheet" href="css/Window.css?v=${CACHEID}" type="text/css" />
|
||||
<script src="scripts/lib/MooTools-Core-1.6.0-compat-compressed.js"></script>
|
||||
@ -17,25 +17,25 @@
|
||||
<form action="api/v2/torrents/add" enctype="multipart/form-data" method="post" id="downloadForm" style="text-align: center;" target="download_frame" autocorrect="off" autocapitalize="none">
|
||||
<div style="text-align: center;">
|
||||
<br />
|
||||
<h2 class="vcenter">QBT_TR(Download Torrents from their URLs or Magnet links)QBT_TR[CONTEXT=HttpServer]</h2>
|
||||
<h2 class="vcenter">Download Torrents from their URLs or Magnet links</h2>
|
||||
<textarea id="urls" rows="10" name="urls"></textarea>
|
||||
<p>QBT_TR(Only one link per line)QBT_TR[CONTEXT=HttpServer]</p>
|
||||
<p>Only one link per line</p>
|
||||
<fieldset class="settings" style="border: 0; text-align: left; margin-top: 6px;">
|
||||
<table style="margin: auto;">
|
||||
<tr>
|
||||
<td>
|
||||
<label for="autoTMM">QBT_TR(Torrent Management Mode:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="autoTMM">Torrent Management Mode:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="autoTMM" name="autoTMM" onchange="qBittorrent.Download.changeTMM(this)">
|
||||
<option selected value="false">QBT_TR(Manual)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="true">QBT_TR(Automatic)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="false">Manual</option>
|
||||
<option value="true">Automatic</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="savepath">QBT_TR(Save files to location:)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="savepath">Save files to location:</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="savepath" name="savepath" style="width: 16em;" />
|
||||
@ -43,7 +43,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="cookie">QBT_TR(Cookie:)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="cookie">Cookie:</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="cookie" name="cookie" style="width: 16em;" />
|
||||
@ -51,7 +51,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="rename">QBT_TR(Rename torrent)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="rename">Rename torrent</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="rename" name="rename" style="width: 16em;" />
|
||||
@ -59,7 +59,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="category">QBT_TR(Category:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="category">Category:</label>
|
||||
</td>
|
||||
<td>
|
||||
<div class="select-watched-folder-editable">
|
||||
@ -72,7 +72,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="startTorrent">QBT_TR(Start torrent)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="startTorrent">Start torrent</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="startTorrentHidden" name="paused" />
|
||||
@ -81,19 +81,19 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="stopCondition">QBT_TR(Stop condition:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="stopCondition">Stop condition:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="stopCondition" name="stopCondition">
|
||||
<option selected value="None">QBT_TR(None)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="MetadataReceived">QBT_TR(Metadata received)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="FilesChecked">QBT_TR(Files checked)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="None">None</option>
|
||||
<option value="MetadataReceived">Metadata received</option>
|
||||
<option value="FilesChecked">Files checked</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="skip_checking">QBT_TR(Skip hash check)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="skip_checking">Skip hash check</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="skip_checking" name="skip_checking" value="true" />
|
||||
@ -101,19 +101,19 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="contentLayout">QBT_TR(Content layout:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="contentLayout">Content layout:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="contentLayout" name="contentLayout">
|
||||
<option selected value="Original">QBT_TR(Original)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="Subfolder">QBT_TR(Create subfolder)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="NoSubfolder">QBT_TR(Don't create subfolder)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="Original">Original</option>
|
||||
<option value="Subfolder">Create subfolder</option>
|
||||
<option value="NoSubfolder">Don't create subfolder</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="sequentialDownload">QBT_TR(Download in sequential order)QBT_TR[CONTEXT=TransferListWidget]</label>
|
||||
<label for="sequentialDownload">Download in sequential order</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="sequentialDownload" name="sequentialDownload" value="true" />
|
||||
@ -121,7 +121,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="firstLastPiecePrio">QBT_TR(Download first and last pieces first)QBT_TR[CONTEXT=TransferListWidget]</label>
|
||||
<label for="firstLastPiecePrio">Download first and last pieces first</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="firstLastPiecePrio" name="firstLastPiecePrio" value="true" />
|
||||
@ -129,7 +129,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="dlLimitText">QBT_TR(Limit download rate)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="dlLimitText">Limit download rate</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="dlLimitHidden" name="dlLimit" />
|
||||
@ -138,7 +138,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="upLimitText">QBT_TR(Limit upload rate)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="upLimitText">Limit upload rate</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="upLimitHidden" name="upLimit" />
|
||||
@ -147,7 +147,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
<div id="submitbutton" style="margin-top: 12px; text-align: center;">
|
||||
<button type="submit" id="submitButton">QBT_TR(Download)QBT_TR[CONTEXT=downloadFromURL]</button>
|
||||
<button type="submit" id="submitButton">Download</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Torrent Download Speed Limiting)QBT_TR[CONTEXT=TransferListWidget]</title>
|
||||
<title>Torrent Download Speed Limiting</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>
|
||||
@ -14,7 +14,7 @@
|
||||
<body>
|
||||
<div style="width: 100%; text-align: center; margin: 0 auto; overflow: hidden">
|
||||
<div id="dllimitSlider" class="slider">
|
||||
<div id="dllimitUpdate" class="update">QBT_TR(Download limit:)QBT_TR[CONTEXT=PropertiesWidget] <input id="dllimitUpdatevalue" size="6" placeholder="∞" style="text-align: center;"> <span id="dlLimitUnit">QBT_TR(KiB/s)QBT_TR[CONTEXT=SpeedLimitDialog]</span></div>
|
||||
<div id="dllimitUpdate" class="update">Download limit:)QBT_TR[CONTEXT=PropertiesWidget] <input id="dllimitUpdatevalue" size="6" placeholder="∞" style="text-align: center;"> <span id="dlLimitUnit">QBT_TR(KiB/s</span></div>
|
||||
<div class="sliderWrapper">
|
||||
<div id="dllimitSliderknob" class="sliderknob"></div>
|
||||
<div id="dllimitSliderarea" class="sliderarea"></div>
|
||||
@ -55,7 +55,7 @@
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<input type="button" id="applyButton" value="QBT_TR(Apply)QBT_TR[CONTEXT=HttpServer]" onclick="setDlLimit()" />
|
||||
<input type="button" id="applyButton" value="Apply" onclick="setDlLimit()" />
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Tracker editing)QBT_TR[CONTEXT=TrackerListWidget]</title>
|
||||
<title>Tracker editing</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>
|
||||
@ -59,12 +59,12 @@
|
||||
<body>
|
||||
<div style="text-align: center;">
|
||||
<br />
|
||||
<h2 class="vcenter">QBT_TR(Tracker URL:)QBT_TR[CONTEXT=TrackerListWidget]</h2>
|
||||
<h2 class="vcenter">Tracker URL:</h2>
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input id="trackerUrl" style="width: 90%;" />
|
||||
</div>
|
||||
<br />
|
||||
<input type="button" value="QBT_TR(Edit)QBT_TR[CONTEXT=HttpServer]" id="editTrackerButton" />
|
||||
<input type="button" value="Edit" id="editTrackerButton" />
|
||||
</div>
|
||||
</body>
|
||||
|
||||
|
@ -36,7 +36,7 @@
|
||||
|
||||
<body>
|
||||
<noscript id="noscript">
|
||||
<h1>QBT_TR(JavaScript Required! You must enable JavaScript for the Web UI to work properly)QBT_TR[CONTEXT=HttpServer]</h1>
|
||||
<h1>JavaScript Required! You must enable JavaScript for the Web UI to work properly</h1>
|
||||
</noscript>
|
||||
<div id="desktop">
|
||||
<div id="desktopHeader">
|
||||
@ -46,81 +46,81 @@
|
||||
<div id="desktopNavbar">
|
||||
<ul>
|
||||
<li>
|
||||
<a class="returnFalse">QBT_TR(File)QBT_TR[CONTEXT=MainWindow]</a>
|
||||
<a class="returnFalse">File</a>
|
||||
<ul>
|
||||
<li><a id="uploadLink"><img class="MyMenuIcon" alt="QBT_TR(Add Torrent File...)QBT_TR[CONTEXT=MainWindow]" src="images/list-add.svg" width="16" height="16" />QBT_TR(Add Torrent File...)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="downloadLink"><img class="MyMenuIcon" alt="QBT_TR(Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]" src="images/insert-link.svg" width="16" height="16" />QBT_TR(Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li class="divider"><a id="logoutLink"><img class="MyMenuIcon" alt="QBT_TR(Logout)QBT_TR[CONTEXT=HttpServer]" src="images/system-log-out.svg" width="16" height="16" />QBT_TR(Logout)QBT_TR[CONTEXT=HttpServer]</a></li>
|
||||
<li><a id="shutdownLink"><img class="MyMenuIcon" alt="QBT_TR(Exit qBittorrent)QBT_TR[CONTEXT=HttpServer]" src="images/application-exit.svg" width="16" height="16" />QBT_TR(Exit qBittorrent)QBT_TR[CONTEXT=HttpServer]</a></li>
|
||||
<li><a id="uploadLink"><img class="MyMenuIcon" alt="Add Torrent File...)QBT_TR[CONTEXT=MainWindow]" src="images/list-add.svg" width="16" height="16" />QBT_TR(Add Torrent File...</a></li>
|
||||
<li><a id="downloadLink"><img class="MyMenuIcon" alt="Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]" src="images/insert-link.svg" width="16" height="16" />QBT_TR(Add Torrent Link...</a></li>
|
||||
<li class="divider"><a id="logoutLink"><img class="MyMenuIcon" alt="Logout)QBT_TR[CONTEXT=HttpServer]" src="images/system-log-out.svg" width="16" height="16" />QBT_TR(Logout</a></li>
|
||||
<li><a id="shutdownLink"><img class="MyMenuIcon" alt="Exit qBittorrent)QBT_TR[CONTEXT=HttpServer]" src="images/application-exit.svg" width="16" height="16" />QBT_TR(Exit qBittorrent</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="returnFalse">QBT_TR(Edit)QBT_TR[CONTEXT=MainWindow]</a>
|
||||
<a class="returnFalse">Edit</a>
|
||||
<ul>
|
||||
<li><a id="resumeLink"><img class="MyMenuIcon" alt="QBT_TR(Resume)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-start.svg" width="16" height="16" />QBT_TR(Resume)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="pauseLink"><img class="MyMenuIcon" src="images/torrent-stop.svg" alt="QBT_TR(Pause)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Pause)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="resumeAllLink"><img class="MyMenuIcon" alt="QBT_TR(Resume All)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-start.svg" width="16" height="16" />QBT_TR(Resume All)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="pauseAllLink"><img class="MyMenuIcon" alt="QBT_TR(Pause All)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-stop.svg" width="16" height="16" />QBT_TR(Pause All)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li class="divider"><a id="deleteLink"><img class="MyMenuIcon" src="images/list-remove.svg" alt="QBT_TR(Remove)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Remove)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="topQueuePosItem" class="divider"><a id="topPrioLink"><img class="MyMenuIcon" src="images/go-top.svg" alt="QBT_TR(Top of Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Top of Queue)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="increaseQueuePosItem"><a id="increasePrioLink"><img class="MyMenuIcon" src="images/go-up.svg" alt="QBT_TR(Move Up Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Move Up Queue)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="decreaseQueuePosItem"><a id="decreasePrioLink"><img class="MyMenuIcon" src="images/go-down.svg" alt="QBT_TR(Move Down Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Move Down Queue)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="bottomQueuePosItem"><a id="bottomPrioLink"><img class="MyMenuIcon" src="images/go-bottom.svg" alt="QBT_TR(Bottom of Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Bottom of Queue)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="resumeLink"><img class="MyMenuIcon" alt="Resume)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-start.svg" width="16" height="16" />QBT_TR(Resume</a></li>
|
||||
<li><a id="pauseLink"><img class="MyMenuIcon" src="images/torrent-stop.svg" alt="Pause)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Pause</a></li>
|
||||
<li><a id="resumeAllLink"><img class="MyMenuIcon" alt="Resume All)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-start.svg" width="16" height="16" />QBT_TR(Resume All</a></li>
|
||||
<li><a id="pauseAllLink"><img class="MyMenuIcon" alt="Pause All)QBT_TR[CONTEXT=MainWindow]" src="images/torrent-stop.svg" width="16" height="16" />QBT_TR(Pause All</a></li>
|
||||
<li class="divider"><a id="deleteLink"><img class="MyMenuIcon" src="images/list-remove.svg" alt="Remove)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Remove</a></li>
|
||||
<li id="topQueuePosItem" class="divider"><a id="topPrioLink"><img class="MyMenuIcon" src="images/go-top.svg" alt="Top of Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Top of Queue</a></li>
|
||||
<li id="increaseQueuePosItem"><a id="increasePrioLink"><img class="MyMenuIcon" src="images/go-up.svg" alt="Move Up Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Move Up Queue</a></li>
|
||||
<li id="decreaseQueuePosItem"><a id="decreasePrioLink"><img class="MyMenuIcon" src="images/go-down.svg" alt="Move Down Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Move Down Queue</a></li>
|
||||
<li id="bottomQueuePosItem"><a id="bottomPrioLink"><img class="MyMenuIcon" src="images/go-bottom.svg" alt="Bottom of Queue)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Bottom of Queue</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="returnFalse">QBT_TR(View)QBT_TR[CONTEXT=MainWindow]</a>
|
||||
<a class="returnFalse">View</a>
|
||||
<ul>
|
||||
<li><a id="showTopToolbarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(Top Toolbar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Top Toolbar)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="showStatusBarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(Status Bar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Status Bar)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="showFiltersSidebarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(Filters Sidebar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Filters Sidebar)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="speedInBrowserTitleBarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(Speed in Title Bar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Speed in Title Bar)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li class="divider"><a id="showSearchEngineLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(Search Engine)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Search Engine)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="showRssReaderLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="QBT_TR(RSS)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(RSS Reader)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li class="divider"><a id="StatisticsLink"><img class="MyMenuIcon" src="images/view-statistics.svg" alt="QBT_TR(Statistics)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Statistics)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="showTopToolbarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="Top Toolbar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Top Toolbar</a></li>
|
||||
<li><a id="showStatusBarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="Status Bar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Status Bar</a></li>
|
||||
<li><a id="showFiltersSidebarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="Filters Sidebar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Filters Sidebar</a></li>
|
||||
<li><a id="speedInBrowserTitleBarLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="Speed in Title Bar)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Speed in Title Bar</a></li>
|
||||
<li class="divider"><a id="showSearchEngineLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="Search Engine)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Search Engine</a></li>
|
||||
<li><a id="showRssReaderLink"><img class="MyMenuIcon" src="images/checked-completed.svg" alt="RSS)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(RSS Reader</a></li>
|
||||
<li class="divider"><a id="StatisticsLink"><img class="MyMenuIcon" src="images/view-statistics.svg" alt="Statistics)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Statistics</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="returnFalse">QBT_TR(Tools)QBT_TR[CONTEXT=MainWindow]</a>
|
||||
<a class="returnFalse">Tools</a>
|
||||
<ul>
|
||||
<li><a id="preferencesLink"><img class="MyMenuIcon" src="images/configure.svg" alt="QBT_TR(Options...)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Options...)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="registerMagnetHandlerLink"><img class="MyMenuIcon" src="images/torrent-magnet.svg" alt="QBT_TR(Register to handle magnet links...)QBT_TR[CONTEXT=HttpServer]" width="16" height="16" />QBT_TR(Register to handle magnet links...)QBT_TR[CONTEXT=HttpServer]</a></li>
|
||||
<li><a id="preferencesLink"><img class="MyMenuIcon" src="images/configure.svg" alt="Options...)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Options...</a></li>
|
||||
<li><a id="registerMagnetHandlerLink"><img class="MyMenuIcon" src="images/torrent-magnet.svg" alt="Register to handle magnet links...)QBT_TR[CONTEXT=HttpServer]" width="16" height="16" />QBT_TR(Register to handle magnet links...</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a class="returnFalse">QBT_TR(Help)QBT_TR[CONTEXT=MainWindow]</a>
|
||||
<a class="returnFalse">Help</a>
|
||||
<ul>
|
||||
<li><a id="docsLink" target="_blank" href="http://wiki.qbittorrent.org/"><img class="MyMenuIcon" src="images/help-contents.svg" alt="QBT_TR(Documentation)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Documentation)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li class="divider"><a id="bugLink" target="_blank" href="https://www.qbittorrent.org/donate"><img class="MyMenuIcon" src="images/wallet-open.svg" alt="QBT_TR(Donate!)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Donate!)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="aboutLink"><img class="MyMenuIcon" src="images/help-about.svg" alt="QBT_TR(About)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(About)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li><a id="docsLink" target="_blank" href="http://wiki.qbittorrent.org/"><img class="MyMenuIcon" src="images/help-contents.svg" alt="Documentation)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Documentation</a></li>
|
||||
<li class="divider"><a id="bugLink" target="_blank" href="https://www.qbittorrent.org/donate"><img class="MyMenuIcon" src="images/wallet-open.svg" alt="Donate!)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(Donate!</a></li>
|
||||
<li><a id="aboutLink"><img class="MyMenuIcon" src="images/help-about.svg" alt="About)QBT_TR[CONTEXT=MainWindow]" width="16" height="16" />QBT_TR(About</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="mochaToolbar">
|
||||
|
||||
<a id="downloadButton"><img class="mochaToolButton" title="QBT_TR(Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]" src="images/insert-link.svg" alt="QBT_TR(Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="uploadButton"><img class="mochaToolButton" title="QBT_TR(Add Torrent File...)QBT_TR[CONTEXT=MainWindow]" src="images/list-add.svg" alt="QBT_TR(Add Torrent File...)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="deleteButton" class="divider"><img class="mochaToolButton" title="QBT_TR(Remove)QBT_TR[CONTEXT=TransferListWidget]" src="images/list-remove.svg" alt="QBT_TR(Remove)QBT_TR[CONTEXT=TransferListWidget]" width="24" height="24" /></a>
|
||||
<a id="resumeButton" class="divider"><img class="mochaToolButton" title="QBT_TR(Resume)QBT_TR[CONTEXT=TransferListWidget]" src="images/torrent-start.svg" alt="QBT_TR(Resume)QBT_TR[CONTEXT=TransferListWidget]" width="24" height="24" /></a>
|
||||
<a id="pauseButton"><img class="mochaToolButton" title="QBT_TR(Pause)QBT_TR[CONTEXT=TransferListWidget]" src="images/torrent-stop.svg" alt="QBT_TR(Pause)QBT_TR[CONTEXT=TransferListWidget]" width="24" height="24" /></a>
|
||||
<a id="downloadButton"><img class="mochaToolButton" title="Add Torrent Link...)QBT_TR[CONTEXT=MainWindow]" src="images/insert-link.svg" alt="QBT_TR(Add Torrent Link..." width="24" height="24" /></a>
|
||||
<a id="uploadButton"><img class="mochaToolButton" title="Add Torrent File...)QBT_TR[CONTEXT=MainWindow]" src="images/list-add.svg" alt="QBT_TR(Add Torrent File..." width="24" height="24" /></a>
|
||||
<a id="deleteButton" class="divider"><img class="mochaToolButton" title="Remove)QBT_TR[CONTEXT=TransferListWidget]" src="images/list-remove.svg" alt="QBT_TR(Remove" width="24" height="24" /></a>
|
||||
<a id="resumeButton" class="divider"><img class="mochaToolButton" title="Resume)QBT_TR[CONTEXT=TransferListWidget]" src="images/torrent-start.svg" alt="QBT_TR(Resume" width="24" height="24" /></a>
|
||||
<a id="pauseButton"><img class="mochaToolButton" title="Pause)QBT_TR[CONTEXT=TransferListWidget]" src="images/torrent-stop.svg" alt="QBT_TR(Pause" width="24" height="24" /></a>
|
||||
<span id="queueingButtons">
|
||||
<a id="topPrioButton" class="divider"><img class="mochaToolButton" title="QBT_TR(Move to the top of the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-top.svg" alt="QBT_TR(Top of Queue)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="increasePrioButton"><img class="mochaToolButton" title="QBT_TR(Move up in the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-up.svg" alt="QBT_TR(Move Up Queue)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="decreasePrioButton"><img class="mochaToolButton" title="QBT_TR(Move down in the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-down.svg" alt="QBT_TR(Move Down Queue)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="bottomPrioButton"><img class="mochaToolButton" title="QBT_TR(Move to the bottom of the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-bottom.svg" alt="QBT_TR(Bottom of Queue)QBT_TR[CONTEXT=MainWindow]" width="24" height="24" /></a>
|
||||
<a id="topPrioButton" class="divider"><img class="mochaToolButton" title="Move to the top of the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-top.svg" alt="QBT_TR(Top of Queue" width="24" height="24" /></a>
|
||||
<a id="increasePrioButton"><img class="mochaToolButton" title="Move up in the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-up.svg" alt="QBT_TR(Move Up Queue" width="24" height="24" /></a>
|
||||
<a id="decreasePrioButton"><img class="mochaToolButton" title="Move down in the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-down.svg" alt="QBT_TR(Move Down Queue" width="24" height="24" /></a>
|
||||
<a id="bottomPrioButton"><img class="mochaToolButton" title="Move to the bottom of the queue)QBT_TR[CONTEXT=MainWindow]" src="images/go-bottom.svg" alt="QBT_TR(Bottom of Queue" width="24" height="24" /></a>
|
||||
</span>
|
||||
<a id="preferencesButton" class="divider"><img class="mochaToolButton" title="QBT_TR(Options)QBT_TR[CONTEXT=OptionsDialog]" src="images/configure.svg" alt="QBT_TR(Options)QBT_TR[CONTEXT=OptionsDialog]" width="24" height="24" /></a>
|
||||
<a id="preferencesButton" class="divider"><img class="mochaToolButton" title="Options)QBT_TR[CONTEXT=OptionsDialog]" src="images/configure.svg" alt="QBT_TR(Options" width="24" height="24" /></a>
|
||||
<div id="mainWindowTabs" class="toolbarTabs">
|
||||
<ul id="mainWindowTabsList" class="tab-menu">
|
||||
<li id="transfersTabLink" class="selected"><a class="tab">QBT_TR(Transfers)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="searchTabLink"><a class="tab">QBT_TR(Search)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="rssTabLink"><a class="tab">QBT_TR(RSS)QBT_TR[CONTEXT=MainWindow]</a></li>
|
||||
<li id="transfersTabLink" class="selected"><a class="tab">Transfers</a></li>
|
||||
<li id="searchTabLink"><a class="tab">Search</a></li>
|
||||
<li id="rssTabLink"><a class="tab">RSS</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
<div id="torrentsFilterToolbar">
|
||||
<input type="text" id="torrentsFilterInput" placeholder="QBT_TR(Filter torrent list...)QBT_TR[CONTEXT=MainWindow]" autocorrect="off" autocapitalize="none" />
|
||||
<input type="text" id="torrentsFilterInput" placeholder="Filter torrent list..." autocorrect="off" autocapitalize="none" />
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -128,98 +128,98 @@
|
||||
</div>
|
||||
</div>
|
||||
<ul id="torrentsTableMenu" class="contextMenu">
|
||||
<li><a href="#start"><img src="images/torrent-start.svg" alt="QBT_TR(Resume)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Resume)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#pause"><img src="images/torrent-stop.svg" alt="QBT_TR(Pause)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Pause)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#forceStart"><img src="images/torrent-start-forced.svg" alt="QBT_TR(Force Resume)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force Resume)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li class="separator"><a href="#delete"><img src="images/list-remove.svg" alt="QBT_TR(Remove)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Remove)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#start"><img src="images/torrent-start.svg" alt="Resume)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Resume</a></li>
|
||||
<li><a href="#pause"><img src="images/torrent-stop.svg" alt="Pause)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Pause</a></li>
|
||||
<li><a href="#forceStart"><img src="images/torrent-start-forced.svg" alt="Force Resume)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force Resume</a></li>
|
||||
<li class="separator"><a href="#delete"><img src="images/list-remove.svg" alt="Remove)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Remove</a></li>
|
||||
<li class="separator">
|
||||
<a href="#setLocation"><img src="images/set-location.svg" alt="QBT_TR(Set location...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Set location...)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#rename"><img src="images/edit-rename.svg" alt="QBT_TR(Rename...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Rename...)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#setLocation"><img src="images/set-location.svg" alt="Set location...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Set location...</a>
|
||||
<a href="#rename"><img src="images/edit-rename.svg" alt="Rename...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Rename...</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Category" class="arrow-right"><img src="images/view-categories.svg" alt="QBT_TR(Category)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Category)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#Category" class="arrow-right"><img src="images/view-categories.svg" alt="Category)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Category</a>
|
||||
<ul id="contextCategoryList" class="scrollableMenu"></ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#Tags" class="arrow-right"><img src="images/tags.svg" alt="QBT_TR(Tags)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Tags)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#Tags" class="arrow-right"><img src="images/tags.svg" alt="Tags)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Tags</a>
|
||||
<ul id="contextTagList" class="scrollableMenu"></ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#autoTorrentManagement"><img src="images/checked-completed.svg" alt="QBT_TR(Automatic Torrent Management)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Automatic Torrent Management)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#autoTorrentManagement"><img src="images/checked-completed.svg" alt="Automatic Torrent Management)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Automatic Torrent Management</a>
|
||||
</li>
|
||||
<li class="separator"><a href="#downloadLimit"><img src="images/download.svg" alt="QBT_TR(Limit download rate...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit download rate...)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#uploadLimit"><img src="images/upload.svg" alt="QBT_TR(Limit upload rate...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit upload rate...)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#shareRatio"><img src="images/ratio.svg" alt="QBT_TR(Limit share ratio...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit share ratio...)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#superSeeding"><img src="images/checked-completed.svg" alt="QBT_TR(Super seeding mode)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Super seeding mode)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li class="separator"><a href="#sequentialDownload"><img src="images/checked-completed.svg" alt="QBT_TR(Download in sequential order)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Download in sequential order)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#firstLastPiecePrio"><img src="images/checked-completed.svg" alt="QBT_TR(Download first and last pieces first)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Download first and last pieces first)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li class="separator"><a href="#forceRecheck"><img src="images/force-recheck.svg" alt="QBT_TR(Force recheck)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force recheck)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#forceReannounce"><img src="images/reannounce.svg" alt="QBT_TR(Force reannounce)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force reannounce)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li class="separator"><a href="#downloadLimit"><img src="images/download.svg" alt="Limit download rate...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit download rate...</a></li>
|
||||
<li><a href="#uploadLimit"><img src="images/upload.svg" alt="Limit upload rate...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit upload rate...</a></li>
|
||||
<li><a href="#shareRatio"><img src="images/ratio.svg" alt="Limit share ratio...)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Limit share ratio...</a></li>
|
||||
<li><a href="#superSeeding"><img src="images/checked-completed.svg" alt="Super seeding mode)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Super seeding mode</a></li>
|
||||
<li class="separator"><a href="#sequentialDownload"><img src="images/checked-completed.svg" alt="Download in sequential order)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Download in sequential order</a></li>
|
||||
<li><a href="#firstLastPiecePrio"><img src="images/checked-completed.svg" alt="Download first and last pieces first)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Download first and last pieces first</a></li>
|
||||
<li class="separator"><a href="#forceRecheck"><img src="images/force-recheck.svg" alt="Force recheck)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force recheck</a></li>
|
||||
<li><a href="#forceReannounce"><img src="images/reannounce.svg" alt="Force reannounce)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Force reannounce</a></li>
|
||||
<li id="queueingMenuItems" class="separator">
|
||||
<a href="#queue" class="arrow-right"><span style="display: inline-block; width:16px"></span> QBT_TR(Queue)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#queue" class="arrow-right"><span style="display: inline-block; width:16px"></span> Queue</a>
|
||||
<ul>
|
||||
<li><a href="#queueTop"><img src="images/go-top.svg" alt="QBT_TR(Move to top)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move to top)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#queueUp"><img src="images/go-up.svg" alt="QBT_TR(Move up)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move up)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#queueDown"><img src="images/go-down.svg" alt="QBT_TR(Move down)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move down)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#queueBottom"><img src="images/go-bottom.svg" alt="QBT_TR(Move to bottom)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move to bottom)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#queueTop"><img src="images/go-top.svg" alt="Move to top)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move to top</a></li>
|
||||
<li><a href="#queueUp"><img src="images/go-up.svg" alt="Move up)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move up</a></li>
|
||||
<li><a href="#queueDown"><img src="images/go-down.svg" alt="Move down)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move down</a></li>
|
||||
<li><a href="#queueBottom"><img src="images/go-bottom.svg" alt="Move to bottom)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Move to bottom</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#" class="arrow-right"><img src="images/edit-copy.svg" alt="QBT_TR(Copy)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Copy)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#" class="arrow-right"><img src="images/edit-copy.svg" alt="Copy)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Copy</a>
|
||||
<ul>
|
||||
<li><a href="#" id="copyName" class="copyToClipboard"><img src="images/name.svg" alt="QBT_TR(Name)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Name)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#" id="copyInfohash1" class="copyToClipboard"><img src="images/hash.svg" alt="QBT_TR(Info hash v1)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Info hash v1)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#" id="copyInfohash2" class="copyToClipboard"><img src="images/hash.svg" alt="QBT_TR(Info hash v2)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Info hash v2)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#" id="copyMagnetLink" class="copyToClipboard"><img src="images/torrent-magnet.svg" alt="QBT_TR(Magnet link)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Magnet link)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#" id="copyID" class="copyToClipboard"><img src="images/help-about.svg" alt="QBT_TR(Torrent ID)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Torrent ID)QBT_TR[CONTEXT=TransferListWidget]</a></li>
|
||||
<li><a href="#" id="copyName" class="copyToClipboard"><img src="images/name.svg" alt="Name)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Name</a></li>
|
||||
<li><a href="#" id="copyInfohash1" class="copyToClipboard"><img src="images/hash.svg" alt="Info hash v1)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Info hash v1</a></li>
|
||||
<li><a href="#" id="copyInfohash2" class="copyToClipboard"><img src="images/hash.svg" alt="Info hash v2)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Info hash v2</a></li>
|
||||
<li><a href="#" id="copyMagnetLink" class="copyToClipboard"><img src="images/torrent-magnet.svg" alt="Magnet link)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Magnet link</a></li>
|
||||
<li><a href="#" id="copyID" class="copyToClipboard"><img src="images/help-about.svg" alt="Torrent ID)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Torrent ID</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#exportTorrent"><img src="images/edit-copy.svg" alt="QBT_TR(Export .torrent)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Export .torrent)QBT_TR[CONTEXT=TransferListWidget]</a>
|
||||
<a href="#exportTorrent"><img src="images/edit-copy.svg" alt="Export .torrent)QBT_TR[CONTEXT=TransferListWidget]" /> QBT_TR(Export .torrent</a>
|
||||
</li>
|
||||
</ul>
|
||||
<ul id="categoriesFilterMenu" class="contextMenu">
|
||||
<li><a href="#createCategory"><img src="images/list-add.svg" alt="QBT_TR(Add category...)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Add category...)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#editCategory"><img src="images/edit-rename.svg" alt="QBT_TR(Edit category...)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Edit category...)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#deleteCategory"><img src="images/list-remove.svg" alt="QBT_TR(Remove category)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove category)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#deleteUnusedCategories"><img src="images/list-remove.svg" alt="QBT_TR(Remove unused categories)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove unused categories)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li class="separator"><a href="#startTorrentsByCategory"><img src="images/torrent-start.svg" alt="QBT_TR(Resume torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Resume torrents)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#pauseTorrentsByCategory"><img src="images/torrent-stop.svg" alt="QBT_TR(Pause torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Pause torrents)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#deleteTorrentsByCategory"><img src="images/list-remove.svg" alt="QBT_TR(Remove torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove torrents)QBT_TR[CONTEXT=CategoryFilterWidget]</a></li>
|
||||
<li><a href="#createCategory"><img src="images/list-add.svg" alt="Add category...)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Add category...</a></li>
|
||||
<li><a href="#editCategory"><img src="images/edit-rename.svg" alt="Edit category...)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Edit category...</a></li>
|
||||
<li><a href="#deleteCategory"><img src="images/list-remove.svg" alt="Remove category)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove category</a></li>
|
||||
<li><a href="#deleteUnusedCategories"><img src="images/list-remove.svg" alt="Remove unused categories)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove unused categories</a></li>
|
||||
<li class="separator"><a href="#startTorrentsByCategory"><img src="images/torrent-start.svg" alt="Resume torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Resume torrents</a></li>
|
||||
<li><a href="#pauseTorrentsByCategory"><img src="images/torrent-stop.svg" alt="Pause torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Pause torrents</a></li>
|
||||
<li><a href="#deleteTorrentsByCategory"><img src="images/list-remove.svg" alt="Remove torrents)QBT_TR[CONTEXT=CategoryFilterWidget]" /> QBT_TR(Remove torrents</a></li>
|
||||
</ul>
|
||||
<ul id="tagsFilterMenu" class="contextMenu">
|
||||
<li><a href="#createTag"><img src="images/list-add.svg" alt="QBT_TR(Add tag...)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Add tag...)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li><a href="#deleteTag"><img src="images/list-remove.svg" alt="QBT_TR(Remove tag)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove tag)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li><a href="#deleteUnusedTags"><img src="images/list-remove.svg" alt="QBT_TR(Remove unused tags)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove unused tags)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li class="separator"><a href="#startTorrentsByTag"><img src="images/torrent-start.svg" alt="QBT_TR(Resume torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Resume torrents)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li><a href="#pauseTorrentsByTag"><img src="images/torrent-stop.svg" alt="QBT_TR(Pause torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Pause torrents)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li><a href="#deleteTorrentsByTag"><img src="images/list-remove.svg" alt="QBT_TR(Remove torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove torrents)QBT_TR[CONTEXT=TagFilterWidget]</a></li>
|
||||
<li><a href="#createTag"><img src="images/list-add.svg" alt="Add tag...)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Add tag...</a></li>
|
||||
<li><a href="#deleteTag"><img src="images/list-remove.svg" alt="Remove tag)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove tag</a></li>
|
||||
<li><a href="#deleteUnusedTags"><img src="images/list-remove.svg" alt="Remove unused tags)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove unused tags</a></li>
|
||||
<li class="separator"><a href="#startTorrentsByTag"><img src="images/torrent-start.svg" alt="Resume torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Resume torrents</a></li>
|
||||
<li><a href="#pauseTorrentsByTag"><img src="images/torrent-stop.svg" alt="Pause torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Pause torrents</a></li>
|
||||
<li><a href="#deleteTorrentsByTag"><img src="images/list-remove.svg" alt="Remove torrents)QBT_TR[CONTEXT=TagFilterWidget]" /> QBT_TR(Remove torrents</a></li>
|
||||
</ul>
|
||||
<ul id="trackersFilterMenu" class="contextMenu">
|
||||
<li><a href="#resumeTorrentsByTracker"><img src="images/torrent-start.svg" alt="QBT_TR(Resume torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Resume torrents)QBT_TR[CONTEXT=TrackerFiltersList]</a></li>
|
||||
<li><a href="#pauseTorrentsByTracker"><img src="images/torrent-stop.svg" alt="QBT_TR(Pause torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Pause torrents)QBT_TR[CONTEXT=TrackerFiltersList]</a></li>
|
||||
<li><a href="#deleteTorrentsByTracker"><img src="images/list-remove.svg" alt="QBT_TR(Remove torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Remove torrents)QBT_TR[CONTEXT=TrackerFiltersList]</a></li>
|
||||
<li><a href="#resumeTorrentsByTracker"><img src="images/torrent-start.svg" alt="Resume torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Resume torrents</a></li>
|
||||
<li><a href="#pauseTorrentsByTracker"><img src="images/torrent-stop.svg" alt="Pause torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Pause torrents</a></li>
|
||||
<li><a href="#deleteTorrentsByTracker"><img src="images/list-remove.svg" alt="Remove torrents)QBT_TR[CONTEXT=TrackerFiltersList]" /> QBT_TR(Remove torrents</a></li>
|
||||
</ul>
|
||||
<ul id="torrentTrackersMenu" class="contextMenu">
|
||||
<li><a href="#AddTracker"><img src="images/list-add.svg" alt="QBT_TR(Add trackers...)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Add trackers...)QBT_TR[CONTEXT=TrackerListWidget]</a></li>
|
||||
<li class="separator"><a href="#EditTracker"><img src="images/edit-rename.svg" alt="QBT_TR(Edit tracker URL...)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Edit tracker URL...)QBT_TR[CONTEXT=TrackerListWidget]</a></li>
|
||||
<li><a href="#RemoveTracker"><img src="images/list-remove.svg" alt="QBT_TR(Remove tracker)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Remove tracker)QBT_TR[CONTEXT=TrackerListWidget]</a></li>
|
||||
<li><a href="#CopyTrackerUrl" id="CopyTrackerUrl"><img src="images/edit-copy.svg" alt="QBT_TR(Copy tracker URL)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Copy tracker URL)QBT_TR[CONTEXT=TrackerListWidget]</a></li>
|
||||
<li><a href="#AddTracker"><img src="images/list-add.svg" alt="Add trackers...)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Add trackers...</a></li>
|
||||
<li class="separator"><a href="#EditTracker"><img src="images/edit-rename.svg" alt="Edit tracker URL...)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Edit tracker URL...</a></li>
|
||||
<li><a href="#RemoveTracker"><img src="images/list-remove.svg" alt="Remove tracker)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Remove tracker</a></li>
|
||||
<li><a href="#CopyTrackerUrl" id="CopyTrackerUrl"><img src="images/edit-copy.svg" alt="Copy tracker URL)QBT_TR[CONTEXT=TrackerListWidget]" /> QBT_TR(Copy tracker URL</a></li>
|
||||
</ul>
|
||||
<ul id="torrentPeersMenu" class="contextMenu">
|
||||
<li><a href="#addPeer"><img src="images/peers-add.svg" alt="QBT_TR(Add peers...)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Add peers...)QBT_TR[CONTEXT=PeerListWidget]</a></li>
|
||||
<li><a href="#copyPeer" id="CopyPeerInfo"><img src="images/edit-copy.svg" alt="QBT_TR(Copy IP:port)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Copy IP:port)QBT_TR[CONTEXT=PeerListWidget]</a></li>
|
||||
<li class="separator"><a href="#banPeer"><img src="images/peers-remove.svg" alt="QBT_TR(Ban peer permanently)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Ban peer permanently)QBT_TR[CONTEXT=PeerListWidget]</a></li>
|
||||
<li><a href="#addPeer"><img src="images/peers-add.svg" alt="Add peers...)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Add peers...</a></li>
|
||||
<li><a href="#copyPeer" id="CopyPeerInfo"><img src="images/edit-copy.svg" alt="Copy IP:port)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Copy IP:port</a></li>
|
||||
<li class="separator"><a href="#banPeer"><img src="images/peers-remove.svg" alt="Ban peer permanently)QBT_TR[CONTEXT=PeerListWidget]" /> QBT_TR(Ban peer permanently</a></li>
|
||||
</ul>
|
||||
<ul id="torrentFilesMenu" class="contextMenu">
|
||||
<li><a href="#Rename"><img src="images/edit-rename.svg" alt="QBT_TR(Rename...)QBT_TR[CONTEXT=PropertiesWidget]" /> QBT_TR(Rename...)QBT_TR[CONTEXT=PropertiesWidget]</a></li>
|
||||
<li><a href="#Rename"><img src="images/edit-rename.svg" alt="Rename...)QBT_TR[CONTEXT=PropertiesWidget]" /> QBT_TR(Rename...</a></li>
|
||||
<li class="separator">
|
||||
<a href="#FilePrio" class="arrow-right"><span style="display: inline-block; width: 16px;"></span> QBT_TR(Priority)QBT_TR[CONTEXT=PropertiesWidget]</a>
|
||||
<a href="#FilePrio" class="arrow-right"><span style="display: inline-block; width: 16px;"></span> Priority</a>
|
||||
<ul>
|
||||
<li><a href="#FilePrioIgnore"><span style="display: inline-block; width: 16px;"></span> QBT_TR(Do not download)QBT_TR[CONTEXT=PropListDelegate]</a></li>
|
||||
<li><a href="#FilePrioNormal"><span style="display: inline-block; width: 16px;"></span> QBT_TR(Normal)QBT_TR[CONTEXT=PropListDelegate]</a></li>
|
||||
<li><a href="#FilePrioHigh"><span style="display: inline-block; width: 16px;"></span> QBT_TR(High)QBT_TR[CONTEXT=PropListDelegate]</a></li>
|
||||
<li><a href="#FilePrioMaximum"><span style="display: inline-block; width: 16px;"></span> QBT_TR(Maximum)QBT_TR[CONTEXT=PropListDelegate]</a></li>
|
||||
<li><a href="#FilePrioIgnore"><span style="display: inline-block; width: 16px;"></span> Do not download</a></li>
|
||||
<li><a href="#FilePrioNormal"><span style="display: inline-block; width: 16px;"></span> Normal</a></li>
|
||||
<li><a href="#FilePrioHigh"><span style="display: inline-block; width: 16px;"></span> High</a></li>
|
||||
<li><a href="#FilePrioMaximum"><span style="display: inline-block; width: 16px;"></span> Maximum</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -232,13 +232,13 @@
|
||||
<td class="statusBarSeparator"></td>
|
||||
<td id="DHTNodes"></td>
|
||||
<td class="statusBarSeparator"></td>
|
||||
<td><img id="connectionStatus" alt="QBT_TR(Connection status)QBT_TR[CONTEXT=MainWindow]" title="QBT_TR(Connection status)QBT_TR[CONTEXT=MainWindow]" src="images/firewalled.svg" style="height: 1.5em;" /></td>
|
||||
<td><img id="connectionStatus" alt="Connection status)QBT_TR[CONTEXT=MainWindow]" title="QBT_TR(Connection status" src="images/firewalled.svg" style="height: 1.5em;" /></td>
|
||||
<td class="statusBarSeparator"></td>
|
||||
<td style="cursor:pointer;"><img id="alternativeSpeedLimits" alt="QBT_TR(Alternative speed limits)QBT_TR[CONTEXT=MainWindow]" title="QBT_TR(Alternative speed limits)QBT_TR[CONTEXT=MainWindow]" src="images/slow_off.svg" style="height: 1.5em;" /></td>
|
||||
<td style="cursor:pointer;"><img id="alternativeSpeedLimits" alt="Alternative speed limits)QBT_TR[CONTEXT=MainWindow]" title="QBT_TR(Alternative speed limits" src="images/slow_off.svg" style="height: 1.5em;" /></td>
|
||||
<td class="statusBarSeparator"></td>
|
||||
<td class="speedLabel"><img src="images/downloading.svg" alt="QBT_TR(Download speed icon)QBT_TR[CONTEXT=MainWindow]" style="height: 1.5em; padding-right: 5px; margin-bottom: -4px;"><span id="DlInfos"></span></td>
|
||||
<td class="speedLabel"><img src="images/downloading.svg" alt="Download speed icon" style="height: 1.5em; padding-right: 5px; margin-bottom: -4px;"><span id="DlInfos"></span></td>
|
||||
<td class="statusBarSeparator"></td>
|
||||
<td class="speedLabel"><img src="images/upload.svg" alt="QBT_TR(Upload speed icon)QBT_TR[CONTEXT=MainWindow]" style="height: 1.4em; padding-right: 5px; margin-bottom: -4px;"><span id="UpInfos"></span></td>
|
||||
<td class="speedLabel"><img src="images/upload.svg" alt="Upload speed icon" style="height: 1.4em; padding-right: 5px; margin-bottom: -4px;"><span id="UpInfos"></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(New Category)QBT_TR[CONTEXT=TransferListWidget]</title>
|
||||
<title>New Category</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>
|
||||
@ -58,7 +58,7 @@
|
||||
if ((name === null) || (name === ""))
|
||||
return false;
|
||||
if (name.match("^([^\\\\\\/]|[^\\\\\\/]([^\\\\\\/]|\\/(?=[^\\/]))*[^\\\\\\/])$") === null) {
|
||||
alert("QBT_TR(Invalid category name:\nPlease do not use any special characters in the category name.)QBT_TR[CONTEXT=HttpServer]");
|
||||
alert("Invalid category name:\nPlease do not use any special characters in the category name.");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@ -90,7 +90,7 @@
|
||||
}).send();
|
||||
},
|
||||
onFailure: function() {
|
||||
alert("QBT_TR(Unable to create category)QBT_TR[CONTEXT=HttpServer] " + window.qBittorrent.Misc.escapeHtml(categoryName));
|
||||
alert("Unable to create category " + window.qBittorrent.Misc.escapeHtml(categoryName));
|
||||
}
|
||||
}).send();
|
||||
break;
|
||||
@ -131,12 +131,12 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(Category)QBT_TR[CONTEXT=TransferListWidget]:</p>
|
||||
<p style="font-weight: bold;">Category:</p>
|
||||
<input type="text" id="categoryName" style="width: 99%;" />
|
||||
<p style="font-weight: bold;">QBT_TR(Save path)QBT_TR[CONTEXT=TransferListWidget]:</p>
|
||||
<p style="font-weight: bold;">Save path:</p>
|
||||
<input type="text" id="savePath" style="width: 99%;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Add)QBT_TR[CONTEXT=HttpServer]" id="categoryNameButton" />
|
||||
<input type="button" value="Add" id="categoryNameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Please type a RSS feed URL)QBT_TR[CONTEXT=RSSWidget]</title>
|
||||
<title>Please type a RSS feed URL</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>
|
||||
@ -36,7 +36,7 @@
|
||||
// check field
|
||||
const feedURL = $('feedURL').value.trim();
|
||||
if (feedURL === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -67,10 +67,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(Feed URL:)QBT_TR[CONTEXT=RSSWidget]</p>
|
||||
<p style="font-weight: bold;">Feed URL:</p>
|
||||
<input type="text" id="feedURL" style="width: 320px;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(OK)QBT_TR[CONTEXT=HttpServer]" id="submitButton" />
|
||||
<input type="button" value="OK" id="submitButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Please choose a folder name)QBT_TR[CONTEXT=RSSWidget]</title>
|
||||
<title>Please choose a folder name</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>
|
||||
@ -36,7 +36,7 @@
|
||||
// check field
|
||||
const folderName = $('folderName').value.trim();
|
||||
if (folderName === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -66,10 +66,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(Folder name:)QBT_TR[CONTEXT=RSSWidget]</p>
|
||||
<p style="font-weight: bold;">Folder name:</p>
|
||||
<input type="text" id="folderName" style="width: 320px;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(OK)QBT_TR[CONTEXT=HttpServer]" id="submitButton" />
|
||||
<input type="button" value="OK" id="submitButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(New rule name)QBT_TR[CONTEXT=AutomatedRssDownloader]</title>
|
||||
<title>New rule name</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>
|
||||
@ -35,7 +35,7 @@
|
||||
// check field
|
||||
const name = $('name').value.trim();
|
||||
if (name === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
$('submitButton').disabled = true;
|
||||
@ -59,10 +59,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(Please type the name of the new download rule.)QBT_TR[CONTEXT=AutomatedRssDownloader]</p>
|
||||
<p>Please type the name of the new download rule.</p>
|
||||
<input type="text" id="name" style="width: 320px;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(OK)QBT_TR[CONTEXT=HttpServer]" id="submitButton" />
|
||||
<input type="button" value="OK" id="submitButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Add Tags)QBT_TR[CONTEXT=TransferListWidget]</title>
|
||||
<title>Add Tags</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>
|
||||
@ -34,7 +34,7 @@
|
||||
const uriHashes = window.qBittorrent.Misc.safeTrim(new URI().getData('hashes'));
|
||||
|
||||
if (uriAction === 'create')
|
||||
$('legendText').innerText = 'QBT_TR(Tag:)QBT_TR[CONTEXT=TagFilterWidget]';
|
||||
$('legendText').innerText = 'Tag:';
|
||||
|
||||
$('tagName').focus();
|
||||
|
||||
@ -47,7 +47,7 @@
|
||||
if ((name === null) || (name === ""))
|
||||
return false;
|
||||
if (name.indexOf(",") >= 0) {
|
||||
alert("QBT_TR(Invalid tag name)QBT_TR[CONTEXT=TagFilterWidget]");
|
||||
alert("Invalid tag name");
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
@ -94,10 +94,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p id="legendText" style="font-weight: bold;">QBT_TR(Comma-separated tags:)QBT_TR[CONTEXT=TransferListWidget]</p>
|
||||
<p id="legendText" style="font-weight: bold;">Comma-separated tags:</p>
|
||||
<input type="text" id="tagName" style="width: 99%;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Add)QBT_TR[CONTEXT=HttpServer]" id="tagNameButton" />
|
||||
<input type="button" value="Add" id="tagNameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Rename)QBT_TR[CONTEXT=TransferListWidget]</title>
|
||||
<title>Rename</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>
|
||||
@ -64,10 +64,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(New name)QBT_TR[CONTEXT=TransferListWidget]:</p>
|
||||
<p style="font-weight: bold;">New name:</p>
|
||||
<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" />
|
||||
<input type="button" value="Save" id="renameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Please choose a new name for this RSS feed)QBT_TR[CONTEXT=RSSWidget]</title>
|
||||
<title>Please choose a new name for this RSS feed</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>
|
||||
@ -40,12 +40,12 @@
|
||||
// check field
|
||||
const newPath = $('rename').value.trim();
|
||||
if (newPath === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
|
||||
if (newPath === oldPath) {
|
||||
alert('QBT_TR(Name is unchanged)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name is unchanged');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -77,10 +77,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(New feed name:)QBT_TR[CONTEXT=RSSWidget]</p>
|
||||
<p style="font-weight: bold;">New feed name:</p>
|
||||
<input type="text" id="rename" style="width: 320px;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="renameButton" />
|
||||
<input type="button" value="Save" id="renameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Renaming)QBT_TR[CONTEXT=TorrentContentTreeView]</title>
|
||||
<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>
|
||||
@ -46,12 +46,12 @@
|
||||
// check field
|
||||
const newName = $('rename').value.trim();
|
||||
if (newName === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
|
||||
if (newName === oldName) {
|
||||
alert('QBT_TR(Name is unchanged)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name is unchanged');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -73,7 +73,7 @@
|
||||
window.parent.closeWindows();
|
||||
},
|
||||
onFailure: function() {
|
||||
alert('QBT_TR(Failed to update name)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Failed to update name');
|
||||
$('renameButton').disabled = false;
|
||||
}
|
||||
}).send();
|
||||
@ -84,10 +84,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(New name:)QBT_TR[CONTEXT=TorrentContentTreeView]</p>
|
||||
<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="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="renameButton" />
|
||||
<input type="button" value="Save" id="renameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Rule renaming)QBT_TR[CONTEXT=AutomatedRssDownloader]</title>
|
||||
<title>Rule 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>
|
||||
@ -40,12 +40,12 @@
|
||||
// check field
|
||||
const newName = $('rename').value.trim();
|
||||
if (newName === '') {
|
||||
alert('QBT_TR(Name cannot be empty)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name cannot be empty');
|
||||
return;
|
||||
}
|
||||
|
||||
if (newName === oldName) {
|
||||
alert('QBT_TR(Name is unchanged)QBT_TR[CONTEXT=HttpServer]');
|
||||
alert('Name is unchanged');
|
||||
return;
|
||||
}
|
||||
|
||||
@ -70,10 +70,10 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p>QBT_TR(Please type the new rule name)QBT_TR[CONTEXT=AutomatedRssDownloader]</p>
|
||||
<p>Please type the new rule name</p>
|
||||
<input type="text" id="rename" style="width: 320px;" />
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="renameButton" />
|
||||
<input type="button" value="Save" id="renameButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -393,19 +393,19 @@ window.addEvent('load', function() {
|
||||
};
|
||||
|
||||
const updateFiltersList = function() {
|
||||
updateFilter('all', 'QBT_TR(All (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('downloading', 'QBT_TR(Downloading (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('seeding', 'QBT_TR(Seeding (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('completed', 'QBT_TR(Completed (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('resumed', 'QBT_TR(Resumed (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('paused', 'QBT_TR(Paused (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('active', 'QBT_TR(Active (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('inactive', 'QBT_TR(Inactive (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('stalled', 'QBT_TR(Stalled (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('stalled_uploading', 'QBT_TR(Stalled Uploading (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('stalled_downloading', 'QBT_TR(Stalled Downloading (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('checking', 'QBT_TR(Checking (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('errored', 'QBT_TR(Errored (%1))QBT_TR[CONTEXT=StatusFilterWidget]');
|
||||
updateFilter('all', 'All (%1)');
|
||||
updateFilter('downloading', 'Downloading (%1)');
|
||||
updateFilter('seeding', 'Seeding (%1)');
|
||||
updateFilter('completed', 'Completed (%1)');
|
||||
updateFilter('resumed', 'Resumed (%1)');
|
||||
updateFilter('paused', 'Paused (%1)');
|
||||
updateFilter('active', 'Active (%1)');
|
||||
updateFilter('inactive', 'Inactive (%1)');
|
||||
updateFilter('stalled', 'Stalled (%1)');
|
||||
updateFilter('stalled_uploading', 'Stalled Uploading (%1)');
|
||||
updateFilter('stalled_downloading', 'Stalled Downloading (%1)');
|
||||
updateFilter('checking', 'Checking (%1)');
|
||||
updateFilter('errored', 'Errored (%1)');
|
||||
};
|
||||
|
||||
const updateCategoryList = function() {
|
||||
@ -432,8 +432,8 @@ window.addEvent('load', function() {
|
||||
if (row['full_data'].category.length === 0)
|
||||
uncategorized += 1;
|
||||
});
|
||||
categoryList.appendChild(create_link(CATEGORIES_ALL, 'QBT_TR(All)QBT_TR[CONTEXT=CategoryFilterModel]', all));
|
||||
categoryList.appendChild(create_link(CATEGORIES_UNCATEGORIZED, 'QBT_TR(Uncategorized)QBT_TR[CONTEXT=CategoryFilterModel]', uncategorized));
|
||||
categoryList.appendChild(create_link(CATEGORIES_ALL, 'All', all));
|
||||
categoryList.appendChild(create_link(CATEGORIES_UNCATEGORIZED, 'Uncategorized', uncategorized));
|
||||
|
||||
const sortedCategories = [];
|
||||
Object.each(category_list, function(category) {
|
||||
@ -489,8 +489,8 @@ window.addEvent('load', function() {
|
||||
if (Object.prototype.hasOwnProperty.call(torrentsTable.rows, key) && (torrentsTable.rows[key]['full_data'].tags.length === 0))
|
||||
untagged += 1;
|
||||
}
|
||||
tagFilterList.appendChild(createLink(TAGS_ALL, 'QBT_TR(All)QBT_TR[CONTEXT=TagFilterModel]', torrentsCount));
|
||||
tagFilterList.appendChild(createLink(TAGS_UNTAGGED, 'QBT_TR(Untagged)QBT_TR[CONTEXT=TagFilterModel]', untagged));
|
||||
tagFilterList.appendChild(createLink(TAGS_ALL, 'All', torrentsCount));
|
||||
tagFilterList.appendChild(createLink(TAGS_UNTAGGED, 'Untagged', untagged));
|
||||
|
||||
const sortedTags = [];
|
||||
for (const key in tagList)
|
||||
@ -538,13 +538,13 @@ window.addEvent('load', function() {
|
||||
};
|
||||
|
||||
const torrentsCount = torrentsTable.getRowIds().length;
|
||||
trackerFilterList.appendChild(createLink(TRACKERS_ALL, 'QBT_TR(All (%1))QBT_TR[CONTEXT=TrackerFiltersList]', torrentsCount));
|
||||
trackerFilterList.appendChild(createLink(TRACKERS_ALL, 'All (%1)', torrentsCount));
|
||||
let trackerlessTorrentsCount = 0;
|
||||
for (const key in torrentsTable.rows) {
|
||||
if (Object.prototype.hasOwnProperty.call(torrentsTable.rows, key) && (torrentsTable.rows[key]['full_data'].trackers_count === 0))
|
||||
trackerlessTorrentsCount += 1;
|
||||
}
|
||||
trackerFilterList.appendChild(createLink(TRACKERS_TRACKERLESS, 'QBT_TR(Trackerless (%1))QBT_TR[CONTEXT=TrackerFiltersList]', trackerlessTorrentsCount));
|
||||
trackerFilterList.appendChild(createLink(TRACKERS_TRACKERLESS, 'Trackerless (%1)', trackerlessTorrentsCount));
|
||||
|
||||
for (const [hash, tracker] of trackerList)
|
||||
trackerFilterList.appendChild(createLink(hash, tracker.url + ' (%1)', tracker.torrents.length));
|
||||
@ -573,7 +573,7 @@ window.addEvent('load', function() {
|
||||
onFailure: function() {
|
||||
const errorDiv = $('error_div');
|
||||
if (errorDiv)
|
||||
errorDiv.set('html', 'QBT_TR(qBittorrent client is not reachable)QBT_TR[CONTEXT=HttpServer]');
|
||||
errorDiv.set('html', 'qBittorrent client is not reachable');
|
||||
syncRequestInProgress = false;
|
||||
syncData(2000);
|
||||
},
|
||||
@ -741,13 +741,13 @@ window.addEvent('load', function() {
|
||||
transfer_info += " (" + window.qBittorrent.Misc.friendlyUnit(serverState.up_info_data, false) + ")";
|
||||
$("UpInfos").set('html', transfer_info);
|
||||
if (speedInTitle) {
|
||||
document.title = "QBT_TR([D: %1, U: %2] qBittorrent %3)QBT_TR[CONTEXT=MainWindow]".replace("%1", window.qBittorrent.Misc.friendlyUnit(serverState.dl_info_speed, true)).replace("%2", window.qBittorrent.Misc.friendlyUnit(serverState.up_info_speed, true)).replace("%3", qbtVersion());
|
||||
document.title += " QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]";
|
||||
document.title = "[D: %1, U: %2] qBittorrent %3".replace("%1", window.qBittorrent.Misc.friendlyUnit(serverState.dl_info_speed, true)).replace("%2", window.qBittorrent.Misc.friendlyUnit(serverState.up_info_speed, true)).replace("%3", qbtVersion());
|
||||
document.title += " Web UI";
|
||||
}
|
||||
else
|
||||
document.title = ("qBittorrent " + qbtVersion() + " QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]");
|
||||
$('freeSpaceOnDisk').set('html', 'QBT_TR(Free space: %1)QBT_TR[CONTEXT=HttpServer]'.replace("%1", window.qBittorrent.Misc.friendlyUnit(serverState.free_space_on_disk)));
|
||||
$('DHTNodes').set('html', 'QBT_TR(DHT: %1 nodes)QBT_TR[CONTEXT=StatusBar]'.replace("%1", serverState.dht_nodes));
|
||||
document.title = ("qBittorrent " + qbtVersion() + " Web UI");
|
||||
$('freeSpaceOnDisk').set('html', 'Free space: %1'.replace("%1", window.qBittorrent.Misc.friendlyUnit(serverState.free_space_on_disk)));
|
||||
$('DHTNodes').set('html', 'DHT: %1 nodes'.replace("%1", serverState.dht_nodes));
|
||||
|
||||
// Statistics dialog
|
||||
if (document.getElementById("statisticsContent")) {
|
||||
@ -768,15 +768,15 @@ window.addEvent('load', function() {
|
||||
switch (serverState.connection_status) {
|
||||
case 'connected':
|
||||
$('connectionStatus').src = 'images/connected.svg';
|
||||
$('connectionStatus').alt = 'QBT_TR(Connection status: Connected)QBT_TR[CONTEXT=MainWindow]';
|
||||
$('connectionStatus').alt = 'Connection status: Connected';
|
||||
break;
|
||||
case 'firewalled':
|
||||
$('connectionStatus').src = 'images/firewalled.svg';
|
||||
$('connectionStatus').alt = 'QBT_TR(Connection status: Firewalled)QBT_TR[CONTEXT=MainWindow]';
|
||||
$('connectionStatus').alt = 'Connection status: Firewalled';
|
||||
break;
|
||||
default:
|
||||
$('connectionStatus').src = 'images/disconnected.svg';
|
||||
$('connectionStatus').alt = 'QBT_TR(Connection status: Disconnected)QBT_TR[CONTEXT=MainWindow]';
|
||||
$('connectionStatus').alt = 'Connection status: Disconnected';
|
||||
break;
|
||||
}
|
||||
|
||||
@ -813,11 +813,11 @@ window.addEvent('load', function() {
|
||||
const updateAltSpeedIcon = function(enabled) {
|
||||
if (enabled) {
|
||||
$('alternativeSpeedLimits').src = 'images/slow.svg';
|
||||
$('alternativeSpeedLimits').alt = 'QBT_TR(Alternative speed limits: On)QBT_TR[CONTEXT=MainWindow]';
|
||||
$('alternativeSpeedLimits').alt = 'Alternative speed limits: On';
|
||||
}
|
||||
else {
|
||||
$('alternativeSpeedLimits').src = 'images/slow_off.svg';
|
||||
$('alternativeSpeedLimits').alt = 'QBT_TR(Alternative speed limits: Off)QBT_TR[CONTEXT=MainWindow]';
|
||||
$('alternativeSpeedLimits').alt = 'Alternative speed limits: Off';
|
||||
}
|
||||
};
|
||||
|
||||
@ -1217,7 +1217,7 @@ window.addEvent('load', function() {
|
||||
const id = 'uploadPage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Upload local torrent)QBT_TR[CONTEXT=HttpServer]",
|
||||
title: "Upload local torrent",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("upload.html").toString(),
|
||||
addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
|
||||
@ -1259,7 +1259,7 @@ window.addEvent('load', function() {
|
||||
const contentURI = new URI('download.html').setData("urls", urls.map(encodeURIComponent).join("|"));
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Download from URLs)QBT_TR[CONTEXT=downloadFromURL]",
|
||||
title: "Download from URLs",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: contentURI.toString(),
|
||||
addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
|
||||
@ -1283,9 +1283,9 @@ window.addEvent('load', function() {
|
||||
function registerMagnetHandler() {
|
||||
if (typeof navigator.registerProtocolHandler !== 'function') {
|
||||
if (window.location.protocol !== 'https:')
|
||||
alert("QBT_TR(To use this feature, the WebUI needs to be accessed over HTTPS)QBT_TR[CONTEXT=MainWindow]");
|
||||
alert("To use this feature, the WebUI needs to be accessed over HTTPS");
|
||||
else
|
||||
alert("QBT_TR(Your browser does not support this feature)QBT_TR[CONTEXT=MainWindow]");
|
||||
alert("Your browser does not support this feature");
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -433,10 +433,10 @@ window.qBittorrent.ContextMenu = (function() {
|
||||
const categoryList = $('contextCategoryList');
|
||||
categoryList.empty();
|
||||
categoryList.appendChild(new Element('li', {
|
||||
html: '<a href="javascript:torrentNewCategoryFN();"><img src="images/list-add.svg" alt="QBT_TR(New...)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(New...)QBT_TR[CONTEXT=TransferListWidget]</a>'
|
||||
html: '<a href="javascript:torrentNewCategoryFN();"><img src="images/list-add.svg" alt="New...)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(New...</a>'
|
||||
}));
|
||||
categoryList.appendChild(new Element('li', {
|
||||
html: '<a href="javascript:torrentSetCategoryFN(0);"><img src="images/edit-clear.svg" alt="QBT_TR(Reset)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Reset)QBT_TR[CONTEXT=TransferListWidget]</a>'
|
||||
html: '<a href="javascript:torrentSetCategoryFN(0);"><img src="images/edit-clear.svg" alt="Reset)QBT_TR[CONTEXT=TransferListWidget]"/> QBT_TR(Reset</a>'
|
||||
}));
|
||||
|
||||
const sortedCategories = [];
|
||||
@ -466,14 +466,14 @@ window.qBittorrent.ContextMenu = (function() {
|
||||
|
||||
contextTagList.appendChild(new Element('li', {
|
||||
html: '<a href="javascript:torrentAddTagsFN();">'
|
||||
+ '<img src="images/list-add.svg" alt="QBT_TR(Add...)QBT_TR[CONTEXT=TransferListWidget]"/>'
|
||||
+ ' QBT_TR(Add...)QBT_TR[CONTEXT=TransferListWidget]'
|
||||
+ '<img src="images/list-add.svg" alt="Add..."/>'
|
||||
+ ' Add...'
|
||||
+ '</a>'
|
||||
}));
|
||||
contextTagList.appendChild(new Element('li', {
|
||||
html: '<a href="javascript:torrentRemoveAllTagsFN();">'
|
||||
+ '<img src="images/edit-clear.svg" alt="QBT_TR(Remove All)QBT_TR[CONTEXT=TransferListWidget]"/>'
|
||||
+ ' QBT_TR(Remove All)QBT_TR[CONTEXT=TransferListWidget]'
|
||||
+ '<img src="images/edit-clear.svg" alt="Remove All"/>'
|
||||
+ ' Remove All'
|
||||
+ '</a>'
|
||||
}));
|
||||
|
||||
|
@ -889,36 +889,36 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
initColumns: function() {
|
||||
this.newColumn('priority', '', '#', 30, true);
|
||||
this.newColumn('state_icon', 'cursor: default', '', 22, true);
|
||||
this.newColumn('name', '', 'QBT_TR(Name)QBT_TR[CONTEXT=TransferListModel]', 200, true);
|
||||
this.newColumn('size', '', 'QBT_TR(Size)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('total_size', '', 'QBT_TR(Total Size)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('progress', '', 'QBT_TR(Done)QBT_TR[CONTEXT=TransferListModel]', 85, true);
|
||||
this.newColumn('status', '', 'QBT_TR(Status)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('num_seeds', '', 'QBT_TR(Seeds)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('num_leechs', '', 'QBT_TR(Peers)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('dlspeed', '', 'QBT_TR(Down Speed)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('upspeed', '', 'QBT_TR(Up Speed)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('eta', '', 'QBT_TR(ETA)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('ratio', '', 'QBT_TR(Ratio)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('category', '', 'QBT_TR(Category)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('tags', '', 'QBT_TR(Tags)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('added_on', '', 'QBT_TR(Added On)QBT_TR[CONTEXT=TransferListModel]', 100, true);
|
||||
this.newColumn('completion_on', '', 'QBT_TR(Completed On)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('tracker', '', 'QBT_TR(Tracker)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('dl_limit', '', 'QBT_TR(Down Limit)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('up_limit', '', 'QBT_TR(Up Limit)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('downloaded', '', 'QBT_TR(Downloaded)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('uploaded', '', 'QBT_TR(Uploaded)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('downloaded_session', '', 'QBT_TR(Session Download)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('uploaded_session', '', 'QBT_TR(Session Upload)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('amount_left', '', 'QBT_TR(Remaining)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('time_active', '', 'QBT_TR(Time Active)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('save_path', '', 'QBT_TR(Save path)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('completed', '', 'QBT_TR(Completed)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('max_ratio', '', 'QBT_TR(Ratio Limit)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('seen_complete', '', 'QBT_TR(Last Seen Complete)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('last_activity', '', 'QBT_TR(Last Activity)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('availability', '', 'QBT_TR(Availability)QBT_TR[CONTEXT=TransferListModel]', 100, false);
|
||||
this.newColumn('name', '', 'Name', 200, true);
|
||||
this.newColumn('size', '', 'Size', 100, true);
|
||||
this.newColumn('total_size', '', 'Total Size', 100, false);
|
||||
this.newColumn('progress', '', 'Done', 85, true);
|
||||
this.newColumn('status', '', 'Status', 100, true);
|
||||
this.newColumn('num_seeds', '', 'Seeds', 100, true);
|
||||
this.newColumn('num_leechs', '', 'Peers', 100, true);
|
||||
this.newColumn('dlspeed', '', 'Down Speed', 100, true);
|
||||
this.newColumn('upspeed', '', 'Up Speed', 100, true);
|
||||
this.newColumn('eta', '', 'ETA', 100, true);
|
||||
this.newColumn('ratio', '', 'Ratio', 100, true);
|
||||
this.newColumn('category', '', 'Category', 100, true);
|
||||
this.newColumn('tags', '', 'Tags', 100, true);
|
||||
this.newColumn('added_on', '', 'Added On', 100, true);
|
||||
this.newColumn('completion_on', '', 'Completed On', 100, false);
|
||||
this.newColumn('tracker', '', 'Tracker', 100, false);
|
||||
this.newColumn('dl_limit', '', 'Down Limit', 100, false);
|
||||
this.newColumn('up_limit', '', 'Up Limit', 100, false);
|
||||
this.newColumn('downloaded', '', 'Downloaded', 100, false);
|
||||
this.newColumn('uploaded', '', 'Uploaded', 100, false);
|
||||
this.newColumn('downloaded_session', '', 'Session Download', 100, false);
|
||||
this.newColumn('uploaded_session', '', 'Session Upload', 100, false);
|
||||
this.newColumn('amount_left', '', 'Remaining', 100, false);
|
||||
this.newColumn('time_active', '', 'Time Active', 100, false);
|
||||
this.newColumn('save_path', '', 'Save path', 100, false);
|
||||
this.newColumn('completed', '', 'Completed', 100, false);
|
||||
this.newColumn('max_ratio', '', 'Ratio Limit', 100, false);
|
||||
this.newColumn('seen_complete', '', 'Last Seen Complete', 100, false);
|
||||
this.newColumn('last_activity', '', 'Last Activity', 100, false);
|
||||
this.newColumn('availability', '', 'Availability', 100, false);
|
||||
|
||||
this.columns['state_icon'].onclick = '';
|
||||
this.columns['state_icon'].dataProperties[0] = 'state';
|
||||
@ -1013,58 +1013,58 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
let status;
|
||||
switch (state) {
|
||||
case "downloading":
|
||||
status = "QBT_TR(Downloading)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Downloading";
|
||||
break;
|
||||
case "stalledDL":
|
||||
status = "QBT_TR(Stalled)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Stalled";
|
||||
break;
|
||||
case "metaDL":
|
||||
status = "QBT_TR(Downloading metadata)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Downloading metadata";
|
||||
break;
|
||||
case "forcedMetaDL":
|
||||
status = "QBT_TR([F] Downloading metadata)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "[F] Downloading metadata";
|
||||
break;
|
||||
case "forcedDL":
|
||||
status = "QBT_TR([F] Downloading)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "[F] Downloading";
|
||||
break;
|
||||
case "uploading":
|
||||
case "stalledUP":
|
||||
status = "QBT_TR(Seeding)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Seeding";
|
||||
break;
|
||||
case "forcedUP":
|
||||
status = "QBT_TR([F] Seeding)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "[F] Seeding";
|
||||
break;
|
||||
case "queuedDL":
|
||||
case "queuedUP":
|
||||
status = "QBT_TR(Queued)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Queued";
|
||||
break;
|
||||
case "checkingDL":
|
||||
case "checkingUP":
|
||||
status = "QBT_TR(Checking)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Checking";
|
||||
break;
|
||||
case "queuedForChecking":
|
||||
status = "QBT_TR(Queued for checking)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Queued for checking";
|
||||
break;
|
||||
case "checkingResumeData":
|
||||
status = "QBT_TR(Checking resume data)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Checking resume data";
|
||||
break;
|
||||
case "pausedDL":
|
||||
status = "QBT_TR(Paused)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Paused";
|
||||
break;
|
||||
case "pausedUP":
|
||||
status = "QBT_TR(Completed)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Completed";
|
||||
break;
|
||||
case "moving":
|
||||
status = "QBT_TR(Moving)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Moving";
|
||||
break;
|
||||
case "missingFiles":
|
||||
status = "QBT_TR(Missing Files)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Missing Files";
|
||||
break;
|
||||
case "error":
|
||||
status = "QBT_TR(Errored)QBT_TR[CONTEXT=TransferListDelegate]";
|
||||
status = "Errored";
|
||||
break;
|
||||
default:
|
||||
status = "QBT_TR(Unknown)QBT_TR[CONTEXT=HttpServer]";
|
||||
status = "Unknown";
|
||||
}
|
||||
|
||||
td.set('text', status);
|
||||
@ -1275,7 +1275,7 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
const activeTime = this.getRowValue(row, 0);
|
||||
const seedingTime = this.getRowValue(row, 1);
|
||||
const time = (seedingTime > 0)
|
||||
? ('QBT_TR(%1 (seeded for %2))QBT_TR[CONTEXT=TransferListDelegate]'
|
||||
? ('%1 (seeded for %2)'
|
||||
.replace('%1', window.qBittorrent.Misc.friendlyDuration(activeTime))
|
||||
.replace('%2', window.qBittorrent.Misc.friendlyDuration(seedingTime)))
|
||||
: window.qBittorrent.Misc.friendlyDuration(activeTime);
|
||||
@ -1300,7 +1300,7 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
td.set('title', '∞');
|
||||
}
|
||||
else {
|
||||
const formattedVal = 'QBT_TR(%1 ago)QBT_TR[CONTEXT=TransferListDelegate]'.replace('%1', window.qBittorrent.Misc.friendlyDuration((new Date()) / 1000 - val));
|
||||
const formattedVal = '%1 ago'.replace('%1', window.qBittorrent.Misc.friendlyDuration((new Date()) / 1000 - val));
|
||||
td.set('text', formattedVal);
|
||||
td.set('title', formattedVal);
|
||||
}
|
||||
@ -1511,19 +1511,19 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
Extends: DynamicTable,
|
||||
|
||||
initColumns: function() {
|
||||
this.newColumn('country', '', 'QBT_TR(Country/Region)QBT_TR[CONTEXT=PeerListWidget]', 22, true);
|
||||
this.newColumn('ip', '', 'QBT_TR(IP)QBT_TR[CONTEXT=PeerListWidget]', 80, true);
|
||||
this.newColumn('port', '', 'QBT_TR(Port)QBT_TR[CONTEXT=PeerListWidget]', 35, true);
|
||||
this.newColumn('connection', '', 'QBT_TR(Connection)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('flags', '', 'QBT_TR(Flags)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('client', '', 'QBT_TR(Client)QBT_TR[CONTEXT=PeerListWidget]', 140, true);
|
||||
this.newColumn('progress', '', 'QBT_TR(Progress)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('dl_speed', '', 'QBT_TR(Down Speed)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('up_speed', '', 'QBT_TR(Up Speed)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('downloaded', '', 'QBT_TR(Downloaded)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('uploaded', '', 'QBT_TR(Uploaded)QBT_TR[CONTEXT=PeerListWidget]', 50, true);
|
||||
this.newColumn('relevance', '', 'QBT_TR(Relevance)QBT_TR[CONTEXT=PeerListWidget]', 30, true);
|
||||
this.newColumn('files', '', 'QBT_TR(Files)QBT_TR[CONTEXT=PeerListWidget]', 100, true);
|
||||
this.newColumn('country', '', 'Country/Region', 22, true);
|
||||
this.newColumn('ip', '', 'IP', 80, true);
|
||||
this.newColumn('port', '', 'Port', 35, true);
|
||||
this.newColumn('connection', '', 'Connection', 50, true);
|
||||
this.newColumn('flags', '', 'Flags', 50, true);
|
||||
this.newColumn('client', '', 'Client', 140, true);
|
||||
this.newColumn('progress', '', 'Progress', 50, true);
|
||||
this.newColumn('dl_speed', '', 'Down Speed', 50, true);
|
||||
this.newColumn('up_speed', '', 'Up Speed', 50, true);
|
||||
this.newColumn('downloaded', '', 'Downloaded', 50, true);
|
||||
this.newColumn('uploaded', '', 'Uploaded', 50, true);
|
||||
this.newColumn('relevance', '', 'Relevance', 30, true);
|
||||
this.newColumn('files', '', 'Files', 100, true);
|
||||
|
||||
this.columns['country'].dataProperties.push('country_code');
|
||||
this.columns['flags'].dataProperties.push('flags_desc');
|
||||
@ -1634,11 +1634,11 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
Extends: DynamicTable,
|
||||
|
||||
initColumns: function() {
|
||||
this.newColumn('fileName', '', 'QBT_TR(Name)QBT_TR[CONTEXT=SearchResultsTable]', 500, true);
|
||||
this.newColumn('fileSize', '', 'QBT_TR(Size)QBT_TR[CONTEXT=SearchResultsTable]', 100, true);
|
||||
this.newColumn('nbSeeders', '', 'QBT_TR(Seeders)QBT_TR[CONTEXT=SearchResultsTable]', 100, true);
|
||||
this.newColumn('nbLeechers', '', 'QBT_TR(Leechers)QBT_TR[CONTEXT=SearchResultsTable]', 100, true);
|
||||
this.newColumn('siteUrl', '', 'QBT_TR(Search engine)QBT_TR[CONTEXT=SearchResultsTable]', 250, true);
|
||||
this.newColumn('fileName', '', 'Name', 500, true);
|
||||
this.newColumn('fileSize', '', 'Size', 100, true);
|
||||
this.newColumn('nbSeeders', '', 'Seeders', 100, true);
|
||||
this.newColumn('nbLeechers', '', 'Leechers', 100, true);
|
||||
this.newColumn('siteUrl', '', 'Search engine', 250, true);
|
||||
|
||||
this.initColumnsFunctions();
|
||||
},
|
||||
@ -1747,10 +1747,10 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
Extends: DynamicTable,
|
||||
|
||||
initColumns: function() {
|
||||
this.newColumn('fullName', '', 'QBT_TR(Name)QBT_TR[CONTEXT=SearchPluginsTable]', 175, true);
|
||||
this.newColumn('version', '', 'QBT_TR(Version)QBT_TR[CONTEXT=SearchPluginsTable]', 100, true);
|
||||
this.newColumn('url', '', 'QBT_TR(Url)QBT_TR[CONTEXT=SearchPluginsTable]', 175, true);
|
||||
this.newColumn('enabled', '', 'QBT_TR(Enabled)QBT_TR[CONTEXT=SearchPluginsTable]', 100, true);
|
||||
this.newColumn('fullName', '', 'Name', 175, true);
|
||||
this.newColumn('version', '', 'Version', 100, true);
|
||||
this.newColumn('url', '', 'Url', 175, true);
|
||||
this.newColumn('enabled', '', 'Enabled', 100, true);
|
||||
|
||||
this.initColumnsFunctions();
|
||||
},
|
||||
@ -1759,14 +1759,14 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
this.columns['enabled'].updateTd = function(td, row) {
|
||||
const value = this.getRowValue(row);
|
||||
if (value) {
|
||||
td.set('text', 'QBT_TR(Yes)QBT_TR[CONTEXT=SearchPluginsTable]');
|
||||
td.set('title', 'QBT_TR(Yes)QBT_TR[CONTEXT=SearchPluginsTable]');
|
||||
td.set('text', 'Yes');
|
||||
td.set('title', 'Yes');
|
||||
td.getParent("tr").addClass("green");
|
||||
td.getParent("tr").removeClass("red");
|
||||
}
|
||||
else {
|
||||
td.set('text', 'QBT_TR(No)QBT_TR[CONTEXT=SearchPluginsTable]');
|
||||
td.set('title', 'QBT_TR(No)QBT_TR[CONTEXT=SearchPluginsTable]');
|
||||
td.set('text', 'No');
|
||||
td.set('title', 'No');
|
||||
td.getParent("tr").addClass("red");
|
||||
td.getParent("tr").removeClass("green");
|
||||
}
|
||||
@ -1782,14 +1782,14 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
Extends: DynamicTable,
|
||||
|
||||
initColumns: function() {
|
||||
this.newColumn('tier', '', 'QBT_TR(Tier)QBT_TR[CONTEXT=TrackerListWidget]', 35, true);
|
||||
this.newColumn('url', '', 'QBT_TR(URL)QBT_TR[CONTEXT=TrackerListWidget]', 250, true);
|
||||
this.newColumn('status', '', 'QBT_TR(Status)QBT_TR[CONTEXT=TrackerListWidget]', 125, true);
|
||||
this.newColumn('peers', '', 'QBT_TR(Peers)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('seeds', '', 'QBT_TR(Seeds)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('leeches', '', 'QBT_TR(Leeches)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('downloaded', '', 'QBT_TR(Times Downloaded)QBT_TR[CONTEXT=TrackerListWidget]', 100, true);
|
||||
this.newColumn('message', '', 'QBT_TR(Message)QBT_TR[CONTEXT=TrackerListWidget]', 250, true);
|
||||
this.newColumn('tier', '', 'Tier', 35, true);
|
||||
this.newColumn('url', '', 'URL', 250, true);
|
||||
this.newColumn('status', '', 'Status', 125, true);
|
||||
this.newColumn('peers', '', 'Peers', 75, true);
|
||||
this.newColumn('seeds', '', 'Seeds', 75, true);
|
||||
this.newColumn('leeches', '', 'Leeches', 75, true);
|
||||
this.newColumn('downloaded', '', 'Times Downloaded', 100, true);
|
||||
this.newColumn('message', '', 'Message', 250, true);
|
||||
},
|
||||
});
|
||||
|
||||
@ -1857,12 +1857,12 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
|
||||
initColumns: function() {
|
||||
this.newColumn('checked', '', '', 50, true);
|
||||
this.newColumn('name', '', 'QBT_TR(Name)QBT_TR[CONTEXT=TrackerListWidget]', 300, true);
|
||||
this.newColumn('size', '', 'QBT_TR(Total Size)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('progress', '', 'QBT_TR(Progress)QBT_TR[CONTEXT=TrackerListWidget]', 100, true);
|
||||
this.newColumn('priority', '', 'QBT_TR(Download Priority)QBT_TR[CONTEXT=TrackerListWidget]', 150, true);
|
||||
this.newColumn('remaining', '', 'QBT_TR(Remaining)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('availability', '', 'QBT_TR(Availability)QBT_TR[CONTEXT=TrackerListWidget]', 75, true);
|
||||
this.newColumn('name', '', 'Name', 300, true);
|
||||
this.newColumn('size', '', 'Total Size', 75, true);
|
||||
this.newColumn('progress', '', 'Progress', 100, true);
|
||||
this.newColumn('priority', '', 'Download Priority', 150, true);
|
||||
this.newColumn('remaining', '', 'Remaining', 75, true);
|
||||
this.newColumn('availability', '', 'Availability', 75, true);
|
||||
|
||||
this.initColumnsFunctions();
|
||||
},
|
||||
@ -2147,7 +2147,7 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
Extends: DynamicTable,
|
||||
initColumns: function() {
|
||||
this.newColumn('state_icon', '', '', 30, true);
|
||||
this.newColumn('name', '', 'QBT_TR(RSS feeds)QBT_TR[CONTEXT=FeedListWidget]', -1, true);
|
||||
this.newColumn('name', '', 'RSS feeds', -1, true);
|
||||
|
||||
this.columns['state_icon'].dataProperties[0] = '';
|
||||
|
||||
@ -2296,7 +2296,7 @@ window.qBittorrent.DynamicTable = (function() {
|
||||
const RssArticleTable = new Class({
|
||||
Extends: DynamicTable,
|
||||
initColumns: function() {
|
||||
this.newColumn('name', '', 'QBT_TR(Torrents: (double-click to download))QBT_TR[CONTEXT=RSSWidget]', -1, true);
|
||||
this.newColumn('name', '', 'Torrents: (double-click to download)', -1, true);
|
||||
},
|
||||
setupHeaderMenu: function() {},
|
||||
setupHeaderEvents: function() {},
|
||||
|
@ -53,17 +53,17 @@ window.qBittorrent.Misc = (function() {
|
||||
*/
|
||||
const friendlyUnit = function(value, isSpeed) {
|
||||
const units = [
|
||||
"QBT_TR(B)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(KiB)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(MiB)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(GiB)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(TiB)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(PiB)QBT_TR[CONTEXT=misc]",
|
||||
"QBT_TR(EiB)QBT_TR[CONTEXT=misc]"
|
||||
"B",
|
||||
"KiB",
|
||||
"MiB",
|
||||
"GiB",
|
||||
"TiB",
|
||||
"PiB",
|
||||
"EiB"
|
||||
];
|
||||
|
||||
if ((value === undefined) || (value === null) || (value < 0))
|
||||
return "QBT_TR(Unknown)QBT_TR[CONTEXT=misc]";
|
||||
return "Unknown";
|
||||
|
||||
let i = 0;
|
||||
while (value >= 1024.0 && i < 6) {
|
||||
@ -91,7 +91,7 @@ window.qBittorrent.Misc = (function() {
|
||||
}
|
||||
|
||||
if (isSpeed)
|
||||
ret += "QBT_TR(/s)QBT_TR[CONTEXT=misc]";
|
||||
ret += "/s";
|
||||
return ret;
|
||||
};
|
||||
|
||||
@ -104,21 +104,21 @@ window.qBittorrent.Misc = (function() {
|
||||
if (seconds === 0)
|
||||
return "0";
|
||||
if (seconds < 60)
|
||||
return "QBT_TR(< 1m)QBT_TR[CONTEXT=misc]";
|
||||
return "< 1m";
|
||||
let minutes = seconds / 60;
|
||||
if (minutes < 60)
|
||||
return "QBT_TR(%1m)QBT_TR[CONTEXT=misc]".replace("%1", parseInt(minutes));
|
||||
return "%1m".replace("%1", parseInt(minutes));
|
||||
let hours = minutes / 60;
|
||||
minutes = minutes % 60;
|
||||
if (hours < 24)
|
||||
return "QBT_TR(%1h %2m)QBT_TR[CONTEXT=misc]".replace("%1", parseInt(hours)).replace("%2", parseInt(minutes));
|
||||
return "%1h %2m".replace("%1", parseInt(hours)).replace("%2", parseInt(minutes));
|
||||
let days = hours / 24;
|
||||
hours = hours % 24;
|
||||
if (days < 365)
|
||||
return "QBT_TR(%1d %2h)QBT_TR[CONTEXT=misc]".replace("%1", parseInt(days)).replace("%2", parseInt(hours));
|
||||
return "%1d %2h".replace("%1", parseInt(days)).replace("%2", parseInt(hours));
|
||||
const years = days / 365;
|
||||
days = days % 365;
|
||||
return "QBT_TR(%1y %2d)QBT_TR[CONTEXT=misc]".replace("%1", parseInt(years)).replace("%2", parseInt(days));
|
||||
return "%1y %2d".replace("%1", parseInt(years)).replace("%2", parseInt(days));
|
||||
};
|
||||
|
||||
const friendlyPercentage = function(value) {
|
||||
|
@ -128,7 +128,7 @@ const initializeWindows = function() {
|
||||
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Download from URLs)QBT_TR[CONTEXT=downloadFromURL]",
|
||||
title: "Download from URLs",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: contentUri.toString(),
|
||||
addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
|
||||
@ -151,7 +151,7 @@ const initializeWindows = function() {
|
||||
const id = 'preferencesPage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Options)QBT_TR[CONTEXT=OptionsDialog]",
|
||||
title: "Options",
|
||||
loadMethod: 'xhr',
|
||||
toolbar: true,
|
||||
contentURL: new URI("views/preferences.html").toString(),
|
||||
@ -176,7 +176,7 @@ const initializeWindows = function() {
|
||||
const id = 'uploadPage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Upload local torrent)QBT_TR[CONTEXT=HttpServer]",
|
||||
title: "Upload local torrent",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("upload.html").toString(),
|
||||
addClass: 'windowFrame', // fixes iframe scrolling on iOS Safari
|
||||
@ -196,7 +196,7 @@ const initializeWindows = function() {
|
||||
globalUploadLimitFN = function() {
|
||||
new MochaUI.Window({
|
||||
id: 'uploadLimitPage',
|
||||
title: "QBT_TR(Global Upload Speed Limit)QBT_TR[CONTEXT=MainWindow]",
|
||||
title: "Global Upload Speed Limit",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("uploadlimit.html").setData("hashes", "global").toString(),
|
||||
scrollbars: false,
|
||||
@ -214,7 +214,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'uploadLimitPage',
|
||||
title: "QBT_TR(Torrent Upload Speed Limiting)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Torrent Upload Speed Limiting",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("uploadlimit.html").setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -254,7 +254,7 @@ const initializeWindows = function() {
|
||||
const orig = torrentsHaveSameShareRatio ? shareRatio : "";
|
||||
new MochaUI.Window({
|
||||
id: 'shareRatioPage',
|
||||
title: "QBT_TR(Torrent Upload/Download Ratio Limiting)QBT_TR[CONTEXT=UpDownRatioDialog]",
|
||||
title: "Torrent Upload/Download Ratio Limiting",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("shareratio.html").setData("hashes", hashes.join("|")).setData("orig", orig).toString(),
|
||||
scrollbars: false,
|
||||
@ -328,7 +328,7 @@ const initializeWindows = function() {
|
||||
globalDownloadLimitFN = function() {
|
||||
new MochaUI.Window({
|
||||
id: 'downloadLimitPage',
|
||||
title: "QBT_TR(Global Download Speed Limit)QBT_TR[CONTEXT=MainWindow]",
|
||||
title: "Global Download Speed Limit",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("downloadlimit.html").setData("hashes", "global").toString(),
|
||||
scrollbars: false,
|
||||
@ -345,7 +345,7 @@ const initializeWindows = function() {
|
||||
const id = 'statisticspage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: 'QBT_TR(Statistics)QBT_TR[CONTEXT=StatsDialog]',
|
||||
title: 'Statistics',
|
||||
loadMethod: 'xhr',
|
||||
contentURL: new URI("views/statistics.html").toString(),
|
||||
maximizable: false,
|
||||
@ -363,7 +363,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'downloadLimitPage',
|
||||
title: "QBT_TR(Torrent Download Speed Limiting)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Torrent Download Speed Limiting",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("downloadlimit.html").setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -382,7 +382,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'confirmDeletionPage',
|
||||
title: "QBT_TR(Remove torrent(s))QBT_TR[CONTEXT=confirmDeletionDlg]",
|
||||
title: "Remove torrent(s)",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("confirmdeletion.html").setData("hashes", hashes.join("|")).setData("deleteFiles", deleteFiles).toString(),
|
||||
scrollbars: false,
|
||||
@ -486,7 +486,7 @@ const initializeWindows = function() {
|
||||
|
||||
new MochaUI.Window({
|
||||
id: 'setLocationPage',
|
||||
title: "QBT_TR(Set location)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Set location",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("setlocation.html").setData("hashes", hashes.join('|')).setData("path", encodeURIComponent(row.full_data.save_path)).toString(),
|
||||
scrollbars: false,
|
||||
@ -508,7 +508,7 @@ const initializeWindows = function() {
|
||||
if (row) {
|
||||
new MochaUI.Window({
|
||||
id: 'renamePage',
|
||||
title: "QBT_TR(Rename)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Rename",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("rename.html").setData("hash", hash).setData("name", row.full_data.name).toString(),
|
||||
scrollbars: false,
|
||||
@ -529,7 +529,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'newCategoryPage',
|
||||
title: "QBT_TR(New Category)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "New Category",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("newcategory.html").setData("action", action).setData("hashes", hashes.join('|')).toString(),
|
||||
scrollbars: false,
|
||||
@ -564,7 +564,7 @@ const initializeWindows = function() {
|
||||
const action = "create";
|
||||
new MochaUI.Window({
|
||||
id: 'newCategoryPage',
|
||||
title: "QBT_TR(New Category)QBT_TR[CONTEXT=CategoryFilterWidget]",
|
||||
title: "New Category",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("newcategory.html").setData("action", action).toString(),
|
||||
scrollbars: false,
|
||||
@ -584,7 +584,7 @@ const initializeWindows = function() {
|
||||
const savePath = category_list[categoryHash].savePath;
|
||||
new MochaUI.Window({
|
||||
id: 'editCategoryPage',
|
||||
title: "QBT_TR(Edit Category)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Edit Category",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI('newcategory.html').setData("action", action).setData("categoryName", categoryName).setData("savePath", savePath).toString(),
|
||||
scrollbars: false,
|
||||
@ -659,7 +659,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'confirmDeletionPage',
|
||||
title: "QBT_TR(Remove torrent(s))QBT_TR[CONTEXT=confirmDeletionDlg]",
|
||||
title: "Remove torrent(s)",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("confirmdeletion.html").setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -679,7 +679,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'newTagPage',
|
||||
title: "QBT_TR(Add Tags)QBT_TR[CONTEXT=TransferListWidget]",
|
||||
title: "Add Tags",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("newtag.html").setData("action", action).setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -725,7 +725,7 @@ const initializeWindows = function() {
|
||||
const action = "create";
|
||||
new MochaUI.Window({
|
||||
id: 'newTagPage',
|
||||
title: "QBT_TR(New Tag)QBT_TR[CONTEXT=TagFilterWidget]",
|
||||
title: "New Tag",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("newtag.html").setData("action", action).toString(),
|
||||
scrollbars: false,
|
||||
@ -800,7 +800,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'confirmDeletionPage',
|
||||
title: "QBT_TR(Remove torrent(s))QBT_TR[CONTEXT=confirmDeletionDlg]",
|
||||
title: "Remove torrent(s)",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("confirmdeletion.html").setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -886,7 +886,7 @@ const initializeWindows = function() {
|
||||
if (hashes.length) {
|
||||
new MochaUI.Window({
|
||||
id: 'confirmDeletionPage',
|
||||
title: "QBT_TR(Remove torrent(s))QBT_TR[CONTEXT=confirmDeletionDlg]",
|
||||
title: "Remove torrent(s)",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: new URI("confirmdeletion.html").setData("hashes", hashes.join("|")).toString(),
|
||||
scrollbars: false,
|
||||
@ -982,7 +982,7 @@ const initializeWindows = function() {
|
||||
addClickEvent('pauseAll', (e) => {
|
||||
new Event(e).stop();
|
||||
|
||||
if (confirm('QBT_TR(Would you like to pause all torrents?)QBT_TR[CONTEXT=MainWindow]')) {
|
||||
if (confirm('Would you like to pause all torrents?')) {
|
||||
new Request({
|
||||
url: 'api/v2/torrents/pause',
|
||||
method: 'post',
|
||||
@ -997,7 +997,7 @@ const initializeWindows = function() {
|
||||
addClickEvent('resumeAll', (e) => {
|
||||
new Event(e).stop();
|
||||
|
||||
if (confirm('QBT_TR(Would you like to resume all torrents?)QBT_TR[CONTEXT=MainWindow]')) {
|
||||
if (confirm('Would you like to resume all torrents?')) {
|
||||
new Request({
|
||||
url: 'api/v2/torrents/resume',
|
||||
method: 'post',
|
||||
@ -1054,7 +1054,7 @@ const initializeWindows = function() {
|
||||
const id = 'aboutpage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: 'QBT_TR(About qBittorrent)QBT_TR[CONTEXT=AboutDialog]',
|
||||
title: 'About qBittorrent',
|
||||
loadMethod: 'xhr',
|
||||
contentURL: new URI("views/about.html").toString(),
|
||||
require: {
|
||||
@ -1084,12 +1084,12 @@ const initializeWindows = function() {
|
||||
|
||||
addClickEvent('shutdown', function(e) {
|
||||
new Event(e).stop();
|
||||
if (confirm('QBT_TR(Are you sure you want to quit qBittorrent?)QBT_TR[CONTEXT=MainWindow]')) {
|
||||
if (confirm('Are you sure you want to quit qBittorrent?')) {
|
||||
new Request({
|
||||
url: 'api/v2/app/shutdown',
|
||||
method: 'post',
|
||||
onSuccess: function() {
|
||||
document.write('<!doctype html><html lang="${LANG}"><head> <meta charset="UTF-8"> <title>QBT_TR(qBittorrent has been shutdown)QBT_TR[CONTEXT=HttpServer]</title></head><body> <h1 style="text-align: center;">QBT_TR(qBittorrent has been shutdown)QBT_TR[CONTEXT=HttpServer]</h1></body></html>');
|
||||
document.write('<!doctype html><html lang="${LANG}"><head> <meta charset="UTF-8"> <title>qBittorrent has been shutdown)QBT_TR[CONTEXT=HttpServer]</title></head><body> <h1 style="text-align: center;">QBT_TR(qBittorrent has been shutdown</h1></body></html>');
|
||||
document.close();
|
||||
stop();
|
||||
}
|
||||
|
@ -185,13 +185,13 @@ window.qBittorrent.PropFiles = (function() {
|
||||
select.addClass('combo_priority');
|
||||
select.addEvent('change', fileComboboxChanged);
|
||||
|
||||
createPriorityOptionElement(FilePriority.Ignored, (FilePriority.Ignored === selectedPriority), 'QBT_TR(Do not download)QBT_TR[CONTEXT=PropListDelegate]').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.Normal, (FilePriority.Normal === selectedPriority), 'QBT_TR(Normal)QBT_TR[CONTEXT=PropListDelegate]').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.High, (FilePriority.High === selectedPriority), 'QBT_TR(High)QBT_TR[CONTEXT=PropListDelegate]').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.Maximum, (FilePriority.Maximum === selectedPriority), 'QBT_TR(Maximum)QBT_TR[CONTEXT=PropListDelegate]').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.Ignored, (FilePriority.Ignored === selectedPriority), 'Do not download').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.Normal, (FilePriority.Normal === selectedPriority), 'Normal').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.High, (FilePriority.High === selectedPriority), 'High').injectInside(select);
|
||||
createPriorityOptionElement(FilePriority.Maximum, (FilePriority.Maximum === selectedPriority), 'Maximum').injectInside(select);
|
||||
|
||||
// "Mixed" priority is for display only; it shouldn't be selectable
|
||||
const mixedPriorityOption = createPriorityOptionElement(FilePriority.Mixed, (FilePriority.Mixed === selectedPriority), 'QBT_TR(Mixed)QBT_TR[CONTEXT=PropListDelegate]');
|
||||
const mixedPriorityOption = createPriorityOptionElement(FilePriority.Mixed, (FilePriority.Mixed === selectedPriority), 'Mixed');
|
||||
mixedPriorityOption.set('disabled', true);
|
||||
mixedPriorityOption.injectInside(select);
|
||||
|
||||
@ -556,7 +556,7 @@ window.qBittorrent.PropFiles = (function() {
|
||||
|
||||
new MochaUI.Window({
|
||||
id: 'renamePage',
|
||||
title: "QBT_TR(Renaming)QBT_TR[CONTEXT=TorrentContentTreeView]",
|
||||
title: "Renaming",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'rename_file.html?hash=' + hash + '&isFolder=' + node.isFolder
|
||||
+ '&path=' + encodeURIComponent(path),
|
||||
|
@ -93,7 +93,7 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
noCache: true,
|
||||
method: 'get',
|
||||
onFailure: function() {
|
||||
$('error_div').set('html', 'QBT_TR(qBittorrent client is not reachable)QBT_TR[CONTEXT=HttpServer]');
|
||||
$('error_div').set('html', 'qBittorrent client is not reachable');
|
||||
clearTimeout(loadTorrentDataTimer);
|
||||
loadTorrentDataTimer = loadTorrentData.delay(10000);
|
||||
},
|
||||
@ -103,7 +103,7 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
let temp;
|
||||
// Update Torrent data
|
||||
if (data.seeding_time > 0)
|
||||
temp = "QBT_TR(%1 (seeded for %2))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (seeded for %2)"
|
||||
.replace("%1", window.qBittorrent.Misc.friendlyDuration(data.time_elapsed))
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyDuration(data.seeding_time));
|
||||
else
|
||||
@ -112,27 +112,27 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
|
||||
$('eta').set('html', window.qBittorrent.Misc.friendlyDuration(data.eta, window.qBittorrent.Misc.MAX_ETA));
|
||||
|
||||
temp = "QBT_TR(%1 (%2 max))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 max)"
|
||||
.replace("%1", data.nb_connections)
|
||||
.replace("%2", data.nb_connections_limit < 0 ? "∞" : data.nb_connections_limit);
|
||||
$('nb_connections').set('html', temp);
|
||||
|
||||
temp = "QBT_TR(%1 (%2 this session))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 this session)"
|
||||
.replace("%1", window.qBittorrent.Misc.friendlyUnit(data.total_downloaded))
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyUnit(data.total_downloaded_session));
|
||||
$('total_downloaded').set('html', temp);
|
||||
|
||||
temp = "QBT_TR(%1 (%2 this session))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 this session)"
|
||||
.replace("%1", window.qBittorrent.Misc.friendlyUnit(data.total_uploaded))
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyUnit(data.total_uploaded_session));
|
||||
$('total_uploaded').set('html', temp);
|
||||
|
||||
temp = "QBT_TR(%1 (%2 avg.))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 avg.)"
|
||||
.replace("%1", window.qBittorrent.Misc.friendlyUnit(data.dl_speed, true))
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyUnit(data.dl_speed_avg, true));
|
||||
$('dl_speed').set('html', temp);
|
||||
|
||||
temp = "QBT_TR(%1 (%2 avg.))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 avg.)"
|
||||
.replace("%1", window.qBittorrent.Misc.friendlyUnit(data.up_speed, true))
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyUnit(data.up_speed_avg, true));
|
||||
$('up_speed').set('html', temp);
|
||||
@ -145,12 +145,12 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
|
||||
$('total_wasted').set('html', window.qBittorrent.Misc.friendlyUnit(data.total_wasted));
|
||||
|
||||
temp = "QBT_TR(%1 (%2 total))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 total)"
|
||||
.replace("%1", data.seeds)
|
||||
.replace("%2", data.seeds_total);
|
||||
$('seeds').set('html', temp);
|
||||
|
||||
temp = "QBT_TR(%1 (%2 total))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 (%2 total)"
|
||||
.replace("%1", data.peers)
|
||||
.replace("%2", data.peers_total);
|
||||
$('peers').set('html', temp);
|
||||
@ -162,25 +162,25 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
if (data.last_seen != -1)
|
||||
temp = new Date(data.last_seen * 1000).toLocaleString();
|
||||
else
|
||||
temp = "QBT_TR(Never)QBT_TR[CONTEXT=PropertiesWidget]";
|
||||
temp = "Never";
|
||||
$('last_seen').set('html', temp);
|
||||
|
||||
$('total_size').set('html', window.qBittorrent.Misc.friendlyUnit(data.total_size));
|
||||
|
||||
if (data.pieces_num != -1)
|
||||
temp = "QBT_TR(%1 x %2 (have %3))QBT_TR[CONTEXT=PropertiesWidget]"
|
||||
temp = "%1 x %2 (have %3)"
|
||||
.replace("%1", data.pieces_num)
|
||||
.replace("%2", window.qBittorrent.Misc.friendlyUnit(data.piece_size))
|
||||
.replace("%3", data.pieces_have);
|
||||
else
|
||||
temp = "QBT_TR(Unknown)QBT_TR[CONTEXT=HttpServer]";
|
||||
temp = "Unknown";
|
||||
$('pieces').set('html', temp);
|
||||
|
||||
$('created_by').set('text', data.created_by);
|
||||
if (data.addition_date != -1)
|
||||
temp = new Date(data.addition_date * 1000).toLocaleString();
|
||||
else
|
||||
temp = "QBT_TR(Unknown)QBT_TR[CONTEXT=HttpServer]";
|
||||
temp = "Unknown";
|
||||
|
||||
$('addition_date').set('html', temp);
|
||||
if (data.completion_date != -1)
|
||||
@ -193,17 +193,17 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
if (data.creation_date != -1)
|
||||
temp = new Date(data.creation_date * 1000).toLocaleString();
|
||||
else
|
||||
temp = "QBT_TR(Unknown)QBT_TR[CONTEXT=HttpServer]";
|
||||
temp = "Unknown";
|
||||
$('creation_date').set('html', temp);
|
||||
|
||||
if (data.infohash_v1 === "")
|
||||
temp = "QBT_TR(N/A)QBT_TR[CONTEXT=PropertiesWidget]";
|
||||
temp = "N/A";
|
||||
else
|
||||
temp = data.infohash_v1;
|
||||
$('torrent_hash_v1').set('html', temp);
|
||||
|
||||
if (data.infohash_v2 === "")
|
||||
temp = "QBT_TR(N/A)QBT_TR[CONTEXT=PropertiesWidget]";
|
||||
temp = "N/A";
|
||||
else
|
||||
temp = data.infohash_v2;
|
||||
$('torrent_hash_v2').set('html', temp);
|
||||
@ -226,7 +226,7 @@ window.qBittorrent.PropGeneral = (function() {
|
||||
noCache: true,
|
||||
method: 'get',
|
||||
onFailure: function() {
|
||||
$('error_div').set('html', 'QBT_TR(qBittorrent client is not reachable)QBT_TR[CONTEXT=HttpServer]');
|
||||
$('error_div').set('html', 'qBittorrent client is not reachable');
|
||||
clearTimeout(loadTorrentDataTimer);
|
||||
loadTorrentDataTimer = loadTorrentData.delay(10000);
|
||||
},
|
||||
|
@ -124,7 +124,7 @@ window.qBittorrent.PropPeers = (function() {
|
||||
|
||||
new MochaUI.Window({
|
||||
id: 'addPeersPage',
|
||||
title: "QBT_TR(Add Peers)QBT_TR[CONTEXT=PeersAdditionDialog]",
|
||||
title: "Add Peers",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'addpeers.html?hash=' + hash,
|
||||
scrollbars: false,
|
||||
@ -141,7 +141,7 @@ window.qBittorrent.PropPeers = (function() {
|
||||
if (selectedPeers.length === 0)
|
||||
return;
|
||||
|
||||
if (confirm('QBT_TR(Are you sure you want to permanently ban the selected peers?)QBT_TR[CONTEXT=PeerListWidget]')) {
|
||||
if (confirm('Are you sure you want to permanently ban the selected peers?')) {
|
||||
new Request({
|
||||
url: 'api/v2/transfer/banPeers',
|
||||
noCache: true,
|
||||
|
@ -79,19 +79,19 @@ window.qBittorrent.PropTrackers = (function() {
|
||||
let status;
|
||||
switch (tracker.status) {
|
||||
case 0:
|
||||
status = "QBT_TR(Disabled)QBT_TR[CONTEXT=TrackerListWidget]";
|
||||
status = "Disabled";
|
||||
break;
|
||||
case 1:
|
||||
status = "QBT_TR(Not contacted yet)QBT_TR[CONTEXT=TrackerListWidget]";
|
||||
status = "Not contacted yet";
|
||||
break;
|
||||
case 2:
|
||||
status = "QBT_TR(Working)QBT_TR[CONTEXT=TrackerListWidget]";
|
||||
status = "Working";
|
||||
break;
|
||||
case 3:
|
||||
status = "QBT_TR(Updating...)QBT_TR[CONTEXT=TrackerListWidget]";
|
||||
status = "Updating...";
|
||||
break;
|
||||
case 4:
|
||||
status = "QBT_TR(Not working)QBT_TR[CONTEXT=TrackerListWidget]";
|
||||
status = "Not working";
|
||||
break;
|
||||
}
|
||||
|
||||
@ -101,9 +101,9 @@ window.qBittorrent.PropTrackers = (function() {
|
||||
url: tracker.url,
|
||||
status: status,
|
||||
peers: tracker.num_peers,
|
||||
seeds: (tracker.num_seeds >= 0) ? tracker.num_seeds : "QBT_TR(N/A)QBT_TR[CONTEXT=TrackerListWidget]",
|
||||
leeches: (tracker.num_leeches >= 0) ? tracker.num_leeches : "QBT_TR(N/A)QBT_TR[CONTEXT=TrackerListWidget]",
|
||||
downloaded: (tracker.num_downloaded >= 0) ? tracker.num_downloaded : "QBT_TR(N/A)QBT_TR[CONTEXT=TrackerListWidget]",
|
||||
seeds: (tracker.num_seeds >= 0) ? tracker.num_seeds : "N/A",
|
||||
leeches: (tracker.num_leeches >= 0) ? tracker.num_leeches : "N/A",
|
||||
downloaded: (tracker.num_downloaded >= 0) ? tracker.num_downloaded : "N/A",
|
||||
message: tracker.msg
|
||||
};
|
||||
|
||||
@ -169,7 +169,7 @@ window.qBittorrent.PropTrackers = (function() {
|
||||
return;
|
||||
new MochaUI.Window({
|
||||
id: 'trackersPage',
|
||||
title: "QBT_TR(Add trackers)QBT_TR[CONTEXT=TrackersAdditionDialog]",
|
||||
title: "Add trackers",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'addtrackers.html?hash=' + current_hash,
|
||||
scrollbars: true,
|
||||
@ -193,7 +193,7 @@ window.qBittorrent.PropTrackers = (function() {
|
||||
const trackerUrl = encodeURIComponent(element.childNodes[1].innerText);
|
||||
new MochaUI.Window({
|
||||
id: 'trackersPage',
|
||||
title: "QBT_TR(Tracker editing)QBT_TR[CONTEXT=TrackerListWidget]",
|
||||
title: "Tracker editing",
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'edittracker.html?hash=' + current_hash + '&url=' + trackerUrl,
|
||||
scrollbars: true,
|
||||
|
@ -117,7 +117,7 @@ window.qBittorrent.PropWebseeds = (function() {
|
||||
noCache: true,
|
||||
method: 'get',
|
||||
onFailure: function() {
|
||||
$('error_div').set('html', 'QBT_TR(qBittorrent client is not reachable)QBT_TR[CONTEXT=HttpServer]');
|
||||
$('error_div').set('html', 'qBittorrent client is not reachable');
|
||||
clearTimeout(loadWebSeedsDataTimer);
|
||||
loadWebSeedsDataTimer = loadWebSeedsData.delay(20000);
|
||||
},
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Set location)QBT_TR[CONTEXT=HttpServer]</title>
|
||||
<title>Set location</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>
|
||||
@ -42,7 +42,7 @@
|
||||
// check field
|
||||
const location = $('setLocation').value.trim();
|
||||
if ((location === null) || (location === "")) {
|
||||
$('error_div').set('text', 'QBT_TR(Save path is empty)QBT_TR[CONTEXT=TorrentsController]');
|
||||
$('error_div').set('text', 'Save path is empty');
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -68,11 +68,11 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<p style="font-weight: bold;">QBT_TR(Location)QBT_TR[CONTEXT=TransferListWidget]:</p>
|
||||
<p style="font-weight: bold;">Location:</p>
|
||||
<input type="text" id="setLocation" autocorrect="off" autocapitalize="none" style="width: 99%;" />
|
||||
<div style="float: none; width: 99%;" id="error_div"> </div>
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="setLocationButton" />
|
||||
<input type="button" value="Save" id="setLocationButton" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Torrent Upload/Download Ratio Limiting)QBT_TR[CONTEXT=UpDownRatioDialog]</title>
|
||||
<title>Torrent Upload/Download Ratio Limiting</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>
|
||||
@ -153,22 +153,22 @@
|
||||
|
||||
<body>
|
||||
<div style="padding: 10px 10px 0px 10px;">
|
||||
<input type="radio" name="shareLimit" id="default" value="default" onchange="shareLimitChanged()" checked style="margin-bottom: 5px;" />QBT_TR(Use global share limit)QBT_TR[CONTEXT=UpDownRatioDialog]</br>
|
||||
<input type="radio" name="shareLimit" value="none" onchange="shareLimitChanged()" style="margin-bottom: 5px;" />QBT_TR(Set no share limit)QBT_TR[CONTEXT=UpDownRatioDialog]</br>
|
||||
<input type="radio" name="shareLimit" value="custom" onchange="shareLimitChanged()" style="margin-bottom: 5px;" />QBT_TR(Set share limit to)QBT_TR[CONTEXT=UpDownRatioDialog]</br>
|
||||
<input type="radio" name="shareLimit" id="default" value="default" onchange="shareLimitChanged()" checked style="margin-bottom: 5px;" />Use global share limit</br>
|
||||
<input type="radio" name="shareLimit" value="none" onchange="shareLimitChanged()" style="margin-bottom: 5px;" />Set no share limit</br>
|
||||
<input type="radio" name="shareLimit" value="custom" onchange="shareLimitChanged()" style="margin-bottom: 5px;" />Set share limit to</br>
|
||||
|
||||
<div style="margin-left: 40px; margin-bottom: 5px;">
|
||||
<input type="checkbox" id="setRatio" class="shareLimitInput" onclick="enableInputBoxes()" />
|
||||
<label for="setRatio">QBT_TR(ratio)QBT_TR[CONTEXT=UpDownRatioDialog]</label>
|
||||
<label for="setRatio">ratio</label>
|
||||
<input type="number" id="ratio" value="0.00" step=".01" min="0" max="9999" class="shareLimitInput" />
|
||||
</div>
|
||||
<div style="margin-left: 40px; margin-bottom: 5px;">
|
||||
<input type="checkbox" id="setMinutes" class="shareLimitInput" onclick="enableInputBoxes()" />
|
||||
<label for="setMinutes">QBT_TR(minutes)QBT_TR[CONTEXT=UpDownRatioDialog]</label>
|
||||
<label for="setMinutes">minutes</label>
|
||||
<input type="number" id="minutes" value="0" step="1" min="0" max="525600" class="shareLimitInput" />
|
||||
</div>
|
||||
<div style="text-align: center; padding-top: 10px;">
|
||||
<input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" id="save" />
|
||||
<input type="button" value="Save" id="save" />
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Upload local torrent)QBT_TR[CONTEXT=HttpServer]</title>
|
||||
<title>Upload local torrent</title>
|
||||
<link rel="stylesheet" href="css/style.css?v=${CACHEID}" type="text/css" />
|
||||
<link rel="stylesheet" href="css/Window.css?v=${CACHEID}" type="text/css" />
|
||||
<script src="scripts/lib/MooTools-Core-1.6.0-compat-compressed.js"></script>
|
||||
@ -20,18 +20,18 @@
|
||||
<table style="margin: auto;">
|
||||
<tr>
|
||||
<td>
|
||||
<label for="autoTMM">QBT_TR(Torrent Management Mode:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="autoTMM">Torrent Management Mode:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="autoTMM" name="autoTMM" onchange="qBittorrent.Download.changeTMM(this)">
|
||||
<option selected value="false">QBT_TR(Manual)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="true">QBT_TR(Automatic)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="false">Manual</option>
|
||||
<option value="true">Automatic</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="savepath">QBT_TR(Save files to location:)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="savepath">Save files to location:</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="savepath" name="savepath" style="width: 16em;" />
|
||||
@ -39,7 +39,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="rename">QBT_TR(Rename torrent)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="rename">Rename torrent</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="text" id="rename" name="rename" style="width: 16em;" />
|
||||
@ -47,7 +47,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="category">QBT_TR(Category:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="category">Category:</label>
|
||||
</td>
|
||||
<td>
|
||||
<div class="select-watched-folder-editable">
|
||||
@ -60,7 +60,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="startTorrent">QBT_TR(Start torrent)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="startTorrent">Start torrent</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="startTorrentHidden" name="paused" />
|
||||
@ -69,19 +69,19 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="stopCondition">QBT_TR(Stop condition:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="stopCondition">Stop condition:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="stopCondition" name="stopCondition">
|
||||
<option selected value="None">QBT_TR(None)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="MetadataReceived">QBT_TR(Metadata received)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="FilesChecked">QBT_TR(Files checked)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="None">None</option>
|
||||
<option value="MetadataReceived">Metadata received</option>
|
||||
<option value="FilesChecked">Files checked</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="skip_checking">QBT_TR(Skip hash check)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="skip_checking">Skip hash check</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="skip_checking" name="skip_checking" value="true" />
|
||||
@ -89,19 +89,19 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="contentLayout">QBT_TR(Content layout:)QBT_TR[CONTEXT=AddNewTorrentDialog]</label>
|
||||
<label for="contentLayout">Content layout:</label>
|
||||
</td>
|
||||
<td>
|
||||
<select id="contentLayout" name="contentLayout">
|
||||
<option selected value="Original">QBT_TR(Original)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="Subfolder">QBT_TR(Create subfolder)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option value="NoSubfolder">QBT_TR(Don't create subfolder)QBT_TR[CONTEXT=AddNewTorrentDialog]</option>
|
||||
<option selected value="Original">Original</option>
|
||||
<option value="Subfolder">Create subfolder</option>
|
||||
<option value="NoSubfolder">Don't create subfolder</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="sequentialDownload">QBT_TR(Download in sequential order)QBT_TR[CONTEXT=TransferListWidget]</label>
|
||||
<label for="sequentialDownload">Download in sequential order</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="sequentialDownload" name="sequentialDownload" value="true" />
|
||||
@ -109,7 +109,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="firstLastPiecePrio">QBT_TR(Download first and last pieces first)QBT_TR[CONTEXT=TransferListWidget]</label>
|
||||
<label for="firstLastPiecePrio">Download first and last pieces first</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="checkbox" id="firstLastPiecePrio" name="firstLastPiecePrio" value="true" />
|
||||
@ -117,7 +117,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="dlLimitText">QBT_TR(Limit download rate)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="dlLimitText">Limit download rate</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="dlLimitHidden" name="dlLimit" />
|
||||
@ -126,7 +126,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="upLimitText">QBT_TR(Limit upload rate)QBT_TR[CONTEXT=HttpServer]</label>
|
||||
<label for="upLimitText">Limit upload rate</label>
|
||||
</td>
|
||||
<td>
|
||||
<input type="hidden" id="upLimitHidden" name="upLimit" />
|
||||
@ -135,7 +135,7 @@
|
||||
</tr>
|
||||
</table>
|
||||
<div id="submitbutton" style="margin-top: 30px; text-align: center;">
|
||||
<button type="submit" style="font-size: 1em;">QBT_TR(Upload Torrents)QBT_TR[CONTEXT=HttpServer]</button>
|
||||
<button type="submit" style="font-size: 1em;">Upload Torrents</button>
|
||||
</div>
|
||||
</fieldset>
|
||||
</form>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>QBT_TR(Torrent Upload Speed Limiting)QBT_TR[CONTEXT=TransferListWidget]</title>
|
||||
<title>Torrent Upload Speed Limiting</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>
|
||||
@ -14,7 +14,7 @@
|
||||
<body>
|
||||
<div style="width: 100%; text-align: center; margin: 0 auto; overflow: hidden">
|
||||
<div id="uplimitSlider" class="slider">
|
||||
<div id="uplimitUpdate" class="update">QBT_TR(Upload limit:)QBT_TR[CONTEXT=PropertiesWidget] <input id="uplimitUpdatevalue" size="6" placeholder="∞" style="text-align: center;"> <span id="upLimitUnit">QBT_TR(KiB/s)QBT_TR[CONTEXT=SpeedLimitDialog]</span></div>
|
||||
<div id="uplimitUpdate" class="update">Upload limit:)QBT_TR[CONTEXT=PropertiesWidget] <input id="uplimitUpdatevalue" size="6" placeholder="∞" style="text-align: center;"> <span id="upLimitUnit">QBT_TR(KiB/s</span></div>
|
||||
<div class="sliderWrapper">
|
||||
<div id="uplimitSliderknob" class="sliderknob"></div>
|
||||
<div id="uplimitSliderarea" class="sliderarea"></div>
|
||||
@ -55,7 +55,7 @@
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<input type="button" id="applyButton" value="QBT_TR(Apply)QBT_TR[CONTEXT=HttpServer]" onclick="setUpLimit()" />
|
||||
<input type="button" id="applyButton" value="Apply" onclick="setUpLimit()" />
|
||||
</div>
|
||||
|
||||
<script>
|
||||
|
@ -1,56 +1,56 @@
|
||||
<div id="aboutAboutContent" class="aboutTabContent">
|
||||
<img src="images/mascot.png" style="float: left;" alt="QBT_TR(qBittorrent Mascot)QBT_TR[CONTEXT=AboutDialog]" />
|
||||
<img src="images/mascot.png" style="float: left;" alt="qBittorrent Mascot" />
|
||||
<div>
|
||||
<img src="images/qbittorrent-tray.svg" style="float: left; height: 1.5em;" alt="QBT_TR(qBittorrent icon)QBT_TR[CONTEXT=AboutDialog]" />
|
||||
<img src="images/qbittorrent-tray.svg" style="float: left; height: 1.5em;" alt="qBittorrent icon" />
|
||||
<h3 id="qbittorrentVersion"></h3>
|
||||
</div>
|
||||
<p>QBT_TR(An advanced BitTorrent client programmed in C++, based on Qt toolkit and libtorrent-rasterbar.)QBT_TR[CONTEXT=AboutDialog]</p>
|
||||
<p>An advanced BitTorrent client programmed in C++, based on Qt toolkit and libtorrent-rasterbar.</p>
|
||||
<p>Copyright © 2006-2022 The qBittorrent project</p>
|
||||
<table>
|
||||
<tr>
|
||||
<td>QBT_TR(Home Page:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Home Page:</td>
|
||||
<td><a href="https://www.qbittorrent.org" target="_blank">https://www.qbittorrent.org</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Bug Tracker:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Bug Tracker:</td>
|
||||
<td><a href="http://bugs.qbittorrent.org" target="_blank">http://bugs.qbittorrent.org</a></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Forum:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Forum:</td>
|
||||
<td><a href="http://forum.qbittorrent.org" target="_blank">http://forum.qbittorrent.org</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div id="aboutAuthorContent" class="aboutTabContent invisible">
|
||||
<h3>QBT_TR(Current maintainer)QBT_TR[CONTEXT=AboutDialog]</h3>
|
||||
<h3>Current maintainer</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td>QBT_TR(Name:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Name:</td>
|
||||
<td>Sledgehammer999</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Nationality:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>QBT_TR(Greece)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Nationality:</td>
|
||||
<td>Greece</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(E-mail:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>E-mail:</td>
|
||||
<td><a target="_blank" href="mailto:sledgehammer999@qbittorrent.org">sledgehammer999@qbittorrent.org</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</br>
|
||||
<h3>QBT_TR(Original author)QBT_TR[CONTEXT=HttpServer]</h3>
|
||||
<h3>Original author</h3>
|
||||
<table>
|
||||
<tr>
|
||||
<td>QBT_TR(Name:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Name:</td>
|
||||
<td>Christophe Dumez</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Nationality:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>QBT_TR(France)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>Nationality:</td>
|
||||
<td>France</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(E-mail:)QBT_TR[CONTEXT=AboutDialog]</td>
|
||||
<td>E-mail:</td>
|
||||
<td><a target="_blank" href="mailto:chris@qbittorrent.org">chris@qbittorrent.org</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -814,7 +814,7 @@
|
||||
</div>
|
||||
|
||||
<div id="aboutSoftwareUsedContent" class="aboutTabContent invisible">
|
||||
<p>QBT_TR(qBittorrent was built with the following libraries:)QBT_TR[CONTEXT=AboutDialog]</p>
|
||||
<p>qBittorrent was built with the following libraries:</p>
|
||||
<table style="margin-left: 20px;">
|
||||
<tr>
|
||||
<td>Qt:</td>
|
||||
@ -837,7 +837,7 @@
|
||||
<td><span id="zlibVersion"></span></td>
|
||||
</tr>
|
||||
</table>
|
||||
<p>QBT_TR(The free IP to Country Lite database by DB-IP is used for resolving the countries of peers. The database is licensed under the Creative Commons Attribution 4.0 International License)QBT_TR[CONTEXT=AboutDialog] (<a href="https://db-ip.com/" target="_blank" rel="noopener ">https://db-ip.com/</a>)</p>
|
||||
<p>The free IP to Country Lite database by DB-IP is used for resolving the countries of peers. The database is licensed under the Creative Commons Attribution 4.0 International License (<a href="https://db-ip.com/" target="_blank" rel="noopener ">https://db-ip.com/</a>)</p>
|
||||
</div>
|
||||
|
||||
<script>
|
||||
@ -845,7 +845,7 @@
|
||||
|
||||
(function() {
|
||||
$('qbittorrentVersion').innerText = ("qBittorrent " + qbtVersion()
|
||||
+ " QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]");
|
||||
+ " Web UI");
|
||||
|
||||
new Request.JSON({
|
||||
url: 'api/v2/app/buildInfo',
|
||||
|
@ -1,11 +1,11 @@
|
||||
<div class="toolbarTabs">
|
||||
<ul id="aboutTabs" class="tab-menu">
|
||||
<li id="aboutAboutLink" class="selected"><a>QBT_TR(About)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutAuthorLink"><a>QBT_TR(Authors)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutSpecialThanksLink"><a>QBT_TR(Special Thanks)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutTranslatorsLink"><a>QBT_TR(Translators)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutLicenseLink"><a>QBT_TR(License)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutSoftwareUsedLink"><a>QBT_TR(Software Used)QBT_TR[CONTEXT=AboutDialog]</a></li>
|
||||
<li id="aboutAboutLink" class="selected"><a>About</a></li>
|
||||
<li id="aboutAuthorLink"><a>Authors</a></li>
|
||||
<li id="aboutSpecialThanksLink"><a>Special Thanks</a></li>
|
||||
<li id="aboutTranslatorsLink"><a>Translators</a></li>
|
||||
<li id="aboutLicenseLink"><a>License</a></li>
|
||||
<li id="aboutSoftwareUsedLink"><a>Software Used</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
@ -1,40 +1,40 @@
|
||||
<div class="filterWrapper">
|
||||
<span class="filterTitle" onclick="toggleFilterDisplay('status');">
|
||||
<img src="images/go-down.svg">QBT_TR(Status)QBT_TR[CONTEXT=TransferListFiltersWidget]
|
||||
<img src="images/go-down.svg">Status
|
||||
</span>
|
||||
<ul class="filterList" id="statusFilterList">
|
||||
<li id="all_filter"><a href="#" onclick="setFilter('all');return false;"><img src="images/filter-all.svg" alt="All" />QBT_TR(All (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="downloading_filter"><a href="#" onclick="setFilter('downloading');return false;"><img src="images/downloading.svg" alt="Downloading" />QBT_TR(Downloading (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="seeding_filter"><a href="#" onclick="setFilter('seeding');return false;"><img src="images/upload.svg" alt="Seeding" />QBT_TR(Seeding (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="completed_filter"><a href="#" onclick="setFilter('completed');return false;"><img src="images/checked-completed.svg" alt="Completed" />QBT_TR(Completed (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="resumed_filter"><a href="#" onclick="setFilter('resumed');return false;"><img src="images/torrent-start.svg" alt="Resumed" />QBT_TR(Resumed (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="paused_filter"><a href="#" onclick="setFilter('paused');return false;"><img src="images/torrent-stop.svg" alt="Paused" />QBT_TR(Paused (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="active_filter"><a href="#" onclick="setFilter('active');return false;"><img src="images/filter-active.svg" alt="Active" />QBT_TR(Active (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="inactive_filter"><a href="#" onclick="setFilter('inactive');return false;"><img src="images/filter-inactive.svg" alt="Inactive" />QBT_TR(Inactive (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="stalled_filter"><a href="#" onclick="setFilter('stalled');return false;"><img src="images/filter-stalled.svg" alt="Stalled" />QBT_TR(Stalled (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="stalled_uploading_filter"><a href="#" onclick="setFilter('stalled_uploading');return false;"><img src="images/stalledUP.svg" alt="Stalled Uploading" />QBT_TR(Stalled Uploading (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="stalled_downloading_filter"><a href="#" onclick="setFilter('stalled_downloading');return false;"><img src="images/stalledDL.svg" alt="Stalled Downloading" />QBT_TR(Stalled Downloading (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="checking_filter"><a href="#" onclick="setFilter('checking'); return false;"><img src="images/force-recheck.svg" alt="Checking" />QBT_TR(Checking (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="errored_filter"><a href="#" onclick="setFilter('errored');return false;"><img src="images/error.svg" alt="Errored" />QBT_TR(Errored (0))QBT_TR[CONTEXT=StatusFilterWidget]</a></li>
|
||||
<li id="all_filter"><a href="#" onclick="setFilter('all');return false;"><img src="images/filter-all.svg" alt="All" />All (0)</a></li>
|
||||
<li id="downloading_filter"><a href="#" onclick="setFilter('downloading');return false;"><img src="images/downloading.svg" alt="Downloading" />Downloading (0)</a></li>
|
||||
<li id="seeding_filter"><a href="#" onclick="setFilter('seeding');return false;"><img src="images/upload.svg" alt="Seeding" />Seeding (0)</a></li>
|
||||
<li id="completed_filter"><a href="#" onclick="setFilter('completed');return false;"><img src="images/checked-completed.svg" alt="Completed" />Completed (0)</a></li>
|
||||
<li id="resumed_filter"><a href="#" onclick="setFilter('resumed');return false;"><img src="images/torrent-start.svg" alt="Resumed" />Resumed (0)</a></li>
|
||||
<li id="paused_filter"><a href="#" onclick="setFilter('paused');return false;"><img src="images/torrent-stop.svg" alt="Paused" />Paused (0)</a></li>
|
||||
<li id="active_filter"><a href="#" onclick="setFilter('active');return false;"><img src="images/filter-active.svg" alt="Active" />Active (0)</a></li>
|
||||
<li id="inactive_filter"><a href="#" onclick="setFilter('inactive');return false;"><img src="images/filter-inactive.svg" alt="Inactive" />Inactive (0)</a></li>
|
||||
<li id="stalled_filter"><a href="#" onclick="setFilter('stalled');return false;"><img src="images/filter-stalled.svg" alt="Stalled" />Stalled (0)</a></li>
|
||||
<li id="stalled_uploading_filter"><a href="#" onclick="setFilter('stalled_uploading');return false;"><img src="images/stalledUP.svg" alt="Stalled Uploading" />Stalled Uploading (0)</a></li>
|
||||
<li id="stalled_downloading_filter"><a href="#" onclick="setFilter('stalled_downloading');return false;"><img src="images/stalledDL.svg" alt="Stalled Downloading" />Stalled Downloading (0)</a></li>
|
||||
<li id="checking_filter"><a href="#" onclick="setFilter('checking'); return false;"><img src="images/force-recheck.svg" alt="Checking" />Checking (0)</a></li>
|
||||
<li id="errored_filter"><a href="#" onclick="setFilter('errored');return false;"><img src="images/error.svg" alt="Errored" />Errored (0)</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="filterWrapper">
|
||||
<span class="filterTitle" onclick="toggleFilterDisplay('category');">
|
||||
<img src="images/go-down.svg">QBT_TR(Categories)QBT_TR[CONTEXT=TransferListFiltersWidget]
|
||||
<img src="images/go-down.svg">Categories
|
||||
</span>
|
||||
<ul class="filterList" id="categoryFilterList">
|
||||
</ul>
|
||||
</div>
|
||||
<div class="filterWrapper">
|
||||
<span class="filterTitle" onclick="toggleFilterDisplay('tag');">
|
||||
<img src="images/go-down.svg">QBT_TR(Tags)QBT_TR[CONTEXT=TransferListFiltersWidget]
|
||||
<img src="images/go-down.svg">Tags
|
||||
</span>
|
||||
<ul class="filterList" id="tagFilterList">
|
||||
</ul>
|
||||
</div>
|
||||
<div class="filterWrapper">
|
||||
<span class="filterTitle" onclick="toggleFilterDisplay('tracker');">
|
||||
<img src="images/go-down.svg">QBT_TR(Trackers)QBT_TR[CONTEXT=TransferListFiltersWidget]
|
||||
<img src="images/go-down.svg">Trackers
|
||||
</span>
|
||||
<ul class="filterList" id="trackerFilterList">
|
||||
</ul>
|
||||
|
@ -15,13 +15,13 @@
|
||||
</style>
|
||||
|
||||
<div id="installSearchPluginContainer">
|
||||
<h2>QBT_TR(Plugin path:)QBT_TR[CONTEXT=PluginSourceDlg]</h2>
|
||||
<h2>Plugin path:</h2>
|
||||
|
||||
<div>
|
||||
<input type="text" id="newPluginPath" placeholder="QBT_TR(URL or local directory)QBT_TR[CONTEXT=PluginSourceDlg]" autocorrect="off" autocapitalize="none" />
|
||||
<input type="text" id="newPluginPath" placeholder="URL or local directory" autocorrect="off" autocapitalize="none" />
|
||||
<div style="margin-top: 10px; text-align: center;">
|
||||
<button id="newPluginCancel" onclick="qBittorrent.SearchPlugins.closeSearchWindow('installSearchPlugin');">QBT_TR(Cancel)QBT_TR[CONTEXT=PluginSourceDlg]</button>
|
||||
<button id="newPluginOk" onclick="qBittorrent.InstallSearchPlugin.newPluginOk();">QBT_TR(Ok)QBT_TR[CONTEXT=PluginSourceDlg]</button>
|
||||
<button id="newPluginCancel" onclick="qBittorrent.SearchPlugins.closeSearchWindow('installSearchPlugin');">Cancel</button>
|
||||
<button id="newPluginOk" onclick="qBittorrent.InstallSearchPlugin.newPluginOk();">Ok</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,13 +1,13 @@
|
||||
<!-- preferences -->
|
||||
<div class="toolbarTabs">
|
||||
<ul id="preferencesTabs" class="tab-menu">
|
||||
<li id="PrefDownloadsLink" class="selected"><a>QBT_TR(Downloads)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefConnectionLink"><a>QBT_TR(Connection)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefSpeedLink"><a>QBT_TR(Speed)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefBittorrentLink"><a>QBT_TR(BitTorrent)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefRSSLink"><a>QBT_TR(RSS)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefWebUILink"><a>QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefAdvancedLink"><a>QBT_TR(Advanced)QBT_TR[CONTEXT=OptionsDialog]</a></li>
|
||||
<li id="PrefDownloadsLink" class="selected"><a>Downloads</a></li>
|
||||
<li id="PrefConnectionLink"><a>Connection</a></li>
|
||||
<li id="PrefSpeedLink"><a>Speed</a></li>
|
||||
<li id="PrefBittorrentLink"><a>BitTorrent</a></li>
|
||||
<li id="PrefRSSLink"><a>RSS</a></li>
|
||||
<li id="PrefWebUILink"><a>Web UI</a></li>
|
||||
<li id="PrefAdvancedLink"><a>Advanced</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
@ -1,89 +1,89 @@
|
||||
<div id="prop_general" class="propertiesTabContent">
|
||||
<table style="width: 100%; padding: 0 3px">
|
||||
<tr>
|
||||
<td style="text-align: right">QBT_TR(Progress:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td style="text-align: right">Progress:</td>
|
||||
<td id="progress" style="width: 100%"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<hr>
|
||||
<fieldset>
|
||||
<legend><b>QBT_TR(Transfer)QBT_TR[CONTEXT=PropertiesWidget]</b></legend>
|
||||
<legend><b>Transfer</b></legend>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Time Active:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Time Active:</td>
|
||||
<td id="time_elapsed"></td>
|
||||
<td class="generalLabel">QBT_TR(ETA:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">ETA:</td>
|
||||
<td id="eta"></td>
|
||||
<td class="generalLabel">QBT_TR(Connections:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Connections:</td>
|
||||
<td id="nb_connections"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Downloaded:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Downloaded:</td>
|
||||
<td id="total_downloaded"></td>
|
||||
<td class="generalLabel">QBT_TR(Uploaded:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Uploaded:</td>
|
||||
<td id="total_uploaded"></td>
|
||||
<td class="generalLabel">QBT_TR(Seeds:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Seeds:</td>
|
||||
<td id="seeds"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Download Speed:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Download Speed:</td>
|
||||
<td id="dl_speed"></td>
|
||||
<td class="generalLabel">QBT_TR(Upload Speed:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Upload Speed:</td>
|
||||
<td id="up_speed"></td>
|
||||
<td class="generalLabel">QBT_TR(Peers:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Peers:</td>
|
||||
<td id="peers"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Download Limit:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Download Limit:</td>
|
||||
<td id="dl_limit"></td>
|
||||
<td class="generalLabel">QBT_TR(Upload Limit:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Upload Limit:</td>
|
||||
<td id="up_limit"></td>
|
||||
<td class="generalLabel">QBT_TR(Wasted:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Wasted:</td>
|
||||
<td id="total_wasted"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Share Ratio:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Share Ratio:</td>
|
||||
<td id="share_ratio"></td>
|
||||
<td class="generalLabel">QBT_TR(Reannounce In:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Reannounce In:</td>
|
||||
<td id="reannounce"></td>
|
||||
<td class="generalLabel">QBT_TR(Last Seen Complete:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Last Seen Complete:</td>
|
||||
<td id="last_seen"></td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
<fieldset>
|
||||
<legend><b>QBT_TR(Information)QBT_TR[CONTEXT=PropertiesWidget]</b></legend>
|
||||
<legend><b>Information</b></legend>
|
||||
<table style="width: 100%">
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Total Size:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Total Size:</td>
|
||||
<td id="total_size"></td>
|
||||
<td class="generalLabel">QBT_TR(Pieces:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Pieces:</td>
|
||||
<td id="pieces"></td>
|
||||
<td class="generalLabel">QBT_TR(Created By:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Created By:</td>
|
||||
<td id="created_by"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Added On:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Added On:</td>
|
||||
<td id="addition_date"></td>
|
||||
<td class="generalLabel">QBT_TR(Completed On:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Completed On:</td>
|
||||
<td id="completion_date"></td>
|
||||
<td class="generalLabel">QBT_TR(Created On:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Created On:</td>
|
||||
<td id="creation_date"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Info Hash v1:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Info Hash v1:</td>
|
||||
<td colspan="5" id="torrent_hash_v1"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Info Hash v2:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Info Hash v2:</td>
|
||||
<td colspan="5" id="torrent_hash_v2"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Save Path:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Save Path:</td>
|
||||
<td colspan="5" id="save_path"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td class="generalLabel">QBT_TR(Comment:)QBT_TR[CONTEXT=PropertiesWidget]</td>
|
||||
<td class="generalLabel">Comment:</td>
|
||||
<td colspan="5" style="white-space: pre-wrap;" id="comment"></td>
|
||||
</tr>
|
||||
</table>
|
||||
@ -135,7 +135,7 @@
|
||||
<table class="dynamicTable" style="width: 100%">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>QBT_TR(URL)QBT_TR[CONTEXT=TrackerListWidget]</th>
|
||||
<th>URL</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody id="webseedsTable"></tbody>
|
||||
|
@ -1,13 +1,13 @@
|
||||
<div class="toolbarTabs">
|
||||
<div id="torrentFilesFilterToolbar" class="invisible">
|
||||
<input type="text" id="torrentFilesFilterInput" placeholder="QBT_TR(Filter files...)QBT_TR[CONTEXT=PropertiesWidget]" autocorrect="off" autocapitalize="none" />
|
||||
<input type="text" id="torrentFilesFilterInput" placeholder="Filter files..." autocorrect="off" autocapitalize="none" />
|
||||
</div>
|
||||
<ul id="propertiesTabs" class="tab-menu">
|
||||
<li id="PropGeneralLink" class="selected"><a>QBT_TR(General)QBT_TR[CONTEXT=PropTabBar]</a></li>
|
||||
<li id="PropTrackersLink"><a>QBT_TR(Trackers)QBT_TR[CONTEXT=PropTabBar]</a></li>
|
||||
<li id="PropPeersLink"><a>QBT_TR(Peers)QBT_TR[CONTEXT=PropTabBar]</a></li>
|
||||
<li id="PropWebSeedsLink"><a>QBT_TR(HTTP Sources)QBT_TR[CONTEXT=PropTabBar]</a></li>
|
||||
<li id="PropFilesLink"><a>QBT_TR(Content)QBT_TR[CONTEXT=PropTabBar]</a></li>
|
||||
<li id="PropGeneralLink" class="selected"><a>General</a></li>
|
||||
<li id="PropTrackersLink"><a>Trackers</a></li>
|
||||
<li id="PropPeersLink"><a>Peers</a></li>
|
||||
<li id="PropWebSeedsLink"><a>HTTP Sources</a></li>
|
||||
<li id="PropFilesLink"><a>Content</a></li>
|
||||
</ul>
|
||||
<div class="clear"></div>
|
||||
</div>
|
||||
|
@ -86,14 +86,14 @@
|
||||
<div id="rssView">
|
||||
<div id="rssTopBar">
|
||||
<div id="rssFetchingDisabled" class="invisible">
|
||||
QBT_TR(Fetching of RSS feeds is disabled now! You can enable it in application settings.)QBT_TR[CONTEXT=RSSWidget]
|
||||
Fetching of RSS feeds is disabled now! You can enable it in application settings.
|
||||
</div>
|
||||
<div id="rssButtonBar">
|
||||
<button id="newSubscriptionButton" onclick="qBittorrent.Rss.addRSSFeed()">QBT_TR(New subscription)QBT_TR[CONTEXT=RSSWidget]</button>
|
||||
<button id="markReadButton" onclick="qBittorrent.Rss.markSelectedAsRead()">QBT_TR(Mark items read)QBT_TR[CONTEXT=RSSWidget]</button>
|
||||
<button id="updateAllButton" onclick="qBittorrent.Rss.refreshAllFeeds()">QBT_TR(Update all)QBT_TR[CONTEXT=RSSWidget]</button>
|
||||
<button id="newSubscriptionButton" onclick="qBittorrent.Rss.addRSSFeed()">New subscription</button>
|
||||
<button id="markReadButton" onclick="qBittorrent.Rss.markSelectedAsRead()">Mark items read</button>
|
||||
<button id="updateAllButton" onclick="qBittorrent.Rss.refreshAllFeeds()">Update all</button>
|
||||
|
||||
<button id="rssDownloaderButton" class="alignRight" onclick="qBittorrent.Rss.openRssDownloader()">QBT_TR(RSS Downloader...)QBT_TR[CONTEXT=RSSWidget]</button>
|
||||
<button id="rssDownloaderButton" class="alignRight" onclick="qBittorrent.Rss.openRssDownloader()">RSS Downloader...</button>
|
||||
</div>
|
||||
</div>
|
||||
<div id="rssContentView">
|
||||
@ -138,21 +138,21 @@
|
||||
</div>
|
||||
|
||||
<ul id="rssFeedMenu" class="contextMenu">
|
||||
<li><a href="#update"><img src="images/view-refresh.svg" alt="QBT_TR(Update)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Update)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#markRead"><img src="images/task-complete.svg" alt="QBT_TR(Mark items read)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Mark items read)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li class="separator"><a href="#rename"><img src="images/edit-rename.svg" alt="QBT_TR(Rename...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Rename...)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#delete"><img src="images/edit-clear.svg" alt="QBT_TR(Delete)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Delete)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#update"><img src="images/view-refresh.svg" alt="Update)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Update</a></li>
|
||||
<li><a href="#markRead"><img src="images/task-complete.svg" alt="Mark items read)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Mark items read</a></li>
|
||||
<li class="separator"><a href="#rename"><img src="images/edit-rename.svg" alt="Rename...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Rename...</a></li>
|
||||
<li><a href="#delete"><img src="images/edit-clear.svg" alt="Delete)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Delete</a></li>
|
||||
|
||||
<li class="separator"><a href="#newSubscription"><img src="images/list-add.svg" alt="QBT_TR(New subscription...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(New subscription...)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#newFolder"><img src="images/folder-new.svg" alt="QBT_TR(New folder...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(New folder...)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li class="separator"><a href="#updateAll"><img src="images/view-refresh.svg" alt="QBT_TR(Update all feeds)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Update all feeds)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li class="separator"><a href="#newSubscription"><img src="images/list-add.svg" alt="New subscription...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(New subscription...</a></li>
|
||||
<li><a href="#newFolder"><img src="images/folder-new.svg" alt="New folder...)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(New folder...</a></li>
|
||||
<li class="separator"><a href="#updateAll"><img src="images/view-refresh.svg" alt="Update all feeds)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Update all feeds</a></li>
|
||||
|
||||
<li class="separator"><a href="#copyFeedURL" id="CopyFeedURL"><img src="images/edit-copy.svg" alt="QBT_TR(Copy feed URL)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Copy feed URL)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li class="separator"><a href="#copyFeedURL" id="CopyFeedURL"><img src="images/edit-copy.svg" alt="Copy feed URL)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Copy feed URL</a></li>
|
||||
</ul>
|
||||
|
||||
<ul id="rssArticleMenu" class="contextMenu">
|
||||
<li><a href="#Download"><img src="images/downloading.svg" alt="QBT_TR(Download torrent)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Download torrent)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#OpenNews"><img src="images/application-url.svg" alt="QBT_TR(Open news URL)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Open news URL)QBT_TR[CONTEXT=RSSWidget]</a></li>
|
||||
<li><a href="#Download"><img src="images/downloading.svg" alt="Download torrent)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Download torrent</a></li>
|
||||
<li><a href="#OpenNews"><img src="images/application-url.svg" alt="Open news URL)QBT_TR[CONTEXT=RSSWidget]" /> QBT_TR(Open news URL</a></li>
|
||||
</ul>
|
||||
|
||||
<script>
|
||||
@ -329,7 +329,7 @@
|
||||
|
||||
new MochaUI.Window({
|
||||
id: 'newFeed',
|
||||
title: 'QBT_TR(Please type a RSS feed URL)QBT_TR[CONTEXT=RSSWidget]',
|
||||
title: 'Please type a RSS feed URL',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'newfeed.html?path=' + encodeURIComponent(path),
|
||||
scrollbars: false,
|
||||
@ -356,7 +356,7 @@
|
||||
|
||||
new MochaUI.Window({
|
||||
id: 'newFolder',
|
||||
title: 'QBT_TR(Please choose a folder name)QBT_TR[CONTEXT=RSSWidget]',
|
||||
title: 'Please choose a folder name',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'newfolder.html?path=' + encodeURIComponent(path),
|
||||
scrollbars: false,
|
||||
@ -422,7 +422,7 @@
|
||||
torrentDate.setAttribute('id', 'rssTorrentDetailsDate');
|
||||
|
||||
let torrentDateDesc = document.createElement('b');
|
||||
torrentDateDesc.innerText = 'QBT_TR(Date: )QBT_TR[CONTEXT=RSSWidget]';
|
||||
torrentDateDesc.innerText = 'Date: ';
|
||||
torrentDate.append(torrentDateDesc);
|
||||
|
||||
let torrentDateData = document.createElement('span');
|
||||
@ -599,7 +599,7 @@
|
||||
// Unread entry at top
|
||||
rssFeedTable.updateRowData({
|
||||
rowId: 0,
|
||||
name: 'QBT_TR(Unread)QBT_TR[CONTEXT=FeedListWidget]',
|
||||
name: 'Unread',
|
||||
unread: 0,
|
||||
status: 'unread',
|
||||
indentation: 0,
|
||||
@ -688,7 +688,7 @@
|
||||
const moveItem = (oldPath) => {
|
||||
new MochaUI.Window({
|
||||
id: 'renamePage',
|
||||
title: 'QBT_TR(Please choose a new name for this RSS feed)QBT_TR[CONTEXT=RSSWidget]',
|
||||
title: 'Please choose a new name for this RSS feed',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'rename_feed.html?oldPath=' + encodeURIComponent(oldPath),
|
||||
scrollbars: false,
|
||||
@ -703,7 +703,7 @@
|
||||
const encodedPaths = paths.map((path) => encodeURIComponent(path));
|
||||
new MochaUI.Window({
|
||||
id: 'confirmFeedDeletionPage',
|
||||
title: 'QBT_TR(Deletion confirmation)QBT_TR[CONTEXT=RSSWidget]',
|
||||
title: 'Deletion confirmation',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'confirmfeeddeletion.html?paths=' + encodeURIComponent(encodedPaths.join('|')),
|
||||
scrollbars: false,
|
||||
@ -815,7 +815,7 @@
|
||||
const id = 'rssdownloaderpage';
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: 'QBT_TR(Rss Downloader)QBT_TR[CONTEXT=AutomatedRssDownloader]',
|
||||
title: 'Rss Downloader',
|
||||
loadMethod: 'xhr',
|
||||
contentURL: 'views/rssDownloader.html',
|
||||
maximizable: false,
|
||||
|
@ -131,11 +131,11 @@
|
||||
|
||||
<div id="RssDownloader" class="RssDownloader">
|
||||
<div id="rssDownloaderDisabled" class="invisible">
|
||||
QBT_TR(Auto downloading of RSS torrents is disabled now! You can enable it in application settings.)QBT_TR[CONTEXT=AutomatedRssDownloader]
|
||||
Auto downloading of RSS torrents is disabled now! You can enable it in application settings.
|
||||
</div>
|
||||
<div id="leftRssDownloaderColumn">
|
||||
<div id="topMenuBar">
|
||||
<b id="rulesTableDesc">QBT_TR(Download Rules)QBT_TR[CONTEXT=AutomatedRssDownloader]</b>
|
||||
<b id="rulesTableDesc">Download Rules</b>
|
||||
<button id="newRuleButton" class="imageButton" onclick="qBittorrent.RssDownloader.addRule()"></button>
|
||||
<button id="deleteRuleButton" class="imageButton" onclick="qBittorrent.RssDownloader.removeSelectedRule()"></button>
|
||||
</div>
|
||||
@ -161,15 +161,15 @@
|
||||
</div>
|
||||
<div id="centerRssDownloaderColumn">
|
||||
<fieldset class="settings" id="ruleSettings">
|
||||
<legend>QBT_TR(Rule Definition)QBT_TR[CONTEXT=AutomatedRssDownloader]</legend>
|
||||
<legend>Rule Definition</legend>
|
||||
<div class="formRow">
|
||||
<input disabled type="checkbox" id="useRegEx" onclick="qBittorrent.RssDownloader.setElementTitles()" />
|
||||
<label for="useRegEx">QBT_TR(Use Regular Expressions)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="useRegEx">Use Regular Expressions</label>
|
||||
</div>
|
||||
<table class="fullWidth">
|
||||
<tr>
|
||||
<td>
|
||||
<label for="mustContainText" class="noWrap">QBT_TR(Must Contain:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="mustContainText" class="noWrap">Must Contain:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<input disabled type="text" id="mustContainText" class="fullWidth" autocorrect="off" autocapitalize="none" />
|
||||
@ -177,7 +177,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="mustNotContainText" class="noWrap">QBT_TR(Must Not Contain:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="mustNotContainText" class="noWrap">Must Not Contain:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<input disabled type="text" id="mustNotContainText" class="fullWidth" autocorrect="off" autocapitalize="none" />
|
||||
@ -185,7 +185,7 @@
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<label for="episodeFilterText" class="noWrap">QBT_TR(Episode Filter:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="episodeFilterText" class="noWrap">Episode Filter:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<input disabled type="text" id="episodeFilterText" class="fullWidth" autocorrect="off" autocapitalize="none" />
|
||||
@ -195,7 +195,7 @@
|
||||
<div class="formRow" title="QBT_TR(Smart Episode Filter will check the episode number to prevent downloading of duplicates.
|
||||
Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also support - as a separator))QBT_TR[CONTEXT=AutomatedRssDownloader]">
|
||||
<input disabled type="checkbox" id="useSmartFilter" />
|
||||
<label for="useSmartFilter">QBT_TR(Use Smart Episode Filter)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="useSmartFilter">Use Smart Episode Filter</label>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
@ -203,7 +203,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
<table class="fullWidth">
|
||||
<tr>
|
||||
<td>
|
||||
<label class="noWrap">QBT_TR(Assign Category:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label class="noWrap">Assign Category:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<select disabled id="assignCategoryCombobox" class="fullWidth">
|
||||
@ -214,12 +214,12 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
</table>
|
||||
<div class="formRow">
|
||||
<input disabled type="checkbox" id="savetoDifferentDir" />
|
||||
<label for="savetoDifferentDir">QBT_TR(Save to a Different Directory)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label for="savetoDifferentDir">Save to a Different Directory</label>
|
||||
</div>
|
||||
<table class="fullWidth">
|
||||
<tr>
|
||||
<td>
|
||||
<label class="noWrap" for="saveToText">QBT_TR(Save to:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label class="noWrap" for="saveToText">Save to:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<input disabled type="text" class="fullWidth" id="saveToText" autocorrect="off" autocapitalize="none" />
|
||||
@ -228,23 +228,23 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
</table>
|
||||
<table>
|
||||
<tr>
|
||||
<td><label for="ignoreDaysValue">QBT_TR(Ignore Subsequent Matches for (0 to Disable))QBT_TR[CONTEXT=AutomatedRssDownloader]</label></td>
|
||||
<td><input type="number" id="ignoreDaysValue" min="0" />QBT_TR( days)QBT_TR[CONTEXT=AutomatedRssDownloader]</td>
|
||||
<td><label for="ignoreDaysValue">Ignore Subsequent Matches for (0 to Disable)</label></td>
|
||||
<td><input type="number" id="ignoreDaysValue" min="0" /> days</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div id="lastMatchDiv">
|
||||
<span id="lastMatchText">QBT_TR(Last Match: Unknown)QBT_TR[CONTEXT=AutomatedRssDownloader]</span>
|
||||
<span id="lastMatchText">Last Match: Unknown</span>
|
||||
</div>
|
||||
<table class="fullWidth">
|
||||
<tr>
|
||||
<td>
|
||||
<label class="noWrap">QBT_TR(Add Paused:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label class="noWrap">Add Paused:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<select disabled id="addPausedCombobox" class="fullWidth">
|
||||
<option value="default">QBT_TR(Use global settings)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="always">QBT_TR(Always)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="never">QBT_TR(Never)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="default">Use global settings</option>
|
||||
<option value="always">Always</option>
|
||||
<option value="never">Never</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
@ -252,21 +252,21 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
<table class="fullWidth">
|
||||
<tr>
|
||||
<td>
|
||||
<label class="noWrap">QBT_TR(Torrent content layout:)QBT_TR[CONTEXT=AutomatedRssDownloader]</label>
|
||||
<label class="noWrap">Torrent content layout:</label>
|
||||
</td>
|
||||
<td class="fullWidth">
|
||||
<select disabled id="contentLayoutCombobox" class="fullWidth">
|
||||
<option value="Default">QBT_TR(Use global settings)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="Original">QBT_TR(Original)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="Subfolder">QBT_TR(Create subfolder)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="NoSubfolder">QBT_TR(Don't create subfolder)QBT_TR[CONTEXT=AutomatedRssDownloader]</option>
|
||||
<option value="Default">Use global settings</option>
|
||||
<option value="Original">Original</option>
|
||||
<option value="Subfolder">Create subfolder</option>
|
||||
<option value="NoSubfolder">Don't create subfolder</option>
|
||||
</select>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</fieldset>
|
||||
<fieldset class="settings" id="rssDownloaderFeeds">
|
||||
<legend>QBT_TR(Apply Rule to Feeds:)QBT_TR[CONTEXT=AutomatedRssDownloader]</legend>
|
||||
<legend>Apply Rule to Feeds:</legend>
|
||||
<div id="rssDownloaderFeedsTable">
|
||||
<div id="rssDownloaderFeedSelectionFixedHeaderDiv" class="dynamicTableFixedHeaderDiv invisible">
|
||||
<table class="dynamicTable unselectable">
|
||||
@ -286,11 +286,11 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
</div>
|
||||
</fieldset>
|
||||
<button disabled id="saveButton" onclick="qBittorrent.RssDownloader.saveSettings()">
|
||||
QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]
|
||||
Save
|
||||
</button>
|
||||
</div>
|
||||
<div id="rightRssDownloaderColumn">
|
||||
<b id="articleTableDesc">QBT_TR(Matching RSS Articles)QBT_TR[CONTEXT=AutomatedRssDownloader]</b>
|
||||
<b id="articleTableDesc">Matching RSS Articles</b>
|
||||
<div id="rssDownloaderArticlesTable">
|
||||
<div id="rssDownloaderArticlesFixedHeaderDiv" class="dynamicTableFixedHeaderDiv invisible">
|
||||
<table class="dynamicTable unselectable">
|
||||
@ -312,10 +312,10 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
</div>
|
||||
|
||||
<ul id="rssDownloaderRuleMenu" class="contextMenu">
|
||||
<li><a href="#addRule"><img src="images/list-add.svg" alt="QBT_TR(Add new rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Add new rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]</a></li>
|
||||
<li><a href="#deleteRule"><img src="images/edit-clear.svg" alt="QBT_TR(Delete rule)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Delete rule)QBT_TR[CONTEXT=AutomatedRssDownloader]</a></li>
|
||||
<li class="separator"><a href="#renameRule"><img src="images/edit-rename.svg" alt="QBT_TR(Rename rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Rename rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]</a></li>
|
||||
<li class="separator"><a href="#clearDownloadedEpisodes"><img src="images/edit-clear.svg" alt="QBT_TR(Clear downloaded episodes...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Clear downloaded episodes...)QBT_TR[CONTEXT=AutomatedRssDownloader]</a></li>
|
||||
<li><a href="#addRule"><img src="images/list-add.svg" alt="Add new rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Add new rule...</a></li>
|
||||
<li><a href="#deleteRule"><img src="images/edit-clear.svg" alt="Delete rule)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Delete rule</a></li>
|
||||
<li class="separator"><a href="#renameRule"><img src="images/edit-rename.svg" alt="Rename rule...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Rename rule...</a></li>
|
||||
<li class="separator"><a href="#clearDownloadedEpisodes"><img src="images/edit-clear.svg" alt="Clear downloaded episodes...)QBT_TR[CONTEXT=AutomatedRssDownloader]" /> QBT_TR(Clear downloaded episodes...</a></li>
|
||||
</ul>
|
||||
|
||||
<script>
|
||||
@ -506,7 +506,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
const addRule = () => {
|
||||
new MochaUI.Window({
|
||||
id: 'newRulePage',
|
||||
title: 'QBT_TR(New rule name)QBT_TR[CONTEXT=AutomatedRssDownloader]',
|
||||
title: 'New rule name',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'newrule.html',
|
||||
scrollbars: false,
|
||||
@ -520,7 +520,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
const renameRule = (rule) => {
|
||||
new MochaUI.Window({
|
||||
id: 'renameRulePage',
|
||||
title: 'QBT_TR(Rule renaming)QBT_TR[CONTEXT=AutomatedRssDownloader]',
|
||||
title: 'Rule renaming',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'rename_rule.html?rule=' + encodeURIComponent(rule),
|
||||
scrollbars: false,
|
||||
@ -542,7 +542,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
const encodedRules = rules.map((rule) => encodeURIComponent(rule));
|
||||
new MochaUI.Window({
|
||||
id: 'removeRulePage',
|
||||
title: 'QBT_TR(Rule deletion confirmation)QBT_TR[CONTEXT=AutomatedRssDownloader]',
|
||||
title: 'Rule deletion confirmation',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'confirmruledeletion.html?rules=' + encodeURIComponent(encodedRules.join('|')),
|
||||
scrollbars: false,
|
||||
@ -557,7 +557,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
const encodedRules = rules.map((rule) => encodeURIComponent(rule));
|
||||
new MochaUI.Window({
|
||||
id: 'clearRulesPage',
|
||||
title: 'QBT_TR(New rule name)QBT_TR[CONTEXT=AutomatedRssDownloader]',
|
||||
title: 'New rule name',
|
||||
loadMethod: 'iframe',
|
||||
contentURL: 'confirmruleclear.html?rules=' + encodeURIComponent(encodedRules.join('|')),
|
||||
scrollbars: false,
|
||||
@ -682,7 +682,7 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
$('savetoDifferentDir').checked = false;
|
||||
$('saveToText').value = '';
|
||||
$('ignoreDaysValue').value = 0;
|
||||
$('lastMatchText').textContent = 'QBT_TR(Last Match: Unknown)QBT_TR[CONTEXT=AutomatedRssDownloader]';
|
||||
$('lastMatchText').textContent = 'Last Match: Unknown';
|
||||
$('addPausedCombobox').value = 'default';
|
||||
$('contentLayoutCombobox').value = 'Default';
|
||||
rssDownloaderFeedSelectionTable.clear();
|
||||
@ -724,10 +724,10 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
if (rulesList[ruleName].lastMatch !== '') {
|
||||
let timeDiffInMs = new Date().getTime() - new Date(rulesList[ruleName].lastMatch).getTime();
|
||||
let daysAgo = Math.floor(timeDiffInMs / (1000 * 60 * 60 * 24)).toString();
|
||||
$('lastMatchText').textContent = ' QBT_TR(Last Match: %1 days ago)QBT_TR[CONTEXT=AutomatedRssDownloader]'.replace('%1', daysAgo);
|
||||
$('lastMatchText').textContent = ' Last Match: %1 days ago'.replace('%1', daysAgo);
|
||||
}
|
||||
else {
|
||||
$('lastMatchText').textContent = 'QBT_TR(Last Match: Unknown)QBT_TR[CONTEXT=AutomatedRssDownloader]';
|
||||
$('lastMatchText').textContent = 'Last Match: Unknown';
|
||||
}
|
||||
|
||||
if (rulesList[ruleName].addPaused === null)
|
||||
@ -760,34 +760,34 @@ Supports the formats: S01E01, 1x1, 2017.12.31 and 31.12.2017 (Date formats also
|
||||
const setElementTitles = () => {
|
||||
let mainPart;
|
||||
if ($('useRegEx').checked) {
|
||||
mainPart = 'QBT_TR(Regex mode: use Perl-compatible regular expressions)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n';
|
||||
mainPart = 'Regex mode: use Perl-compatible regular expressions\n\n';
|
||||
}
|
||||
else {
|
||||
mainPart = 'QBT_TR(Wildcard mode: you can use)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n'
|
||||
+ ' ● QBT_TR(? to match any single character)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(* to match zero or more of any characters)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Whitespaces count as AND operators (all words, any order))QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(| is used as OR operator)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n'
|
||||
+ 'QBT_TR(If word order is important use * instead of whitespace.)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n';
|
||||
mainPart = 'Wildcard mode: you can use\n\n'
|
||||
+ ' ● ? to match any single character\n'
|
||||
+ ' ● * to match zero or more of any characters\n'
|
||||
+ ' ● Whitespaces count as AND operators (all words, any order)\n'
|
||||
+ ' ● | is used as OR operator\n\n'
|
||||
+ 'If word order is important use * instead of whitespace.\n\n';
|
||||
}
|
||||
let secondPart = 'QBT_TR(An expression with an empty %1 clause (e.g. %2))QBT_TR[CONTEXT=AutomatedRssDownloader]'
|
||||
let secondPart = 'An expression with an empty %1 clause (e.g. %2)'
|
||||
.replace('%1', '|').replace('%2', 'expr|');
|
||||
|
||||
$('mustContainText').title = mainPart + secondPart + 'QBT_TR( will match all articles.)QBT_TR[CONTEXT=AutomatedRssDownloader]';
|
||||
$('mustNotContainText').title = mainPart + secondPart + 'QBT_TR( will exclude all articles.)QBT_TR[CONTEXT=AutomatedRssDownloader]';
|
||||
$('mustContainText').title = mainPart + secondPart + ' will match all articles.';
|
||||
$('mustNotContainText').title = mainPart + secondPart + ' will exclude all articles.';
|
||||
|
||||
let episodeFilterTitle = 'QBT_TR(Matches articles based on episode filter.)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n'
|
||||
+ 'QBT_TR(Example: )QBT_TR[CONTEXT=AutomatedRssDownloader]'
|
||||
let episodeFilterTitle = 'Matches articles based on episode filter.\n\n'
|
||||
+ 'Example: '
|
||||
+ '1x2;8-15;5;30-;'
|
||||
+ 'QBT_TR( will match 2, 5, 8 through 15, 30 and onward episodes of season one)QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n'
|
||||
+ 'QBT_TR(Episode filter rules: )QBT_TR[CONTEXT=AutomatedRssDownloader]\n\n'
|
||||
+ ' ● QBT_TR(Season number is a mandatory non-zero value)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Episode number is a mandatory positive value)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Filter must end with semicolon)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Three range types for episodes are supported: )QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Single number: <b>1x25;</b> matches episode 25 of season one)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Normal range: <b>1x25-40;</b> matches episodes 25 through 40 of season one)QBT_TR[CONTEXT=AutomatedRssDownloader]\n'
|
||||
+ ' ● QBT_TR(Infinite range: <b>1x25-;</b> matches episodes 25 and upward of season one, and all episodes of later seasons)QBT_TR[CONTEXT=AutomatedRssDownloader]';
|
||||
+ ' will match 2, 5, 8 through 15, 30 and onward episodes of season one\n\n'
|
||||
+ 'Episode filter rules: \n\n'
|
||||
+ ' ● Season number is a mandatory non-zero value\n'
|
||||
+ ' ● Episode number is a mandatory positive value\n'
|
||||
+ ' ● Filter must end with semicolon\n'
|
||||
+ ' ● Three range types for episodes are supported: \n'
|
||||
+ ' ● Single number: <b>1x25;</b> matches episode 25 of season one\n'
|
||||
+ ' ● Normal range: <b>1x25-40;</b> matches episodes 25 through 40 of season one\n'
|
||||
+ ' ● Infinite range: <b>1x25-;</b> matches episodes 25 and upward of season one, and all episodes of later seasons';
|
||||
|
||||
episodeFilterTitle = episodeFilterTitle.replace(/<b>/g, '').replace(/<\/b>/g, '');
|
||||
$('episodeFilterText').title = episodeFilterTitle;
|
||||
|
@ -80,10 +80,10 @@
|
||||
<div id="searchResults">
|
||||
<div style="overflow: hidden; height: 70px;">
|
||||
<div style="margin: 20px 0; height: 30px;">
|
||||
<input type="text" id="searchPattern" class="searchInputField" placeholder="QBT_TR(Search)QBT_TR[CONTEXT=SearchEngineWidget]" autocorrect="off" autocapitalize="none" />
|
||||
<input type="text" id="searchPattern" class="searchInputField" placeholder="Search" autocorrect="off" autocapitalize="none" />
|
||||
<select id="categorySelect" class="searchInputField" onchange="qBittorrent.Search.categorySelected()"></select>
|
||||
<select id="pluginsSelect" class="searchInputField" onchange="qBittorrent.Search.pluginSelected()"></select>
|
||||
<button id="startSearchButton" class="searchInputField" onclick="qBittorrent.Search.startStopSearch()">QBT_TR(Search)QBT_TR[CONTEXT=SearchEngineWidget]</button>
|
||||
<button id="startSearchButton" class="searchInputField" onclick="qBittorrent.Search.startStopSearch()">Search</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@ -92,9 +92,9 @@
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
QBT_TR(There aren't any search plugins installed.)QBT_TR[CONTEXT=SearchEngineWidget]
|
||||
There aren't any search plugins installed.
|
||||
<br />
|
||||
QBT_TR(Click the "Search plugins..." button at the bottom right of the window to install some.)QBT_TR[CONTEXT=SearchEngineWidget]
|
||||
Click the "Search plugins..." button at the bottom right of the window to install some.
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
@ -103,46 +103,46 @@
|
||||
</div>
|
||||
|
||||
<div id="searchResultsFilters">
|
||||
<input type="text" id="searchInNameFilter" placeholder="QBT_TR(Filter)QBT_TR[CONTEXT=SearchEngineWidget]" autocorrect="off" autocapitalize="none" />
|
||||
<input type="text" id="searchInNameFilter" placeholder="Filter" autocorrect="off" autocapitalize="none" />
|
||||
|
||||
<span>QBT_TR(Results)QBT_TR[CONTEXT=SearchEngineWidget] (QBT_TR(showing)QBT_TR[CONTEXT=SearchEngineWidget] <span id="numSearchResultsVisible" class="numSearchResults">0</span> QBT_TR(out of)QBT_TR[CONTEXT=SearchEngineWidget] <span id="numSearchResultsTotal" class="numSearchResults">0</span>):</span>
|
||||
<span>Results)QBT_TR[CONTEXT=SearchEngineWidget] (showing[CONTEXT=SearchEngineWidget] <span id="numSearchResultsVisible" class="numSearchResults">0</span> QBT_TR(out of <span id="numSearchResultsTotal" class="numSearchResults">0</span>):</span>
|
||||
|
||||
<div style="display: inline-block; float: right;">
|
||||
<label for="searchInTorrentName" style="margin-left: 15px;">QBT_TR(Search in:)QBT_TR[CONTEXT=SearchEngineWidget]</label>
|
||||
<label for="searchInTorrentName" style="margin-left: 15px;">Search in:</label>
|
||||
<select id="searchInTorrentName" onchange="qBittorrent.Search.searchInTorrentName()">
|
||||
<option value="names">QBT_TR(Torrent names only)QBT_TR[CONTEXT=SearchEngineWidget]</option>
|
||||
<option value="everywhere">QBT_TR(Everywhere)QBT_TR[CONTEXT=SearchEngineWidget]</option>
|
||||
<option value="names">Torrent names only</option>
|
||||
<option value="everywhere">Everywhere</option>
|
||||
</select>
|
||||
|
||||
<img id="searchResultsGranularFiltersWarning" src="images/dialog-warning.svg" title="QBT_TR(Increase window width to display additional filters)QBT_TR[CONTEXT=SearchEngineWidget]" alt="QBT_TR(Warning)QBT_TR[CONTEXT=SearchEngineWidget]" width="24" height="24">
|
||||
<img id="searchResultsGranularFiltersWarning" src="images/dialog-warning.svg" title="Increase window width to display additional filters)QBT_TR[CONTEXT=SearchEngineWidget]" alt="QBT_TR(Warning" width="24" height="24">
|
||||
|
||||
<div id="searchResultsGranularFilters">
|
||||
<span style="margin-left: 15px;">QBT_TR(Seeds:)QBT_TR[CONTEXT=SearchEngineWidget]</span>
|
||||
<span style="margin-left: 15px;">Seeds:</span>
|
||||
<input type="number" min="0" max="1000" id="searchMinSeedsFilter" value="0" onchange="qBittorrent.Search.searchSeedsFilterChanged()">
|
||||
<span>QBT_TR(to)QBT_TR[CONTEXT=SearchEngineWidget]</span>
|
||||
<span>to</span>
|
||||
<input type="number" min="0" max="1000" id="searchMaxSeedsFilter" value="0" onchange="qBittorrent.Search.searchSeedsFilterChanged()">
|
||||
|
||||
<span style="margin-left: 15px;">QBT_TR(Size:)QBT_TR[CONTEXT=SearchEngineWidget]</span>
|
||||
<span style="margin-left: 15px;">Size:</span>
|
||||
<input type="number" min="0" max="1000" step=".01" value="0.00" id="searchMinSizeFilter" onchange="qBittorrent.Search.searchSizeFilterChanged()">
|
||||
<select id="searchMinSizePrefix" onchange="qBittorrent.Search.searchSizeFilterPrefixChanged()">
|
||||
<option value="0">QBT_TR(B)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="1">QBT_TR(KiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="2" selected>QBT_TR(MiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="3">QBT_TR(GiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="4">QBT_TR(TiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="5">QBT_TR(PiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="6">QBT_TR(EiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="0">B</option>
|
||||
<option value="1">KiB</option>
|
||||
<option value="2" selected>MiB</option>
|
||||
<option value="3">GiB</option>
|
||||
<option value="4">TiB</option>
|
||||
<option value="5">PiB</option>
|
||||
<option value="6">EiB</option>
|
||||
</select>
|
||||
<span>QBT_TR(to)QBT_TR[CONTEXT=SearchEngineWidget]</span>
|
||||
<span>to</span>
|
||||
<input type="number" min="0" max="1000" step=".01" value="0.00" id="searchMaxSizeFilter" onchange="qBittorrent.Search.searchSizeFilterChanged()">
|
||||
<select id="searchMaxSizePrefix" onchange="qBittorrent.Search.searchSizeFilterPrefixChanged()">
|
||||
<option value="0">QBT_TR(B)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="1">QBT_TR(KiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="2" selected>QBT_TR(MiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="3">QBT_TR(GiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="4">QBT_TR(TiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="5">QBT_TR(PiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="6">QBT_TR(EiB)QBT_TR[CONTEXT=misc]</option>
|
||||
<option value="0">B</option>
|
||||
<option value="1">KiB</option>
|
||||
<option value="2" selected>MiB</option>
|
||||
<option value="3">GiB</option>
|
||||
<option value="4">TiB</option>
|
||||
<option value="5">PiB</option>
|
||||
<option value="6">EiB</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
@ -167,19 +167,19 @@
|
||||
</div>
|
||||
|
||||
<div style="height: 30px; padding-top: 10px;">
|
||||
<button id="manageSearchPlugins" onclick="qBittorrent.Search.manageSearchPlugins()">QBT_TR(Search plugins...)QBT_TR[CONTEXT=SearchEngineWidget]</button>
|
||||
<button id="manageSearchPlugins" onclick="qBittorrent.Search.manageSearchPlugins()">Search plugins...</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul id="searchResultsTableMenu" class="contextMenu">
|
||||
<li><a href="#Download"><img src="images/downloading.svg" alt="QBT_TR(Download)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Download)QBT_TR[CONTEXT=SearchJobWidget]</a></li>
|
||||
<li class="separator"><a href="#OpenDescriptionUrl"><img src="images/application-url.svg" alt="QBT_TR(Open description page)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Open description page)QBT_TR[CONTEXT=SearchJobWidget]</a></li>
|
||||
<li><a href="#Download"><img src="images/downloading.svg" alt="Download)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Download</a></li>
|
||||
<li class="separator"><a href="#OpenDescriptionUrl"><img src="images/application-url.svg" alt="Open description page)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Open description page</a></li>
|
||||
<li>
|
||||
<a href="#" class="arrow-right"><img src="images/edit-copy.svg" alt="QBT_TR(Copy)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Copy)QBT_TR[CONTEXT=SearchJobWidget]</a>
|
||||
<a href="#" class="arrow-right"><img src="images/edit-copy.svg" alt="Copy)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Copy</a>
|
||||
<ul>
|
||||
<li><a href="#" id="copySearchTorrentName" class="copySearchDataToClipboard"><img src="images/name.svg" alt="QBT_TR(Name)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Name)QBT_TR[CONTEXT=SearchJobWidget]</a></li>
|
||||
<li><a href="#" id="copySearchTorrentDownloadLink" class="copySearchDataToClipboard"><img src="images/insert-link.svg" alt="QBT_TR(Download link)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Download link)QBT_TR[CONTEXT=SearchJobWidget]</a></li>
|
||||
<li><a href="#" id="copySearchTorrentDescriptionUrl" class="copySearchDataToClipboard"><img src="images/application-url.svg" alt="QBT_TR(Description page URL)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Description page URL)QBT_TR[CONTEXT=SearchJobWidget]</a></li>
|
||||
<li><a href="#" id="copySearchTorrentName" class="copySearchDataToClipboard"><img src="images/name.svg" alt="Name)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Name</a></li>
|
||||
<li><a href="#" id="copySearchTorrentDownloadLink" class="copySearchDataToClipboard"><img src="images/insert-link.svg" alt="Download link)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Download link</a></li>
|
||||
<li><a href="#" id="copySearchTorrentDescriptionUrl" class="copySearchDataToClipboard"><img src="images/application-url.svg" alt="Description page URL)QBT_TR[CONTEXT=SearchJobWidget]" /> QBT_TR(Description page URL</a></li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
@ -234,7 +234,7 @@
|
||||
maxUnit: 3
|
||||
};
|
||||
let prevNameFilterValue;
|
||||
let selectedCategory = "QBT_TR(All categories)QBT_TR[CONTEXT=SearchEngineWidget]";
|
||||
let selectedCategory = "All categories";
|
||||
let selectedPlugin = "all";
|
||||
let prevSelectedPlugin;
|
||||
let activeSearchId = null;
|
||||
@ -314,7 +314,7 @@
|
||||
plugins: plugins
|
||||
},
|
||||
onSuccess: function(response) {
|
||||
$('startSearchButton').set('text', 'QBT_TR(Stop)QBT_TR[CONTEXT=SearchEngineWidget]');
|
||||
$('startSearchButton').set('text', 'Stop');
|
||||
searchRunning = true;
|
||||
activeSearchId = response.id;
|
||||
updateSearchResultsData();
|
||||
@ -404,7 +404,7 @@
|
||||
if (!$(id))
|
||||
new MochaUI.Window({
|
||||
id: id,
|
||||
title: "QBT_TR(Search plugins)QBT_TR[CONTEXT=PluginSelectDlg]",
|
||||
title: "Search plugins",
|
||||
loadMethod: 'xhr',
|
||||
contentURL: 'views/searchplugins.html',
|
||||
scrollbars: false,
|
||||
@ -461,7 +461,7 @@
|
||||
|
||||
const resetSearchState = function() {
|
||||
clearTimeout(loadSearchResultsTimer);
|
||||
$('startSearchButton').set('text', 'QBT_TR(Search)QBT_TR[CONTEXT=SearchEngineWidget]');
|
||||
$('startSearchButton').set('text', 'Search');
|
||||
searchResultsRowId = 0;
|
||||
searchRunning = false;
|
||||
activeSearchId = null;
|
||||
@ -529,8 +529,8 @@
|
||||
});
|
||||
|
||||
const pluginsHtml = [];
|
||||
pluginsHtml.push('<option value="enabled">QBT_TR(Only enabled)QBT_TR[CONTEXT=SearchEngineWidget]</option>');
|
||||
pluginsHtml.push('<option value="all">QBT_TR(All plugins)QBT_TR[CONTEXT=SearchEngineWidget]</option>');
|
||||
pluginsHtml.push('<option value="enabled">Only enabled</option>');
|
||||
pluginsHtml.push('<option value="all">All plugins</option>');
|
||||
|
||||
const searchPluginsEmpty = (searchPlugins.length === 0);
|
||||
if (searchPluginsEmpty) {
|
||||
|
@ -42,7 +42,7 @@
|
||||
</style>
|
||||
|
||||
<div id="searchPluginsContainer">
|
||||
<h2>QBT_TR(Installed search plugins:)QBT_TR[CONTEXT=PluginSelectDlg]</h2>
|
||||
<h2>Installed search plugins:</h2>
|
||||
|
||||
<div id="searchPluginsTable">
|
||||
<div id="searchPluginsTableFixedHeaderDiv" class="dynamicTableFixedHeaderDiv">
|
||||
@ -62,18 +62,18 @@
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<span>QBT_TR(Warning: Be sure to comply with your country's copyright laws when downloading torrents from any of these search engines.)QBT_TR[CONTEXT=PluginSelectDlg]</span>
|
||||
<span style="font-style: italic;">QBT_TR(You can get new search engine plugins here:)QBT_TR[CONTEXT=PluginSelectDlg] <a href="http://plugins.qbittorrent.org" target="_blank">http://plugins.qbittorrent.org</a></span>
|
||||
<span>Warning: Be sure to comply with your country's copyright laws when downloading torrents from any of these search engines.</span>
|
||||
<span style="font-style: italic;">You can get new search engine plugins here: <a href="http://plugins.qbittorrent.org" target="_blank">http://plugins.qbittorrent.org</a></span>
|
||||
<div style="width: 100%; margin-top: 10px;">
|
||||
<button style="width: 33%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.installPlugin();">QBT_TR(Install new plugin)QBT_TR[CONTEXT=PluginSelectDlg]</button>
|
||||
<button style="width: 33%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.checkForUpdates();">QBT_TR(Check for updates)QBT_TR[CONTEXT=PluginSelectDlg]</button>
|
||||
<button style="width: 32%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.closeSearchWindow('searchPlugins');">QBT_TR(Close)QBT_TR[CONTEXT=PluginSelectDlg]</button>
|
||||
<button style="width: 33%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.installPlugin();">Install new plugin</button>
|
||||
<button style="width: 33%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.checkForUpdates();">Check for updates</button>
|
||||
<button style="width: 32%; line-height: 1.4em;" onclick="qBittorrent.SearchPlugins.closeSearchWindow('searchPlugins');">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul id="searchPluginsTableMenu" class="contextMenu">
|
||||
<li><a href="#Enabled"><img src="images/checked-completed.svg" alt="QBT_TR(Enabled)QBT_TR[CONTEXT=PluginSelectDlg]" /> QBT_TR(Enabled)QBT_TR[CONTEXT=PluginSelectDlg]</a></li>
|
||||
<li class="separator"><a href="#Uninstall"><img src="images/list-remove.svg" alt="QBT_TR(Uninstall)QBT_TR[CONTEXT=PluginSelectDlg]" /> QBT_TR(Uninstall)QBT_TR[CONTEXT=PluginSelectDlg]</a></li>
|
||||
<li><a href="#Enabled"><img src="images/checked-completed.svg" alt="Enabled)QBT_TR[CONTEXT=PluginSelectDlg]" /> QBT_TR(Enabled</a></li>
|
||||
<li class="separator"><a href="#Uninstall"><img src="images/list-remove.svg" alt="Uninstall)QBT_TR[CONTEXT=PluginSelectDlg]" /> QBT_TR(Uninstall</a></li>
|
||||
</ul>
|
||||
|
||||
<script>
|
||||
@ -120,7 +120,7 @@
|
||||
const installPlugin = function(path) {
|
||||
new MochaUI.Window({
|
||||
id: 'installSearchPlugin',
|
||||
title: "QBT_TR(Install plugin)QBT_TR[CONTEXT=PluginSourceDlg]",
|
||||
title: "Install plugin",
|
||||
loadMethod: 'xhr',
|
||||
contentURL: 'views/installsearchplugin.html',
|
||||
scrollbars: false,
|
||||
|
@ -1,58 +1,58 @@
|
||||
<div id="statisticsContent">
|
||||
<h3>QBT_TR(User statistics)QBT_TR[CONTEXT=StatsDialog]</h3>
|
||||
<h3>User statistics</h3>
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
<td>QBT_TR(All-time upload:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>All-time upload:</td>
|
||||
<td id="AlltimeUL" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(All-time download:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>All-time download:</td>
|
||||
<td id="AlltimeDL" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(All-time share ratio:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>All-time share ratio:</td>
|
||||
<td id="GlobalRatio" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Session waste:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Session waste:</td>
|
||||
<td id="TotalWastedSession" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Connected peers:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Connected peers:</td>
|
||||
<td id="TotalPeerConnections" class="statisticsValue"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>QBT_TR(Cache statistics)QBT_TR[CONTEXT=StatsDialog]</h3>
|
||||
<h3>Cache statistics</h3>
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
<td>QBT_TR(Read cache hits:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Read cache hits:</td>
|
||||
<td id="ReadCacheHits" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Total buffer size:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Total buffer size:</td>
|
||||
<td id="TotalBuffersSize" class="statisticsValue"></td>
|
||||
</tr>
|
||||
</table>
|
||||
<h3>QBT_TR(Performance statistics)QBT_TR[CONTEXT=StatsDialog]</h3>
|
||||
<h3>Performance statistics</h3>
|
||||
<table style="width:100%">
|
||||
<tr>
|
||||
<td>QBT_TR(Write cache overload:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Write cache overload:</td>
|
||||
<td id="WriteCacheOverload" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Read cache overload:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Read cache overload:</td>
|
||||
<td id="ReadCacheOverload" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Queued I/O jobs:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Queued I/O jobs:</td>
|
||||
<td id="QueuedIOJobs" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Average time in queue:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Average time in queue:</td>
|
||||
<td id="AverageTimeInQueue" class="statisticsValue"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>QBT_TR(Total queued size:)QBT_TR[CONTEXT=StatsDialog]</td>
|
||||
<td>Total queued size:</td>
|
||||
<td id="TotalQueuedSize" class="statisticsValue"></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
@ -3,7 +3,7 @@
|
||||
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<title>qBittorrent QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]</title>
|
||||
<title>qBittorrent Web UI</title>
|
||||
<link rel="icon" type="image/png" href="images/qbittorrent32.png" />
|
||||
<link rel="icon" type="image/svg+xml" href="images/qbittorrent-tray.svg" />
|
||||
<link rel="stylesheet" type="text/css" href="css/login.css?v=${CACHEID}" />
|
||||
@ -15,25 +15,25 @@
|
||||
|
||||
<body>
|
||||
<noscript id="noscript">
|
||||
<h1>QBT_TR(JavaScript Required! You must enable JavaScript for the Web UI to work properly)QBT_TR[CONTEXT=HttpServer]</h1>
|
||||
<h1>JavaScript Required! You must enable JavaScript for the Web UI to work properly</h1>
|
||||
</noscript>
|
||||
<div id="main">
|
||||
<h1>qBittorrent QBT_TR(Web UI)QBT_TR[CONTEXT=OptionsDialog]</h1>
|
||||
<h1>qBittorrent Web UI</h1>
|
||||
<div id="logo" class="col">
|
||||
<img src="images/qbittorrent-tray.svg" alt="qBittorrent logo" />
|
||||
</div>
|
||||
<div id="formplace" class="col">
|
||||
<form id="loginform" method="post" onsubmit="submitLoginForm();">
|
||||
<div class="row">
|
||||
<label for="username">QBT_TR(Username)QBT_TR[CONTEXT=HttpServer]</label><br />
|
||||
<label for="username">Username</label><br />
|
||||
<input type="text" id="username" name="username" autocomplete="username" />
|
||||
</div>
|
||||
<div class="row">
|
||||
<label for="password">QBT_TR(Password)QBT_TR[CONTEXT=HttpServer]</label><br />
|
||||
<label for="password">Password</label><br />
|
||||
<input type="password" id="password" name="password" autocomplete="current-password" />
|
||||
</div>
|
||||
<div class="row">
|
||||
<input type="submit" id="login" value="QBT_TR(Login)QBT_TR[CONTEXT=HttpServer]" />
|
||||
<input type="submit" id="login" value="Login" />
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
Loading…
Reference in New Issue
Block a user