Merge pull request #9959 from Chocobo1/strict

Use Javascript strict mode
This commit is contained in:
Mike Tzou 2018-12-20 20:16:39 +08:00 committed by GitHub
commit 25cefee0f8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
30 changed files with 310 additions and 222 deletions

View file

@ -8,6 +8,8 @@
<script src="scripts/lib/mootools-1.2-core-yc.js"></script>
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script>
'use strict';
window.addEvent('domready', function() {
var setLocationKeyboardEvents = new Keyboard({
defaultEventType: 'keydown',

View file

@ -8,6 +8,8 @@
<script src="scripts/lib/mootools-1.2-core-yc.js"></script>
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script>
'use strict';
var hashes = new URI().getData('hashes').split('|');
window.addEvent('domready', function() {
$('cancelBtn').focus();

View file

@ -135,6 +135,8 @@
</div>
</form>
<script>
'use strict';
var encodedUrls = new URI().getData('urls');
if (encodedUrls) {
var urls = [];

View file

@ -22,8 +22,10 @@
<div class="clear"></div>
</div>
<script>
'use strict';
var hashes = new URI().getData('hashes').split('|');
setDlLimit = function() {
var setDlLimit = function() {
var limit = $("dllimitUpdatevalue").value.toInt() * 1024;
if (hashes[0] == "global") {
new Request({

View file

@ -23,6 +23,8 @@
</div>
<script>
'use strict';
var categoriesFilterContextMenu = new CategoriesFilterContextMenu({
targets: '.categoriesFilterContextMenuTarget',
menu: 'categoriesFilterMenu',

View file

@ -11,6 +11,7 @@
width: 100%;
line-height: 2em;
}
</style>
<div id="installSearchPluginContainer">
@ -20,7 +21,7 @@
<input type="text" id="newPluginPath" placeholder="QBT_TR(URL or local directory)QBT_TR[CONTEXT=PluginSourceDlg]" autocorrect="off" autocapitalize="none" />
<div style="margin-top: 10px; text-align: center;">
<button id="newPluginCancel" onclick="closeSearchWindow('installSearchPlugin');">QBT_TR(Cancel)QBT_TR[CONTEXT=PluginSourceDlg]</button>
<button id="newPluginOk" onclick="newPluginOk();">QBT_TR(Ok)QBT_TR[CONTEXT=PluginSourceDlg]</button></div>
<button id="newPluginOk" onclick="newPluginOk();">QBT_TR(Ok)QBT_TR[CONTEXT=PluginSourceDlg]</button>
</div>
</div>
</div>

View file

@ -9,6 +9,8 @@
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script src="scripts/misc.js?locale=${LANG}"></script>
<script>
'use strict';
var newCategoryKeyboardEvents = new Keyboard({
defaultEventType: 'keydown',
events: {

View file

@ -25,6 +25,8 @@
</div>
<script>
'use strict';
// Tabs
MochaUI.initializeTabs('preferencesTabs');

View file

@ -814,15 +814,17 @@
<div style="text-align: center; margin-top: 1em;"><input type="button" value="QBT_TR(Save)QBT_TR[CONTEXT=HttpServer]" onclick="applyPreferences();" /></div>
<script>
'use strict';
// Downloads tab
var WatchedFoldersTable = new HtmlTable($("watched_folders_tab"));
updateTempDirEnabled = function() {
var updateTempDirEnabled = function() {
var isTempDirEnabled = $('temppath_checkbox').getProperty('checked');
$('temppath_text').setProperty('disabled', !isTempDirEnabled);
};
addWatchFolder = function() {
var addWatchFolder = function() {
var new_folder = $('new_watch_folder_txt').getProperty('value').trim();
if (new_folder.length <= 0) return;
@ -842,7 +844,7 @@
$('new_watch_folder_other_txt').setProperty('value', text);
};
changeWatchFolderSelect = function(item) {
var changeWatchFolderSelect = function(item) {
if (item.value == "other") {
item.nextElementSibling.hidden = false;
item.nextElementSibling.value = 'QBT_TR(Type folder here)QBT_TR[CONTEXT=HttpServer]';
@ -855,7 +857,7 @@
}
};
pushWatchFolder = function(pos, folder, sel, other) {
var pushWatchFolder = function(pos, folder, sel, other) {
var myinput = "<input id='text_watch_" + pos + "' type='text' value='" + folder + "'>";
var disableInput = (sel != "other");
var mycb = "<div class='select-watched-folder-editable'>"
@ -875,7 +877,7 @@
$('cb_watch_txt_' + pos).setProperty('value', other);
};
getWatchedFolders = function() {
var getWatchedFolders = function() {
var nb_folders = $("watched_folders_tab").getChildren("tbody")[0].getChildren("tr").length;
var folders = new Hash();
for (var i = 0; i < nb_folders; ++i) {
@ -895,17 +897,17 @@
return folders;
};
updateExportDirEnabled = function() {
var updateExportDirEnabled = function() {
var isExportDirEnabled = $('exportdir_checkbox').getProperty('checked');
$('exportdir_text').setProperty('disabled', !isExportDirEnabled);
};
updateExportDirFinEnabled = function() {
var updateExportDirFinEnabled = function() {
var isExportDirFinEnabled = $('exportdirfin_checkbox').getProperty('checked');
$('exportdirfin_text').setProperty('disabled', !isExportDirFinEnabled);
};
updateMailNotification = function() {
var updateMailNotification = function() {
var isMailNotificationEnabled = $('mail_notification_checkbox').getProperty('checked');
$('src_email_txt').setProperty('disabled', !isMailNotificationEnabled);
$('dest_email_txt').setProperty('disabled', !isMailNotificationEnabled);
@ -919,39 +921,39 @@
}
};
updateMailAuthSettings = function() {
var updateMailAuthSettings = function() {
var isMailAuthEnabled = $('mail_auth_checkbox').getProperty('checked');
$('mail_username_text').setProperty('disabled', !isMailAuthEnabled);
$('mail_password_text').setProperty('disabled', !isMailAuthEnabled);
};
updateAutoRun = function() {
var updateAutoRun = function() {
var isAutoRunEnabled = $('autorun_checkbox').getProperty('checked');
$('autorunProg_txt').setProperty('disabled', !isAutoRunEnabled);
};
// Connection tab
updateMaxConnecEnabled = function() {
var updateMaxConnecEnabled = function() {
var isMaxConnecEnabled = $('max_connec_checkbox').getProperty('checked');
$('max_connec_value').setProperty('disabled', !isMaxConnecEnabled);
};
updateMaxConnecPerTorrentEnabled = function() {
var updateMaxConnecPerTorrentEnabled = function() {
var isMaxConnecPerTorrentEnabled = $('max_connec_per_torrent_checkbox').getProperty('checked');
$('max_connec_per_torrent_value').setProperty('disabled', !isMaxConnecPerTorrentEnabled);
};
updateMaxUploadsEnabled = function() {
var updateMaxUploadsEnabled = function() {
var isMaxUploadsEnabled = $('max_uploads_checkbox').getProperty('checked');
$('max_uploads_value').setProperty('disabled', !isMaxUploadsEnabled);
};
updateMaxUploadsPerTorrentEnabled = function() {
var updateMaxUploadsPerTorrentEnabled = function() {
var isMaxUploadsPerTorrentEnabled = $('max_uploads_per_torrent_checkbox').getProperty('checked');
$('max_uploads_per_torrent_value').setProperty('disabled', !isMaxUploadsPerTorrentEnabled);
};
updatePeerProxySettings = function() {
var updatePeerProxySettings = function() {
var isPeerProxyTypeSelected = $('peer_proxy_type_select').getProperty('value') != "none";
$('peer_proxy_host_text').setProperty('disabled', !isPeerProxyTypeSelected);
$('peer_proxy_port_value').setProperty('disabled', !isPeerProxyTypeSelected);
@ -977,19 +979,19 @@
updateForceProxySettings();
};
updateForceProxySettings = function() {
var updateForceProxySettings = function() {
var isForceProxyEnabled = (!$('force_proxy_checkbox').getProperty('disabled')) && ($('force_proxy_checkbox').getProperty('checked'));
$('upnp_checkbox').setProperty('disabled', isForceProxyEnabled);
$('lsd_checkbox').setProperty('disabled', isForceProxyEnabled);
};
updatePeerProxyAuthSettings = function() {
var updatePeerProxyAuthSettings = function() {
var isPeerProxyAuthEnabled = $('peer_proxy_auth_checkbox').getProperty('checked');
$('peer_proxy_username_text').setProperty('disabled', !isPeerProxyAuthEnabled);
$('peer_proxy_password_text').setProperty('disabled', !isPeerProxyAuthEnabled);
};
updateFilterSettings = function() {
var updateFilterSettings = function() {
var isIPFilterEnabled = $('ipfilter_enabled_checkbox').getProperty('checked');
$('ipfilter_text').setProperty('disabled', !isIPFilterEnabled);
$('ipfilter_trackers_checkbox').setProperty('disabled', !isIPFilterEnabled);
@ -997,7 +999,7 @@
};
// Speed tab
updateSchedulingEnabled = function() {
var updateSchedulingEnabled = function() {
var isLimitSchedulingEnabled = $('limit_sheduling_checkbox').getProperty('checked');
$('schedule_from_hour').setProperty('disabled', !isLimitSchedulingEnabled);
$('schedule_from_min').setProperty('disabled', !isLimitSchedulingEnabled);
@ -1007,7 +1009,7 @@
};
// Bittorrent tab
updateQueueingSystem = function() {
var updateQueueingSystem = function() {
var isQueueingEnabled = $('queueing_checkbox').getProperty('checked');
$('max_active_dl_value').setProperty('disabled', !isQueueingEnabled);
$('max_active_up_value').setProperty('disabled', !isQueueingEnabled);
@ -1016,14 +1018,14 @@
updateSlowTorrentsSettings();
};
updateSlowTorrentsSettings = function() {
var updateSlowTorrentsSettings = function() {
var isDontCountSlowTorrentsEnabled = (!$('dont_count_slow_torrents_checkbox').getProperty('disabled')) && $('dont_count_slow_torrents_checkbox').getProperty('checked');
$('dl_rate_threshold').setProperty('disabled', !isDontCountSlowTorrentsEnabled);
$('ul_rate_threshold').setProperty('disabled', !isDontCountSlowTorrentsEnabled);
$('torrent_inactive_timer').setProperty('disabled', !isDontCountSlowTorrentsEnabled);
};
updateMaxRatioTimeEnabled = function() {
var updateMaxRatioTimeEnabled = function() {
var isMaxRatioEnabled = $('max_ratio_checkbox').getProperty('checked');
$('max_ratio_value').setProperty('disabled', !isMaxRatioEnabled);
@ -1033,34 +1035,34 @@
$('max_ratio_act').setProperty('disabled', !(isMaxRatioEnabled || isMaxSeedingTimeEnabled));
};
updateAddTrackersEnabled = function() {
var updateAddTrackersEnabled = function() {
var isAddTrackersEnabled = $('add_trackers_checkbox').getProperty('checked');
$('add_trackers_textarea').setProperty('disabled', !isAddTrackersEnabled);
};
// Web UI tab
updateHttpsSettings = function() {
var updateHttpsSettings = function() {
var isUseHttpsEnabled = $('use_https_checkbox').getProperty('checked');
$('ssl_key_textarea').setProperty('disabled', !isUseHttpsEnabled);
$('ssl_cert_textarea').setProperty('disabled', !isUseHttpsEnabled);
};
updateBypasssAuthSettings = function() {
var updateBypasssAuthSettings = function() {
var isBypassAuthSubnetWhitelistEnabled = $('bypass_auth_subnet_whitelist_checkbox').getProperty('checked');
$('bypass_auth_subnet_whitelist_textarea').setProperty('disabled', !isBypassAuthSubnetWhitelistEnabled);
};
updateAlternativeWebUISettings = function() {
var updateAlternativeWebUISettings = function() {
var isUseAlternativeWebUIEnabled = $('use_alt_webui_checkbox').getProperty('checked');
$('webui_files_location_textarea').setProperty('disabled', !isUseAlternativeWebUIEnabled);
};
updateHostHeaderValidationSettings = function() {
var updateHostHeaderValidationSettings = function() {
var isHostHeaderValidationEnabled = $('host_header_validation_checkbox').getProperty('checked');
$('webui_domain_textarea').setProperty('disabled', !isHostHeaderValidationEnabled);
};
updateDynDnsSettings = function() {
var updateDynDnsSettings = function() {
var isDynDnsEnabled = $('use_dyndns_checkbox').getProperty('checked');
$('dyndns_select').setProperty('disabled', !isDynDnsEnabled);
$('dyndns_domain_text').setProperty('disabled', !isDynDnsEnabled);
@ -1068,7 +1070,7 @@
$('dyndns_password_text').setProperty('disabled', !isDynDnsEnabled);
};
registerDynDns = function() {
var registerDynDns = function() {
if ($('dyndns_select').getProperty('value').toInt() == 1) {
window.open("http://www.no-ip.com/services/managed_dns/free_dynamic_dns.html", "NO-IP Registration");
}
@ -1077,21 +1079,21 @@
}
};
generateRandomPort = function() {
var generateRandomPort = function() {
var min = 1024;
var max = 65535;
var port = Math.floor(Math.random() * (max - min + 1) + min);
$('port_value').setProperty('value', port);
};
time_padding = function(val) {
var time_padding = function(val) {
var ret = val.toString();
if (ret.length == 1)
ret = '0' + ret;
return ret;
};
loadPreferences = function() {
var loadPreferences = function() {
var url = 'api/v2/app/preferences';
new Request.JSON({
url: url,
@ -1362,7 +1364,7 @@
}).send();
};
applyPreferences = function() {
var applyPreferences = function() {
var settings = new Hash();
// Validate form data
// Downloads tab

View file

@ -152,6 +152,8 @@
</div>
<script>
'use strict';
torrentPeersTable.setup('torrentPeersTableDiv', 'torrentPeersTableFixedHeaderDiv', null);
var selectedTab = $(getLocalStorageItem('selected_tab', 'PropGeneralLink'));
if (selectedTab)

View file

@ -9,6 +9,8 @@
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script src="scripts/misc.js?locale=${LANG}"></script>
<script>
'use strict';
var renameKeyboardEvents = new Keyboard({
defaultEventType: 'keydown',
events: {

View file

@ -22,10 +22,12 @@
* THE SOFTWARE.
*/
torrentsTable = new TorrentsTable();
torrentPeersTable = new TorrentPeersTable();
searchResultsTable = new SearchResultsTable();
searchPluginsTable = new SearchPluginsTable();
'use strict';
var torrentsTable = new TorrentsTable();
var torrentPeersTable = new TorrentPeersTable();
var searchResultsTable = new SearchResultsTable();
var searchPluginsTable = new SearchPluginsTable();
var updatePropertiesPanel = function() {};
@ -322,7 +324,7 @@ window.addEvent('load', function() {
if (!categoryList)
return;
var childrens = categoryList.childNodes;
for (var i in childrens) {
for (var i = 0; i < childrens.length; ++i) {
if (childrens[i].id == selected_category)
childrens[i].className = "selectedFilter";
else

View file

@ -1,3 +1,5 @@
'use strict';
var lastShownContexMenu = null;
var ContextMenu = new Class({
//implements

View file

@ -21,10 +21,12 @@
* THE SOFTWARE.
*/
'use strict';
var categories = {};
var defaultSavePath = "";
getCategories = function() {
var getCategories = function() {
new Request.JSON({
url: 'api/v2/torrents/categories',
noCache: true,
@ -44,7 +46,7 @@ getCategories = function() {
}).send();
};
getPreferences = function() {
var getPreferences = function() {
new Request.JSON({
url: 'api/v2/app/preferences',
method: 'get',
@ -71,7 +73,7 @@ getPreferences = function() {
}).send();
};
changeCategorySelect = function(item) {
var changeCategorySelect = function(item) {
if (item.value == "\\other") {
item.nextElementSibling.hidden = false;
item.nextElementSibling.value = "";
@ -96,7 +98,7 @@ changeCategorySelect = function(item) {
}
};
changeTMM = function(item) {
var changeTMM = function(item) {
if (item.selectedIndex == 1) {
$('savepath').disabled = true;

View file

@ -31,6 +31,8 @@
**************************************************************/
'use strict';
var DynamicTableHeaderContextMenuClass = null;
var ProgressColumnWidth = -1;

View file

@ -1,3 +1,5 @@
'use strict';
/*
* JS counterpart of the function in src/misc.cpp
*/

View file

@ -8,6 +8,8 @@
it in the onContentLoaded function of the new window.
----------------------------------------------------------------- */
'use strict';
/* Define localStorage object for older browsers */
if (typeof localStorage == 'undefined') {
window['localStorage'] = {
@ -29,12 +31,43 @@ function getLocalStorageItem(name, defaultVal) {
return val;
}
var saveWindowSize = function() {};
var loadWindowWidth = function() {};
var loadWindowHeight = function() {};
var showDownloadPage = function() {};
var globalUploadLimitFN = function() {};
var uploadLimitFN = function() {};
var shareRatioFN = function() {};
var toggleSequentialDownloadFN = function() {};
var toggleFirstLastPiecePrioFN = function() {};
var setSuperSeedingFN = function() {};
var setForceStartFN = function() {};
var globalDownloadLimitFN = function() {};
var StatisticsLinkFN = function() {};
var downloadLimitFN = function() {};
var deleteFN = function() {};
var startFN = function() {};
var pauseFN = function() {};
var startFN = function() {};
var autoTorrentManagementFN = function() {};
var recheckFN = function() {};
var reannounceFN = function() {};
var setLocationFN = function() {};
var renameFN = function() {};
var torrentNewCategoryFN = function() {};
var torrentSetCategoryFN = function() {};
var createCategoryFN = function() {};
var editCategoryFN = function() {};
var removeCategoryFN = function() {};
var deleteUnusedCategoriesFN = function() {};
var startTorrentsByCategoryFN = function() {};
var pauseTorrentsByCategoryFN = function() {};
var deleteTorrentsByCategoryFN = function() {};
var copyNameFN = function() {};
var copyMagnetLinkFN = function() {};
var copyHashFN = function() {};
var setPriorityFN = function() {};
initializeWindows = function() {
var initializeWindows = function() {
saveWindowSize = function(windowId) {
var size = $(windowId).getSize();
localStorage.setItem('window_' + windowId + '_width', size.x);

View file

@ -1,3 +1,5 @@
'use strict';
var ProgressBar = new Class({
initialize: function(value, parameters) {
var vals = {

View file

@ -1,3 +1,5 @@
'use strict';
var is_seed = true;
var current_hash = "";
@ -350,5 +352,5 @@ var updateTorrentFilesData = function() {
loadTorrentFilesData();
};
fTable = new filesDynTable();
var fTable = new filesDynTable();
fTable.setup($('filesTable'));

View file

@ -1,3 +1,5 @@
'use strict';
var clearData = function() {
$('time_elapsed').set('html', '');
$('eta').set('html', '');

View file

@ -1,3 +1,5 @@
'use strict';
var trackersDynTable = new Class({
initialize: function() {},
@ -230,7 +232,7 @@ var removeTrackerFN = function(element) {
}).send();
};
torrentTrackersTable = new trackersDynTable();
var torrentTrackersTable = new trackersDynTable();
torrentTrackersTable.setup($('trackersTable'), torrentTrackersContextMenu);
new ClipboardJS('#CopyTrackerUrl', {

View file

@ -1,3 +1,5 @@
'use strict';
var webseedsDynTable = new Class({
initialize: function() {},
@ -105,5 +107,5 @@ var updateWebSeedsData = function() {
loadWebSeedsData();
};
wsTable = new webseedsDynTable();
var wsTable = new webseedsDynTable();
wsTable.setup($('webseedsTable'));

View file

@ -56,6 +56,7 @@
line-height: 1.5em;
float: right;
}
</style>
<div id="searchResults">

View file

@ -38,6 +38,7 @@
#searchPlugins_content {
height: 100%;
}
</style>
<div id="searchPluginsContainer">

View file

@ -9,6 +9,8 @@
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script src="scripts/misc.js?locale=${LANG}"></script>
<script>
'use strict';
var setLocationKeyboardEvents = new Keyboard({
defaultEventType: 'keydown',
events: {

View file

@ -9,6 +9,8 @@
<script src="scripts/lib/mootools-1.2-more.js"></script>
<script src="scripts/misc.js?locale=${LANG}"></script>
<script>
'use strict';
var UseGlobalLimit = -2;
var NoLimit = -1;

View file

@ -16,6 +16,8 @@
</div>
<script>
'use strict';
//create a context menu
var torrentsTableContextMenu = new TorrentsTableContextMenu({
targets: '.torrentsTableContextMenuTarget',

View file

@ -122,6 +122,8 @@
</fieldset>
</form>
<script>
'use strict';
var submitted = false;
$('uploadForm').addEventListener("submit", function() {

View file

@ -22,8 +22,10 @@
<div class="clear"></div>
</div>
<script>
'use strict';
var hashes = new URI().getData('hashes').split('|');
setUpLimit = function() {
var setUpLimit = function() {
var limit = $("uplimitUpdatevalue").value.toInt() * 1024;
if (hashes[0] == "global") {
new Request({

View file

@ -8,6 +8,8 @@
<link rel="stylesheet" type="text/css" href="css/login.css" />
<script src="scripts/lib/mootools-1.2-core-yc.js"></script>
<script>
'use strict';
window.onload = function() {
$('username').focus();
$('username').select();