mirror of
https://git.deluge-torrent.org/deluge
synced 2025-08-09 09:58:39 +00:00
[WebUI] Fix i18n issue in Connection Manager
The status strings were incorrectly marked for translation which when combined with some translations using 'connected' and 'online' as the same word resulted in users being unabe to connect to running daemon. * Removed translation markup from json_api but left as original capitalised word in case other third-party scripts do comparison on these status strings. * Added translation markup prior to displaying ConnectionManager using template. * Reworded password prompt and added translation markup. * Update gettext.js
This commit is contained in:
parent
b1df44cf05
commit
8dd918f2a4
3 changed files with 96 additions and 105 deletions
|
@ -68,6 +68,16 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
||||||
header: _('Status'),
|
header: _('Status'),
|
||||||
width: .24,
|
width: .24,
|
||||||
sortable: true,
|
sortable: true,
|
||||||
|
tpl: new Ext.XTemplate(
|
||||||
|
'<tpl if="status == \'Online\'">',
|
||||||
|
_('Online'),
|
||||||
|
'</tpl>',
|
||||||
|
'<tpl if="status == \'Offline\'">',
|
||||||
|
_('Offline'),
|
||||||
|
'</tpl>',
|
||||||
|
'<tpl if="status == \'Connected\'">',
|
||||||
|
_('Connected'),
|
||||||
|
'</tpl>'),
|
||||||
dataIndex: 'status'
|
dataIndex: 'status'
|
||||||
}, {
|
}, {
|
||||||
id:'host',
|
id:'host',
|
||||||
|
@ -174,18 +184,18 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
||||||
var button = this.buttons[1], status = record.get('status');
|
var button = this.buttons[1], status = record.get('status');
|
||||||
|
|
||||||
// Update the Connect/Disconnect button
|
// Update the Connect/Disconnect button
|
||||||
if (status == _('Connected')) {
|
if (status == 'Connected') {
|
||||||
button.enable();
|
button.enable();
|
||||||
button.setText(_('Disconnect'));
|
button.setText(_('Disconnect'));
|
||||||
} else if (status == _('Offline')) {
|
} else if (status == 'Offline') {
|
||||||
button.disable();
|
button.disable();
|
||||||
} else {
|
} else {
|
||||||
button.enable();
|
button.enable();
|
||||||
button.setText(_('Connect'));
|
button.setText('Connect');
|
||||||
}
|
}
|
||||||
|
|
||||||
// Update the Stop/Start Daemon button
|
// Update the Stop/Start Daemon button
|
||||||
if (status == _('Offline')) {
|
if (status == 'Offline') {
|
||||||
if (record.get('host') == '127.0.0.1' || record.get('host') == 'localhost') {
|
if (record.get('host') == '127.0.0.1' || record.get('host') == 'localhost') {
|
||||||
this.stopHostButton.enable();
|
this.stopHostButton.enable();
|
||||||
this.stopHostButton.setText(_('Start Daemon'));
|
this.stopHostButton.setText(_('Start Daemon'));
|
||||||
|
@ -222,7 +232,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
||||||
var selected = this.list.getSelectedRecords()[0];
|
var selected = this.list.getSelectedRecords()[0];
|
||||||
if (!selected) return;
|
if (!selected) return;
|
||||||
|
|
||||||
if (selected.get('status') == _('Connected')) {
|
if (selected.get('status') == 'Connected') {
|
||||||
deluge.client.web.disconnect({
|
deluge.client.web.disconnect({
|
||||||
success: function(result) {
|
success: function(result) {
|
||||||
this.update(this);
|
this.update(this);
|
||||||
|
@ -272,10 +282,9 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
|
||||||
// private
|
// private
|
||||||
onLogin: function() {
|
onLogin: function() {
|
||||||
if (deluge.config.first_login) {
|
if (deluge.config.first_login) {
|
||||||
Ext.MessageBox.confirm('Change password',
|
Ext.MessageBox.confirm(_('Change Default Password'),
|
||||||
'As this is your first login, we recommend that you ' +
|
_('We recommend changing the default password.<br><br>Would you like to change it now?'),
|
||||||
'change your password. Would you like to ' +
|
function(res) {
|
||||||
'do this now?', function(res) {
|
|
||||||
this.checkConnected();
|
this.checkConnected();
|
||||||
if (res == 'yes') {
|
if (res == 'yes') {
|
||||||
deluge.preferences.show();
|
deluge.preferences.show();
|
||||||
|
|
|
@ -26,67 +26,31 @@ function _(string) {
|
||||||
return GetText.get(string);
|
return GetText.get(string);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TorrentGrid.js:109
|
|
||||||
GetText.add('#', '${escape(_("#"))}')
|
|
||||||
|
|
||||||
// DetailsTab.js:50
|
|
||||||
GetText.add('# of files', '${escape(_("# of files"))}')
|
|
||||||
|
|
||||||
// Menus.js:166
|
|
||||||
GetText.add('0', '${escape(_("0"))}')
|
|
||||||
|
|
||||||
// Menus.js:168
|
|
||||||
GetText.add('1', '${escape(_("1"))}')
|
|
||||||
|
|
||||||
// Menus.js:111, Menus.js:130
|
// Menus.js:111, Menus.js:130
|
||||||
GetText.add('10 KiB/s', '${escape(_("10 KiB/s"))}')
|
GetText.add('10 KiB/s', '${escape(_("10 KiB/s"))}')
|
||||||
|
|
||||||
// Menus.js:149
|
|
||||||
GetText.add('100', '${escape(_("100"))}')
|
|
||||||
|
|
||||||
// Menus.js:170
|
|
||||||
GetText.add('2', '${escape(_("2"))}')
|
|
||||||
|
|
||||||
// Menus.js:151
|
|
||||||
GetText.add('200', '${escape(_("200"))}')
|
|
||||||
|
|
||||||
// Menus.js:172
|
|
||||||
GetText.add('3', '${escape(_("3"))}')
|
|
||||||
|
|
||||||
// Menus.js:113, Menus.js:132
|
// Menus.js:113, Menus.js:132
|
||||||
GetText.add('30 KiB/s', '${escape(_("30 KiB/s"))}')
|
GetText.add('30 KiB/s', '${escape(_("30 KiB/s"))}')
|
||||||
|
|
||||||
// Menus.js:153
|
|
||||||
GetText.add('300', '${escape(_("300"))}')
|
|
||||||
|
|
||||||
// Menus.js:117, Menus.js:136
|
// Menus.js:117, Menus.js:136
|
||||||
GetText.add('300 KiB/s', '${escape(_("300 KiB/s"))}')
|
GetText.add('300 KiB/s', '${escape(_("300 KiB/s"))}')
|
||||||
|
|
||||||
// Menus.js:174
|
|
||||||
GetText.add('5', '${escape(_("5"))}')
|
|
||||||
|
|
||||||
// Menus.js:109, Menus.js:128
|
// Menus.js:109, Menus.js:128
|
||||||
GetText.add('5 KiB/s', '${escape(_("5 KiB/s"))}')
|
GetText.add('5 KiB/s', '${escape(_("5 KiB/s"))}')
|
||||||
|
|
||||||
// Menus.js:147
|
|
||||||
GetText.add('50', '${escape(_("50"))}')
|
|
||||||
|
|
||||||
// Menus.js:155
|
|
||||||
GetText.add('500', '${escape(_("500"))}')
|
|
||||||
|
|
||||||
// Menus.js:115, Menus.js:134
|
// Menus.js:115, Menus.js:134
|
||||||
GetText.add('80 KiB/s', '${escape(_("80 KiB/s"))}')
|
GetText.add('80 KiB/s', '${escape(_("80 KiB/s"))}')
|
||||||
|
|
||||||
// QueuePage.js:69
|
// QueuePage.js:69
|
||||||
GetText.add('Active Torrents', '${escape(_("Active Torrents"))}')
|
GetText.add('Active Torrents', '${escape(_("Active Torrents"))}')
|
||||||
|
|
||||||
// EditTrackersWindow.js:112, ConnectionManager.js:100, AddConnectionWindow.js:56, Toolbar.js:58, AddTrackerWindow.js:57, UrlWindow.js:50, FileWindow.js:53, AddWindow.js:52
|
// EditTrackersWindow.js:112, ConnectionManager.js:110, AddConnectionWindow.js:56, Toolbar.js:58, AddTrackerWindow.js:57, UrlWindow.js:50, FileWindow.js:53, AddWindow.js:52
|
||||||
GetText.add('Add', '${escape(_("Add"))}')
|
GetText.add('Add', '${escape(_("Add"))}')
|
||||||
|
|
||||||
// AddConnectionWindow.js:40
|
// AddConnectionWindow.js:40
|
||||||
GetText.add('Add Connection', '${escape(_("Add Connection"))}')
|
GetText.add('Add Connection', '${escape(_("Add Connection"))}')
|
||||||
|
|
||||||
// OptionsTab.js:143
|
// OptionsTab.js:131
|
||||||
GetText.add('Add In Paused State', '${escape(_("Add In Paused State"))}')
|
GetText.add('Add In Paused State', '${escape(_("Add In Paused State"))}')
|
||||||
|
|
||||||
// AddWindow.js:37
|
// AddWindow.js:37
|
||||||
|
@ -122,6 +86,9 @@ GetText.add('Announce OK', '${escape(_("Announce OK"))}')
|
||||||
// StatusTab.js:124
|
// StatusTab.js:124
|
||||||
GetText.add('Announce Sent', '${escape(_("Announce Sent"))}')
|
GetText.add('Announce Sent', '${escape(_("Announce Sent"))}')
|
||||||
|
|
||||||
|
// ProxyPage.js:67
|
||||||
|
GetText.add('Anonymous Mode', '${escape(_("Anonymous Mode"))}')
|
||||||
|
|
||||||
// OptionsTab.js:347, PreferencesWindow.js:107
|
// OptionsTab.js:347, PreferencesWindow.js:107
|
||||||
GetText.add('Apply', '${escape(_("Apply"))}')
|
GetText.add('Apply', '${escape(_("Apply"))}')
|
||||||
|
|
||||||
|
@ -167,6 +134,9 @@ GetText.add('Certificate', '${escape(_("Certificate"))}')
|
||||||
// InterfacePage.js:117
|
// InterfacePage.js:117
|
||||||
GetText.add('Change', '${escape(_("Change"))}')
|
GetText.add('Change', '${escape(_("Change"))}')
|
||||||
|
|
||||||
|
// ConnectionManager.js:285
|
||||||
|
GetText.add('Change Default Password', '${escape(_("Change Default Password"))}')
|
||||||
|
|
||||||
// InterfacePage.js:224
|
// InterfacePage.js:224
|
||||||
GetText.add('Change Successful', '${escape(_("Change Successful"))}')
|
GetText.add('Change Successful', '${escape(_("Change Successful"))}')
|
||||||
|
|
||||||
|
@ -185,10 +155,10 @@ GetText.add('Completed', '${escape(_("Completed"))}')
|
||||||
// InterfacePage.js:105
|
// InterfacePage.js:105
|
||||||
GetText.add('Confirm Password', '${escape(_("Confirm Password"))}')
|
GetText.add('Confirm Password', '${escape(_("Confirm Password"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:55, ConnectionManager.js:184
|
// ConnectionManager.js:55
|
||||||
GetText.add('Connect', '${escape(_("Connect"))}')
|
GetText.add('Connect', '${escape(_("Connect"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:177, ConnectionManager.js:225
|
// ConnectionManager.js:79
|
||||||
GetText.add('Connected', '${escape(_("Connected"))}')
|
GetText.add('Connected', '${escape(_("Connected"))}')
|
||||||
|
|
||||||
// Menus.js:142
|
// Menus.js:142
|
||||||
|
@ -215,7 +185,7 @@ GetText.add('Create', '${escape(_("Create"))}')
|
||||||
// Menus.js:104
|
// Menus.js:104
|
||||||
GetText.add('D/L Speed Limit', '${escape(_("D/L Speed Limit"))}')
|
GetText.add('D/L Speed Limit', '${escape(_("D/L Speed Limit"))}')
|
||||||
|
|
||||||
// NetworkPage.js:214
|
// NetworkPage.js:224
|
||||||
GetText.add('DHT', '${escape(_("DHT"))}')
|
GetText.add('DHT', '${escape(_("DHT"))}')
|
||||||
|
|
||||||
// Statusbar.js:210
|
// Statusbar.js:210
|
||||||
|
@ -236,10 +206,10 @@ GetText.add('Details', '${escape(_("Details"))}')
|
||||||
// EncryptionPage.js:66, EncryptionPage.js:84
|
// EncryptionPage.js:66, EncryptionPage.js:84
|
||||||
GetText.add('Disabled', '${escape(_("Disabled"))}')
|
GetText.add('Disabled', '${escape(_("Disabled"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:179
|
// ConnectionManager.js:189
|
||||||
GetText.add('Disconnect', '${escape(_("Disconnect"))}')
|
GetText.add('Disconnect', '${escape(_("Disconnect"))}')
|
||||||
|
|
||||||
// Menus.js:257, Deluge.js:156
|
// Menus.js:257, Deluge.js:163
|
||||||
GetText.add('Do Not Download', '${escape(_("Do Not Download"))}')
|
GetText.add('Do Not Download', '${escape(_("Do Not Download"))}')
|
||||||
|
|
||||||
// QueuePage.js:107
|
// QueuePage.js:107
|
||||||
|
@ -257,8 +227,8 @@ GetText.add('Down Speed', '${escape(_("Down Speed"))}')
|
||||||
// FilesTab.js:63
|
// FilesTab.js:63
|
||||||
GetText.add('Download', '${escape(_("Download"))}')
|
GetText.add('Download', '${escape(_("Download"))}')
|
||||||
|
|
||||||
// OptionsTab.js:55
|
// MoveStorage.js:67, TorrentGrid.js:208, DetailsTab.js:48, OptionsTab.js:55
|
||||||
GetText.add('Download Location', '${escape(_("Download Location"))}')
|
GetText.add('Download Folder', '${escape(_("Download Folder"))}')
|
||||||
|
|
||||||
// Statusbar.js:104
|
// Statusbar.js:104
|
||||||
GetText.add('Download Speed', '${escape(_("Download Speed"))}')
|
GetText.add('Download Speed', '${escape(_("Download Speed"))}')
|
||||||
|
@ -293,7 +263,7 @@ GetText.add('Enabled', '${escape(_("Enabled"))}')
|
||||||
// EncryptionPage.js:41
|
// EncryptionPage.js:41
|
||||||
GetText.add('Encryption', '${escape(_("Encryption"))}')
|
GetText.add('Encryption', '${escape(_("Encryption"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:308, ConnectionManager.js:364, AddConnectionWindow.js:103, StatusTab.js:121, AddWindow.js:209
|
// ConnectionManager.js:317, ConnectionManager.js:373, AddConnectionWindow.js:103, StatusTab.js:121, AddWindow.js:209
|
||||||
GetText.add('Error', '${escape(_("Error"))}')
|
GetText.add('Error', '${escape(_("Error"))}')
|
||||||
|
|
||||||
// Menus.js:253
|
// Menus.js:253
|
||||||
|
@ -330,7 +300,7 @@ GetText.add('Forced', '${escape(_("Forced"))}')
|
||||||
GetText.add('Forward', '${escape(_("Forward"))}')
|
GetText.add('Forward', '${escape(_("Forward"))}')
|
||||||
|
|
||||||
// Statusbar.js:216
|
// Statusbar.js:216
|
||||||
GetText.add('Freespace in download location', '${escape(_("Freespace in download location"))}')
|
GetText.add('Freespace in download folder', '${escape(_("Freespace in download folder"))}')
|
||||||
|
|
||||||
// EncryptionPage.js:101
|
// EncryptionPage.js:101
|
||||||
GetText.add('Full Stream', '${escape(_("Full Stream"))}')
|
GetText.add('Full Stream', '${escape(_("Full Stream"))}')
|
||||||
|
@ -359,16 +329,19 @@ GetText.add('Hash', '${escape(_("Hash"))}')
|
||||||
// Toolbar.js:107
|
// Toolbar.js:107
|
||||||
GetText.add('Help', '${escape(_("Help"))}')
|
GetText.add('Help', '${escape(_("Help"))}')
|
||||||
|
|
||||||
// Menus.js:267, Deluge.js:158
|
// ProxyPage.js:77
|
||||||
|
GetText.add('Hide Client Identity', '${escape(_("Hide Client Identity"))}')
|
||||||
|
|
||||||
|
// Menus.js:267, Deluge.js:165
|
||||||
GetText.add('High Priority', '${escape(_("High Priority"))}')
|
GetText.add('High Priority', '${escape(_("High Priority"))}')
|
||||||
|
|
||||||
// Menus.js:272, Deluge.js:159
|
// Menus.js:272, Deluge.js:166
|
||||||
GetText.add('Highest Priority', '${escape(_("Highest Priority"))}')
|
GetText.add('Highest Priority', '${escape(_("Highest Priority"))}')
|
||||||
|
|
||||||
// FileBrowser.js:56
|
// FileBrowser.js:56
|
||||||
GetText.add('Home', '${escape(_("Home"))}')
|
GetText.add('Home', '${escape(_("Home"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:74, AddConnectionWindow.js:66, ProxyI2PField.js:49
|
// ConnectionManager.js:84, AddConnectionWindow.js:66, ProxyI2PField.js:49
|
||||||
GetText.add('Host', '${escape(_("Host"))}')
|
GetText.add('Host', '${escape(_("Host"))}')
|
||||||
|
|
||||||
// ProxyField.js:75
|
// ProxyField.js:75
|
||||||
|
@ -380,10 +353,10 @@ GetText.add('I2P Proxy', '${escape(_("I2P Proxy"))}')
|
||||||
// BandwidthPage.js:122
|
// BandwidthPage.js:122
|
||||||
GetText.add('Ignore limits on local network', '${escape(_("Ignore limits on local network"))}')
|
GetText.add('Ignore limits on local network', '${escape(_("Ignore limits on local network"))}')
|
||||||
|
|
||||||
// NetworkPage.js:51
|
// NetworkPage.js:60
|
||||||
GetText.add('Incoming Address', '${escape(_("Incoming Address"))}')
|
GetText.add('Incoming Address', '${escape(_("Incoming Address"))}')
|
||||||
|
|
||||||
// NetworkPage.js:67
|
// NetworkPage.js:77
|
||||||
GetText.add('Incoming Ports', '${escape(_("Incoming Ports"))}')
|
GetText.add('Incoming Ports', '${escape(_("Incoming Ports"))}')
|
||||||
|
|
||||||
// EncryptionPage.js:57
|
// EncryptionPage.js:57
|
||||||
|
@ -407,13 +380,10 @@ GetText.add('Interface', '${escape(_("Interface"))}')
|
||||||
// InterfacePage.js:199
|
// InterfacePage.js:199
|
||||||
GetText.add('Invalid Password', '${escape(_("Invalid Password"))}')
|
GetText.add('Invalid Password', '${escape(_("Invalid Password"))}')
|
||||||
|
|
||||||
// OptionsTab.js:114, OptionsTab.js:141
|
// Statusbar.js:144, Statusbar.js:192, OptionsTab.js:114, OptionsTab.js:141
|
||||||
GetText.add('KiB/s', '${escape(_("KiB/s"))}')
|
GetText.add('KiB/s', '${escape(_("KiB/s"))}')
|
||||||
|
|
||||||
// Statusbar.js:144, Statusbar.js:192
|
// NetworkPage.js:218
|
||||||
GetText.add('Kib/s', '${escape(_("Kib/s"))}')
|
|
||||||
|
|
||||||
// NetworkPage.js:208
|
|
||||||
GetText.add('LSD', '${escape(_("LSD"))}')
|
GetText.add('LSD', '${escape(_("LSD"))}')
|
||||||
|
|
||||||
// EncryptionPage.js:93
|
// EncryptionPage.js:93
|
||||||
|
@ -422,7 +392,7 @@ GetText.add('Level:', '${escape(_("Level:"))}')
|
||||||
// StatusTab.js:61
|
// StatusTab.js:61
|
||||||
GetText.add('Loading', '${escape(_("Loading"))}')
|
GetText.add('Loading', '${escape(_("Loading"))}')
|
||||||
|
|
||||||
// MoveStorage.js:67, OtherPage.js:104
|
// OtherPage.js:104
|
||||||
GetText.add('Location', '${escape(_("Location"))}')
|
GetText.add('Location', '${escape(_("Location"))}')
|
||||||
|
|
||||||
// LoginWindow.js:45, LoginWindow.js:54
|
// LoginWindow.js:45, LoginWindow.js:54
|
||||||
|
@ -477,24 +447,24 @@ GetText.add('Move', '${escape(_("Move"))}')
|
||||||
GetText.add('Move Completed', '${escape(_("Move Completed"))}')
|
GetText.add('Move Completed', '${escape(_("Move Completed"))}')
|
||||||
|
|
||||||
// OptionsTab.js:71
|
// OptionsTab.js:71
|
||||||
GetText.add('Move Completed Location', '${escape(_("Move Completed Location"))}')
|
GetText.add('Move Completed Folder', '${escape(_("Move Completed Folder"))}')
|
||||||
|
|
||||||
// Menus.js:242, MoveStorage.js:38
|
// Menus.js:242, MoveStorage.js:38
|
||||||
GetText.add('Move Storage', '${escape(_("Move Storage"))}')
|
GetText.add('Move Download Folder', '${escape(_("Move Download Folder"))}')
|
||||||
|
|
||||||
// DownloadsPage.js:75
|
// DownloadsPage.js:75
|
||||||
GetText.add('Move completed to', '${escape(_("Move completed to"))}')
|
GetText.add('Move completed to', '${escape(_("Move completed to"))}')
|
||||||
|
|
||||||
// NetworkPage.js:194
|
// NetworkPage.js:204
|
||||||
GetText.add('NAT-PMP', '${escape(_("NAT-PMP"))}')
|
GetText.add('NAT-PMP', '${escape(_("NAT-PMP"))}')
|
||||||
|
|
||||||
// TorrentGrid.js:116, DetailsTab.js:46
|
// TorrentGrid.js:116, DetailsTab.js:46
|
||||||
GetText.add('Name', '${escape(_("Name"))}')
|
GetText.add('Name', '${escape(_("Name"))}')
|
||||||
|
|
||||||
// NetworkPage.js:42
|
// NetworkPage.js:51
|
||||||
GetText.add('Network', '${escape(_("Network"))}')
|
GetText.add('Network', '${escape(_("Network"))}')
|
||||||
|
|
||||||
// NetworkPage.js:177
|
// NetworkPage.js:187
|
||||||
GetText.add('Network Extras', '${escape(_("Network Extras"))}')
|
GetText.add('Network Extras', '${escape(_("Network Extras"))}')
|
||||||
|
|
||||||
// InterfacePage.js:101
|
// InterfacePage.js:101
|
||||||
|
@ -503,7 +473,7 @@ GetText.add('New Password', '${escape(_("New Password"))}')
|
||||||
// ProxyField.js:56
|
// ProxyField.js:56
|
||||||
GetText.add('None', '${escape(_("None"))}')
|
GetText.add('None', '${escape(_("None"))}')
|
||||||
|
|
||||||
// Menus.js:262, Deluge.js:157
|
// Menus.js:262, Deluge.js:164
|
||||||
GetText.add('Normal Priority', '${escape(_("Normal Priority"))}')
|
GetText.add('Normal Priority', '${escape(_("Normal Priority"))}')
|
||||||
|
|
||||||
// Statusbar.js:39
|
// Statusbar.js:39
|
||||||
|
@ -512,22 +482,25 @@ GetText.add('Not Connected', '${escape(_("Not Connected"))}')
|
||||||
// AddWindow.js:210
|
// AddWindow.js:210
|
||||||
GetText.add('Not a valid torrent', '${escape(_("Not a valid torrent"))}')
|
GetText.add('Not a valid torrent', '${escape(_("Not a valid torrent"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:180, ConnectionManager.js:188
|
|
||||||
GetText.add('Offline', '${escape(_("Offline"))}')
|
|
||||||
|
|
||||||
// EditTrackersWindow.js:57, OtherLimitWindow.js:73, PreferencesWindow.js:108
|
// EditTrackersWindow.js:57, OtherLimitWindow.js:73, PreferencesWindow.js:108
|
||||||
GetText.add('Ok', '${escape(_("Ok"))}')
|
GetText.add('OK', '${escape(_("OK"))}')
|
||||||
|
|
||||||
|
// ConnectionManager.js:76
|
||||||
|
GetText.add('Offline', '${escape(_("Offline"))}')
|
||||||
|
|
||||||
// InterfacePage.js:97
|
// InterfacePage.js:97
|
||||||
GetText.add('Old Password', '${escape(_("Old Password"))}')
|
GetText.add('Old Password', '${escape(_("Old Password"))}')
|
||||||
|
|
||||||
|
// ConnectionManager.js:73
|
||||||
|
GetText.add('Online', '${escape(_("Online"))}')
|
||||||
|
|
||||||
// Menus.js:99, OptionsTab.js:49, OptionsTab.js:40, DownloadsPage.js:92
|
// Menus.js:99, OptionsTab.js:49, OptionsTab.js:40, DownloadsPage.js:92
|
||||||
GetText.add('Options', '${escape(_("Options"))}')
|
GetText.add('Options', '${escape(_("Options"))}')
|
||||||
|
|
||||||
// Statusbar.js:90, Statusbar.js:138, Statusbar.js:186, OtherPage.js:42, DaemonPage.js:84
|
// Statusbar.js:90, Statusbar.js:138, Statusbar.js:186, OtherPage.js:42, DaemonPage.js:84
|
||||||
GetText.add('Other', '${escape(_("Other"))}')
|
GetText.add('Other', '${escape(_("Other"))}')
|
||||||
|
|
||||||
// NetworkPage.js:122
|
// NetworkPage.js:132
|
||||||
GetText.add('Outgoing Ports', '${escape(_("Outgoing Ports"))}')
|
GetText.add('Outgoing Ports', '${escape(_("Outgoing Ports"))}')
|
||||||
|
|
||||||
// EncryptionPage.js:75
|
// EncryptionPage.js:75
|
||||||
|
@ -542,19 +515,16 @@ GetText.add('Password', '${escape(_("Password"))}')
|
||||||
// ProxyField.js:105
|
// ProxyField.js:105
|
||||||
GetText.add('Password:', '${escape(_("Password:"))}')
|
GetText.add('Password:', '${escape(_("Password:"))}')
|
||||||
|
|
||||||
// DetailsTab.js:48
|
|
||||||
GetText.add('Path', '${escape(_("Path"))}')
|
|
||||||
|
|
||||||
// Menus.js:88, Toolbar.js:70
|
// Menus.js:88, Toolbar.js:70
|
||||||
GetText.add('Pause', '${escape(_("Pause"))}')
|
GetText.add('Pause', '${escape(_("Pause"))}')
|
||||||
|
|
||||||
// NetworkPage.js:201
|
// NetworkPage.js:211
|
||||||
GetText.add('Peer Exchange', '${escape(_("Peer Exchange"))}')
|
GetText.add('Peer Exchange', '${escape(_("Peer Exchange"))}')
|
||||||
|
|
||||||
// NetworkPage.js:237
|
// NetworkPage.js:247
|
||||||
GetText.add('Peer TOS Byte:', '${escape(_("Peer TOS Byte:"))}')
|
GetText.add('Peer TOS Byte:', '${escape(_("Peer TOS Byte:"))}')
|
||||||
|
|
||||||
// TorrentGrid.js:141, PeersTab.js:61
|
// TorrentGrid.js:141, PeersTab.js:63
|
||||||
GetText.add('Peers', '${escape(_("Peers"))}')
|
GetText.add('Peers', '${escape(_("Peers"))}')
|
||||||
|
|
||||||
// BandwidthPage.js:135
|
// BandwidthPage.js:135
|
||||||
|
@ -578,9 +548,12 @@ GetText.add('Port', '${escape(_("Port"))}')
|
||||||
// ProxyField.js:84
|
// ProxyField.js:84
|
||||||
GetText.add('Port:', '${escape(_("Port:"))}')
|
GetText.add('Port:', '${escape(_("Port:"))}')
|
||||||
|
|
||||||
// OptionsTab.js:149, DownloadsPage.js:121
|
// DownloadsPage.js:121
|
||||||
GetText.add('Pre-allocate disk space', '${escape(_("Pre-allocate disk space"))}')
|
GetText.add('Pre-allocate disk space', '${escape(_("Pre-allocate disk space"))}')
|
||||||
|
|
||||||
|
// OptionsTab.js:155
|
||||||
|
GetText.add('Preallocate Disk Space', '${escape(_("Preallocate Disk Space"))}')
|
||||||
|
|
||||||
// QueuePage.js:114
|
// QueuePage.js:114
|
||||||
GetText.add('Prefer Seeding over Downloading', '${escape(_("Prefer Seeding over Downloading"))}')
|
GetText.add('Prefer Seeding over Downloading', '${escape(_("Prefer Seeding over Downloading"))}')
|
||||||
|
|
||||||
|
@ -590,7 +563,7 @@ GetText.add('Preferences', '${escape(_("Preferences"))}')
|
||||||
// OptionsTab.js:308
|
// OptionsTab.js:308
|
||||||
GetText.add('Prioritize First/Last', '${escape(_("Prioritize First/Last"))}')
|
GetText.add('Prioritize First/Last', '${escape(_("Prioritize First/Last"))}')
|
||||||
|
|
||||||
// OptionsTab.js:131
|
// OptionsTab.js:137
|
||||||
GetText.add('Prioritize First/Last Pieces', '${escape(_("Prioritize First/Last Pieces"))}')
|
GetText.add('Prioritize First/Last Pieces', '${escape(_("Prioritize First/Last Pieces"))}')
|
||||||
|
|
||||||
// DownloadsPage.js:103
|
// DownloadsPage.js:103
|
||||||
|
@ -638,7 +611,7 @@ GetText.add('Ratio', '${escape(_("Ratio"))}')
|
||||||
// TorrentGrid.js:249
|
// TorrentGrid.js:249
|
||||||
GetText.add('Remaining', '${escape(_("Remaining"))}')
|
GetText.add('Remaining', '${escape(_("Remaining"))}')
|
||||||
|
|
||||||
// EditTrackersWindow.js:122, ConnectionManager.js:107, Toolbar.js:64, AddWindow.js:112
|
// EditTrackersWindow.js:122, ConnectionManager.js:117, Toolbar.js:64, AddWindow.js:112
|
||||||
GetText.add('Remove', '${escape(_("Remove"))}')
|
GetText.add('Remove', '${escape(_("Remove"))}')
|
||||||
|
|
||||||
// Menus.js:230, RemoveWindow.js:39, RemoveWindow.js:57
|
// Menus.js:230, RemoveWindow.js:39, RemoveWindow.js:57
|
||||||
|
@ -659,9 +632,6 @@ GetText.add('Resume', '${escape(_("Resume"))}')
|
||||||
// EditTrackerWindow.js:57
|
// EditTrackerWindow.js:57
|
||||||
GetText.add('Save', '${escape(_("Save"))}')
|
GetText.add('Save', '${escape(_("Save"))}')
|
||||||
|
|
||||||
// TorrentGrid.js:208
|
|
||||||
GetText.add('Save Path', '${escape(_("Save Path"))}')
|
|
||||||
|
|
||||||
// QueuePage.js:149
|
// QueuePage.js:149
|
||||||
GetText.add('Seed Time (m)', '${escape(_("Seed Time (m)"))}')
|
GetText.add('Seed Time (m)', '${escape(_("Seed Time (m)"))}')
|
||||||
|
|
||||||
|
@ -680,7 +650,10 @@ GetText.add('Select a torrent', '${escape(_("Select a torrent"))}')
|
||||||
// InstallPluginWindow.js:65
|
// InstallPluginWindow.js:65
|
||||||
GetText.add('Select an egg', '${escape(_("Select an egg"))}')
|
GetText.add('Select an egg', '${escape(_("Select an egg"))}')
|
||||||
|
|
||||||
// OptionsTab.js:137, DownloadsPage.js:109
|
// OptionsTab.js:143
|
||||||
|
GetText.add('Sequential Download', '${escape(_("Sequential Download"))}')
|
||||||
|
|
||||||
|
// DownloadsPage.js:109
|
||||||
GetText.add('Sequential download', '${escape(_("Sequential download"))}')
|
GetText.add('Sequential download', '${escape(_("Sequential download"))}')
|
||||||
|
|
||||||
// InterfacePage.js:129
|
// InterfacePage.js:129
|
||||||
|
@ -719,6 +692,9 @@ GetText.add('Show session speed in titlebar', '${escape(_("Show session speed in
|
||||||
// TorrentGrid.js:122, FilesTab.js:44, FilesTab.js:54
|
// TorrentGrid.js:122, FilesTab.js:44, FilesTab.js:54
|
||||||
GetText.add('Size', '${escape(_("Size"))}')
|
GetText.add('Size', '${escape(_("Size"))}')
|
||||||
|
|
||||||
|
// OptionsTab.js:149
|
||||||
|
GetText.add('Skip File Hash Check', '${escape(_("Skip File Hash Check"))}')
|
||||||
|
|
||||||
// ProxyField.js:57
|
// ProxyField.js:57
|
||||||
GetText.add('Socks4', '${escape(_("Socks4"))}')
|
GetText.add('Socks4', '${escape(_("Socks4"))}')
|
||||||
|
|
||||||
|
@ -728,7 +704,7 @@ GetText.add('Socks5', '${escape(_("Socks5"))}')
|
||||||
// ProxyField.js:59
|
// ProxyField.js:59
|
||||||
GetText.add('Socks5 Auth', '${escape(_("Socks5 Auth"))}')
|
GetText.add('Socks5 Auth', '${escape(_("Socks5 Auth"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:191
|
// ConnectionManager.js:201
|
||||||
GetText.add('Start Daemon', '${escape(_("Start Daemon"))}')
|
GetText.add('Start Daemon', '${escape(_("Start Daemon"))}')
|
||||||
|
|
||||||
// Sidebar.js:34
|
// Sidebar.js:34
|
||||||
|
@ -737,7 +713,7 @@ GetText.add('State', '${escape(_("State"))}')
|
||||||
// ConnectionManager.js:68, StatusTab.js:39, DetailsTab.js:52
|
// ConnectionManager.js:68, StatusTab.js:39, DetailsTab.js:52
|
||||||
GetText.add('Status', '${escape(_("Status"))}')
|
GetText.add('Status', '${escape(_("Status"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:115, ConnectionManager.js:197, ConnectionManager.js:328
|
// ConnectionManager.js:125, ConnectionManager.js:207, ConnectionManager.js:337
|
||||||
GetText.add('Stop Daemon', '${escape(_("Stop Daemon"))}')
|
GetText.add('Stop Daemon', '${escape(_("Stop Daemon"))}')
|
||||||
|
|
||||||
// OptionsTab.js:225
|
// OptionsTab.js:225
|
||||||
|
@ -764,13 +740,16 @@ GetText.add('Total Active Downloading', '${escape(_("Total Active Downloading"))
|
||||||
// QueuePage.js:94
|
// QueuePage.js:94
|
||||||
GetText.add('Total Active Seeding', '${escape(_("Total Active Seeding"))}')
|
GetText.add('Total Active Seeding', '${escape(_("Total Active Seeding"))}')
|
||||||
|
|
||||||
|
// DetailsTab.js:50
|
||||||
|
GetText.add('Total Files', '${escape(_("Total Files"))}')
|
||||||
|
|
||||||
// DetailsTab.js:49
|
// DetailsTab.js:49
|
||||||
GetText.add('Total Size', '${escape(_("Total Size"))}')
|
GetText.add('Total Size', '${escape(_("Total Size"))}')
|
||||||
|
|
||||||
// EditTrackersWindow.js:80, TorrentGrid.js:201, EditTrackerWindow.js:66, DetailsTab.js:53
|
// EditTrackersWindow.js:80, TorrentGrid.js:201, EditTrackerWindow.js:66, DetailsTab.js:53
|
||||||
GetText.add('Tracker', '${escape(_("Tracker"))}')
|
GetText.add('Tracker', '${escape(_("Tracker"))}')
|
||||||
|
|
||||||
// NetworkPage.js:221
|
// NetworkPage.js:231
|
||||||
GetText.add('Tracker Exchange', '${escape(_("Tracker Exchange"))}')
|
GetText.add('Tracker Exchange', '${escape(_("Tracker Exchange"))}')
|
||||||
|
|
||||||
// Sidebar.js:35
|
// Sidebar.js:35
|
||||||
|
@ -779,7 +758,7 @@ GetText.add('Tracker Host', '${escape(_("Tracker Host"))}')
|
||||||
// AddTrackerWindow.js:66
|
// AddTrackerWindow.js:66
|
||||||
GetText.add('Trackers', '${escape(_("Trackers"))}')
|
GetText.add('Trackers', '${escape(_("Trackers"))}')
|
||||||
|
|
||||||
// NetworkPage.js:229
|
// NetworkPage.js:239
|
||||||
GetText.add('Type Of Service', '${escape(_("Type Of Service"))}')
|
GetText.add('Type Of Service', '${escape(_("Type Of Service"))}')
|
||||||
|
|
||||||
// ProxyField.js:48
|
// ProxyField.js:48
|
||||||
|
@ -788,7 +767,7 @@ GetText.add('Type:', '${escape(_("Type:"))}')
|
||||||
// Menus.js:123
|
// Menus.js:123
|
||||||
GetText.add('U/L Speed Limit', '${escape(_("U/L Speed Limit"))}')
|
GetText.add('U/L Speed Limit', '${escape(_("U/L Speed Limit"))}')
|
||||||
|
|
||||||
// NetworkPage.js:188
|
// NetworkPage.js:198
|
||||||
GetText.add('UPnP', '${escape(_("UPnP"))}')
|
GetText.add('UPnP', '${escape(_("UPnP"))}')
|
||||||
|
|
||||||
// Statusbar.js:85, Statusbar.js:133, Statusbar.js:181, Menus.js:119, Menus.js:138, Menus.js:157, Menus.js:176
|
// Statusbar.js:85, Statusbar.js:133, Statusbar.js:181, Menus.js:119, Menus.js:138, Menus.js:157, Menus.js:176
|
||||||
|
@ -827,7 +806,7 @@ GetText.add('Uploading your torrent...', '${escape(_("Uploading your torrent..."
|
||||||
// UrlWindow.js:60, AddWindow.js:102
|
// UrlWindow.js:60, AddWindow.js:102
|
||||||
GetText.add('Url', '${escape(_("Url"))}')
|
GetText.add('Url', '${escape(_("Url"))}')
|
||||||
|
|
||||||
// NetworkPage.js:76, NetworkPage.js:131
|
// NetworkPage.js:86, NetworkPage.js:141
|
||||||
GetText.add('Use Random Ports', '${escape(_("Use Random Ports"))}')
|
GetText.add('Use Random Ports', '${escape(_("Use Random Ports"))}')
|
||||||
|
|
||||||
// InterfacePage.js:158
|
// InterfacePage.js:158
|
||||||
|
@ -839,12 +818,15 @@ GetText.add('Username', '${escape(_("Username"))}')
|
||||||
// ProxyField.js:96
|
// ProxyField.js:96
|
||||||
GetText.add('Username:', '${escape(_("Username:"))}')
|
GetText.add('Username:', '${escape(_("Username:"))}')
|
||||||
|
|
||||||
// ConnectionManager.js:80
|
// ConnectionManager.js:90
|
||||||
GetText.add('Version', '${escape(_("Version"))}')
|
GetText.add('Version', '${escape(_("Version"))}')
|
||||||
|
|
||||||
// StatusTab.js:122
|
// StatusTab.js:122
|
||||||
GetText.add('Warning', '${escape(_("Warning"))}')
|
GetText.add('Warning', '${escape(_("Warning"))}')
|
||||||
|
|
||||||
|
// ConnectionManager.js:286
|
||||||
|
GetText.add('We recommend changing the default password.<br><br>Would you like to change it now?', '${escape(_("We recommend changing the default password.<br><br>Would you like to change it now?"))}')
|
||||||
|
|
||||||
// OtherPage.js:90
|
// OtherPage.js:90
|
||||||
GetText.add('Yes, please send anonymous statistics', '${escape(_("Yes, please send anonymous statistics"))}')
|
GetText.add('Yes, please send anonymous statistics', '${escape(_("Yes, please send anonymous statistics"))}')
|
||||||
|
|
||||||
|
|
|
@ -757,7 +757,7 @@ class WebApi(JSONComponent):
|
||||||
Return the hosts in the hostlist.
|
Return the hosts in the hostlist.
|
||||||
"""
|
"""
|
||||||
log.debug("get_hosts called")
|
log.debug("get_hosts called")
|
||||||
return [(tuple(host[HOSTS_ID:HOSTS_PORT + 1]) + (_("Offline"),)) for host in self.host_list["hosts"]]
|
return [(tuple(host[HOSTS_ID:HOSTS_PORT + 1]) + ("Offline",)) for host in self.host_list["hosts"]]
|
||||||
|
|
||||||
@export
|
@export
|
||||||
def get_host_status(self, host_id):
|
def get_host_status(self, host_id):
|
||||||
|
@ -776,30 +776,30 @@ class WebApi(JSONComponent):
|
||||||
except TypeError:
|
except TypeError:
|
||||||
host = None
|
host = None
|
||||||
port = None
|
port = None
|
||||||
return response(_("Offline"))
|
return response("Offline")
|
||||||
|
|
||||||
def on_connect(connected, c, host_id):
|
def on_connect(connected, c, host_id):
|
||||||
def on_info(info, c):
|
def on_info(info, c):
|
||||||
c.disconnect()
|
c.disconnect()
|
||||||
return response(_("Online"), info)
|
return response("Online", info)
|
||||||
|
|
||||||
def on_info_fail(reason, c):
|
def on_info_fail(reason, c):
|
||||||
c.disconnect()
|
c.disconnect()
|
||||||
return response(_("Offline"))
|
return response("Offline")
|
||||||
|
|
||||||
if not connected:
|
if not connected:
|
||||||
return response(_("Offline"))
|
return response("Offline")
|
||||||
|
|
||||||
return c.daemon.info().addCallback(on_info, c).addErrback(on_info_fail, c)
|
return c.daemon.info().addCallback(on_info, c).addErrback(on_info_fail, c)
|
||||||
|
|
||||||
def on_connect_failed(reason, host_id):
|
def on_connect_failed(reason, host_id):
|
||||||
return response(_("Offline"))
|
return response("Offline")
|
||||||
|
|
||||||
if client.connected() and (host, port, "localclient" if not
|
if client.connected() and (host, port, "localclient" if not
|
||||||
user and host in ("127.0.0.1", "localhost") else
|
user and host in ("127.0.0.1", "localhost") else
|
||||||
user) == client.connection_info():
|
user) == client.connection_info():
|
||||||
def on_info(info):
|
def on_info(info):
|
||||||
return response(_("Connected"), info)
|
return response("Connected", info)
|
||||||
|
|
||||||
return client.daemon.info().addCallback(on_info)
|
return client.daemon.info().addCallback(on_info)
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue