[Lint] Update pre-commit hook and isort versions

* Fixed black hook requiring Py3.6 to installed locally. Will now assume
Py3.6+ in installed.
 * Added isort traceback in pre-commit flake8 hook fails
 * Updated versions of Black, Prettier and isort
 * Keep Flake8 at 3.7.9 due to E402 issue: https://gitlab.com/pycqa/flake8/-/issues/638
 * New pyproject config for isort v5 with fixes for Python 2 imports.
 * Fixed travis config to run Python 3.6 for lint run. Replaced the
virtualenv with_system_site_packages config with Travis specific Python
config value so lint run doesn't attempt to append with_system_site_packages
to Python 3.6 command.
This commit is contained in:
Calum Lind 2021-01-17 15:48:35 +00:00
parent 23a48dd01c
commit 610a1bb313
114 changed files with 955 additions and 1034 deletions

View File

@ -6,28 +6,29 @@ exclude: >
)$
repos:
- repo: https://github.com/ambv/black
rev: 19.10b0
rev: 20.8b1
hooks:
- id: black
name: Fmt Black
language_version: python3.6
- repo: https://github.com/prettier/prettier
rev: 1.19.1
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v2.2.1
hooks:
- id: prettier
name: Fmt Prettier
# Workaround to list modified files only.
args: [--list-different]
- repo: https://gitlab.com/pycqa/flake8
# v3.7.9 due to E402 issue: https://gitlab.com/pycqa/flake8/-/issues/638
rev: 3.7.9
hooks:
- id: flake8
name: Chk Flake8
additional_dependencies:
- flake8-isort==2.7
- pep8-naming==0.8.2
- flake8-isort==4.0.0
- pep8-naming==0.11.1
args: [--isort-show-traceback]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v2.4.0
rev: v3.4.0
hooks:
- id: double-quote-string-fixer
name: Fix Double-quotes

View File

@ -4,10 +4,8 @@ dist: xenial
language: python
python:
# Travis Xenial Python to support system_site_packages
- 3.5
- 3.5_with_system_site_packages
cache: pip
virtualenv:
system_site_packages: true
env:
global:
@ -21,19 +19,20 @@ jobs:
include:
- name: Unit tests
env: TOX_ENV=py3
- name: Unit tests - libtorrent 1.2
env: TOX_ENV=py3
addons:
apt:
sources: [sourceline: "ppa:libtorrent.org/1.2-daily"]
packages: [python3-libtorrent, python3-venv]
#~ - name: Unit tests - libtorrent 1.2
#~ env: TOX_ENV=py3
#~ addons:
#~ apt:
#~ sources: [sourceline: "ppa:libtorrent.org/1.2-daily"]
#~ packages: [python3-libtorrent, python3-venv]
- name: Unit tests - Python 2
env: TOX_ENV=py27
python: 2.7
python: 2.7_with_system_site_packages
- if: commit_message =~ SECURITY_TEST
env: TOX_ENV=security
- name: Code linting
env: TOX_ENV=lint
python: 3.6
- name: Docs build
env: TOX_ENV=docs
- name: GTK unit tests
@ -73,7 +72,9 @@ install:
before_script:
- export PYTHONPATH=$PYTHONPATH:$PWD
# Verify libtorrent installed and version
- python -c "import libtorrent as lt; print(lt.__version__)"
- "if [ $TOX_ENV != 'lint' ]; then
python -c 'import libtorrent as lt; print(lt.__version__)';
fi"
# Start xvfb for the GTKUI tests
- "if [ $TOX_ENV == 'gtkui' ]; then
/sbin/start-stop-daemon --start --quiet --background \

View File

@ -43,8 +43,8 @@ try:
from urllib.request import pathname2url
except ImportError:
# PY2 fallback
from urlparse import urljoin # pylint: disable=ungrouped-imports
from urllib import pathname2url, unquote_plus # pylint: disable=ungrouped-imports
from urlparse import urljoin # pylint: disable=ungrouped-imports
# Windows workaround for HTTPS requests requiring certificate authority bundle.
# see: https://twistedmatrix.com/trac/ticket/9209
@ -1013,9 +1013,9 @@ def decode_bytes(byte_str, encoding='utf8'):
if encoding.lower() not in ['utf8', 'utf-8']:
encodings.insert(0, lambda: (encoding, 'strict'))
for l in encodings:
for enc in encodings:
try:
return byte_str.decode(*l())
return byte_str.decode(*enc())
except UnicodeDecodeError:
pass
return ''
@ -1144,6 +1144,7 @@ AUTH_LEVEL_DEFAULT = AUTH_LEVEL_NORMAL
def create_auth_file():
import stat
import deluge.configmanager
auth_file = deluge.configmanager.get_config_dir('auth')
@ -1159,6 +1160,7 @@ def create_auth_file():
def create_localclient_account(append=False):
import random
from hashlib import sha1 as sha
import deluge.configmanager
auth_file = deluge.configmanager.get_config_dir('auth')
@ -1244,8 +1246,7 @@ def set_env_variable(name, value):
os.environ[name] = value.encode('utf8')
if windows_check():
from ctypes import windll
from ctypes import cdll
from ctypes import cdll, windll
# Update the copy maintained by Windows (so SysInternals Process Explorer sees it)
result = windll.kernel32.SetEnvironmentVariableW(name, value)
@ -1274,7 +1275,7 @@ def unicode_argv():
# Versions 2.x of Python don't support Unicode in sys.argv on
# Windows, with the underlying Windows API instead replacing multi-byte
# characters with '?'.
from ctypes import POINTER, byref, cdll, c_int, windll
from ctypes import POINTER, byref, c_int, cdll, windll
from ctypes.wintypes import LPCWSTR, LPWSTR
get_cmd_linew = cdll.kernel32.GetCommandLineW

View File

@ -204,9 +204,9 @@ class Config(object):
global callLater
if callLater is None:
# Must import here and not at the top or it will throw ReactorAlreadyInstalledError
from twisted.internet.reactor import (
from twisted.internet.reactor import ( # pylint: disable=redefined-outer-name
callLater,
) # pylint: disable=redefined-outer-name
)
# Run the set_function for this key if any
try:
for func in self.__set_functions[key]:
@ -304,9 +304,9 @@ class Config(object):
global callLater
if callLater is None:
# Must import here and not at the top or it will throw ReactorAlreadyInstalledError
from twisted.internet.reactor import (
from twisted.internet.reactor import ( # pylint: disable=redefined-outer-name
callLater,
) # pylint: disable=redefined-outer-name
)
# We set the save_timer for 5 seconds if not already set
if not self._save_timer or not self._save_timer.active():

View File

@ -57,10 +57,10 @@ from deluge.event import (
from deluge.httpdownloader import download_file
try:
from urllib.request import urlopen, URLError
from urllib.request import URLError, urlopen
except ImportError:
# PY2 fallback
from urllib2 import urlopen, URLError
from urllib2 import URLError, urlopen
log = logging.getLogger(__name__)

View File

@ -200,6 +200,7 @@ class Daemon(object):
if rpc not in self.get_method_list():
return False
return self.rpcserver.get_session_auth_level() >= self.rpcserver.get_rpc_auth_level(
rpc
return (
self.rpcserver.get_session_auth_level()
>= self.rpcserver.get_rpc_auth_level(rpc)
)

View File

@ -100,9 +100,7 @@ def tracker_error_filter(torrent_ids, values):
class FilterManager(component.Component):
"""FilterManager
"""
"""FilterManager"""
def __init__(self, core):
component.Component.__init__(self, 'FilterManager')

View File

@ -1340,8 +1340,8 @@ class Torrent(object):
def scrape_tracker(self):
"""Scrape the tracker
A scrape request queries the tracker for statistics such as total
number of incomplete peers, complete peers, number of downloads etc.
A scrape request queries the tracker for statistics such as total
number of incomplete peers, complete peers, number of downloads etc.
"""
try:
self.handle.scrape_tracker()

View File

@ -25,7 +25,7 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
border: false,
watchdirs: {},
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.AutoAddPage.superclass.initComponent.call(this);
var autoAdd = this;
@ -41,10 +41,10 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
sortable: true,
dataIndex: 'enabled',
tpl: new Ext.XTemplate('{enabled:this.getCheckbox}', {
getCheckbox: function(checked, selected) {
getCheckbox: function (checked, selected) {
Deluge.ux.AutoAdd.onClickFunctions[
selected.id
] = function() {
] = function () {
if (selected.enabled) {
deluge.client.autoadd.disable_watchdir(
selected.id
@ -122,9 +122,9 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
this.on('show', this.onPreferencesShow, this);
},
updateWatchDirs: function() {
updateWatchDirs: function () {
deluge.client.autoadd.get_watchdirs({
success: function(watchdirs) {
success: function (watchdirs) {
this.watchdirs = watchdirs;
var watchdirsArray = [];
for (var id in watchdirs) {
@ -145,12 +145,12 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
});
},
onAddClick: function() {
onAddClick: function () {
if (!this.addWin) {
this.addWin = new Deluge.ux.AutoAdd.AddAutoAddCommandWindow();
this.addWin.on(
'watchdiradd',
function() {
function () {
this.updateWatchDirs();
},
this
@ -159,12 +159,12 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
this.addWin.show();
},
onEditClick: function() {
onEditClick: function () {
if (!this.editWin) {
this.editWin = new Deluge.ux.AutoAdd.EditAutoAddCommandWindow();
this.editWin.on(
'watchdiredit',
function() {
function () {
this.updateWatchDirs();
},
this
@ -174,39 +174,27 @@ Deluge.ux.preferences.AutoAddPage = Ext.extend(Ext.Panel, {
this.editWin.show(id, this.watchdirs[id]);
},
onPreferencesShow: function() {
onPreferencesShow: function () {
this.updateWatchDirs();
},
onRemoveClick: function() {
onRemoveClick: function () {
var record = this.list.getSelectedRecords()[0];
deluge.client.autoadd.remove(record.id, {
success: function() {
success: function () {
this.updateWatchDirs();
},
scope: this,
});
},
onSelectionChange: function(dv, selections) {
onSelectionChange: function (dv, selections) {
if (selections.length) {
this.panel
.getBottomToolbar()
.items.get(1)
.enable();
this.panel
.getBottomToolbar()
.items.get(3)
.enable();
this.panel.getBottomToolbar().items.get(1).enable();
this.panel.getBottomToolbar().items.get(3).enable();
} else {
this.panel
.getBottomToolbar()
.items.get(1)
.disable();
this.panel
.getBottomToolbar()
.items.get(3)
.disable();
this.panel.getBottomToolbar().items.get(1).disable();
this.panel.getBottomToolbar().items.get(3).disable();
}
},
});
@ -218,12 +206,12 @@ Deluge.plugins.AutoAddPlugin = Ext.extend(Deluge.Plugin, {
prefsPage: null,
},
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(Deluge.plugins.AutoAddPlugin.prefsPage);
Deluge.plugins.AutoAddPlugin.prefsPage = null;
},
onEnable: function() {
onEnable: function () {
/*
* Called for each of the JavaScript files.
* This will prevent adding unnecessary tabs to the preferences window.

View File

@ -60,7 +60,7 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
],
}),
initComponent: function() {
initComponent: function () {
Deluge.ux.AutoAdd.AutoAddWindowBase.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -81,11 +81,11 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
});
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
getOptions: function() {
getOptions: function () {
var options = {};
options['enabled'] = Ext.getCmp('enabled').getValue();
@ -102,22 +102,22 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
options['append_extension'] = Ext.getCmp('append_extension').getValue();
options['owner'] = Ext.getCmp('owner').getValue();
this.toggle_ids.forEach(function(toggle_id) {
this.toggle_ids.forEach(function (toggle_id) {
options[toggle_id] = Ext.getCmp(toggle_id).getValue();
});
this.spin_ids.forEach(function(spin_id) {
this.spin_ids.forEach(function (spin_id) {
options[spin_id] = Ext.getCmp(spin_id).getValue();
options[spin_id + '_toggle'] = Ext.getCmp(
spin_id + '_toggle'
).getValue();
});
this.spin_int_ids.forEach(function(spin_int_id) {
this.spin_int_ids.forEach(function (spin_int_id) {
options[spin_int_id] = Ext.getCmp(spin_int_id).getValue();
options[spin_int_id + '_toggle'] = Ext.getCmp(
spin_int_id + '_toggle'
).getValue();
});
this.chk_ids.forEach(function(chk_id) {
this.chk_ids.forEach(function (chk_id) {
options[chk_id] = Ext.getCmp(chk_id).getValue();
options[chk_id + '_toggle'] = Ext.getCmp(
chk_id + '_toggle'
@ -137,7 +137,7 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
return options;
},
loadOptions: function(options) {
loadOptions: function (options) {
/*
* Populate all available options data to the UI
*/
@ -193,7 +193,7 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
: false
);
this.spin_ids.forEach(function(spin_id) {
this.spin_ids.forEach(function (spin_id) {
Ext.getCmp(spin_id).setValue(
options[spin_id] !== undefined ? options[spin_id] : 0
);
@ -203,7 +203,7 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
: false
);
});
this.chk_ids.forEach(function(chk_id) {
this.chk_ids.forEach(function (chk_id) {
Ext.getCmp(chk_id).setValue(
options[chk_id] !== undefined ? options[chk_id] : true
);
@ -237,14 +237,14 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
'path',
'download_location',
'copy_torrent',
].forEach(function(field) {
].forEach(function (field) {
value = options[field] !== undefined ? options[field] : '';
Ext.getCmp(field).setValue(value);
});
if (Object.keys(options).length === 0) {
deluge.client.core.get_config({
success: function(config) {
success: function (config) {
var value;
Ext.getCmp('download_location').setValue(
options['download_location'] !== undefined
@ -291,11 +291,11 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
}
deluge.client.core.get_enabled_plugins({
success: function(plugins) {
success: function (plugins) {
if (plugins !== undefined && plugins.indexOf('Label') > -1) {
this.MainTab.LabelFset.setVisible(true);
deluge.client.label.get_labels({
success: function(labels) {
success: function (labels) {
for (
var index = 0;
index < labels.length;
@ -305,7 +305,7 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
}
this.labels.loadData(labels, false);
},
failure: function(failure) {
failure: function (failure) {
console.error(failure);
},
scope: this,
@ -324,30 +324,26 @@ Deluge.ux.AutoAdd.AutoAddWindowBase = Ext.extend(Ext.Window, {
accounts[index] = [accounts[index]['username']];
}
me.accounts.loadData(accounts, false);
Ext.getCmp('owner')
.setValue(owner)
.enable();
Ext.getCmp('owner').setValue(owner).enable();
}
function on_accounts_failure(failure) {
deluge.client.autoadd.get_auth_user({
success: function(user) {
success: function (user) {
me.accounts.loadData([[user]], false);
Ext.getCmp('owner')
.setValue(user)
.disable(true);
Ext.getCmp('owner').setValue(user).disable(true);
},
scope: this,
});
}
deluge.client.autoadd.is_admin_level({
success: function(is_admin) {
success: function (is_admin) {
if (is_admin) {
deluge.client.core.get_known_accounts({
success: function(accounts) {
success: function (accounts) {
deluge.client.autoadd.get_auth_user({
success: function(user) {
success: function (user) {
on_accounts(
accounts,
options['owner'] !== undefined
@ -379,7 +375,7 @@ Deluge.ux.AutoAdd.EditAutoAddCommandWindow = Ext.extend(
{
title: _('Edit Watch Folder'),
initComponent: function() {
initComponent: function () {
Deluge.ux.AutoAdd.EditAutoAddCommandWindow.superclass.initComponent.call(
this
);
@ -389,7 +385,7 @@ Deluge.ux.AutoAdd.EditAutoAddCommandWindow = Ext.extend(
});
},
show: function(watchdir_id, options) {
show: function (watchdir_id, options) {
Deluge.ux.AutoAdd.EditAutoAddCommandWindow.superclass.show.call(
this
);
@ -397,11 +393,11 @@ Deluge.ux.AutoAdd.EditAutoAddCommandWindow = Ext.extend(
this.loadOptions(options);
},
onSaveClick: function() {
onSaveClick: function () {
try {
var options = this.getOptions();
deluge.client.autoadd.set_options(this.watchdir_id, options, {
success: function() {
success: function () {
this.fireEvent('watchdiredit', this, options);
},
scope: this,
@ -429,7 +425,7 @@ Deluge.ux.AutoAdd.AddAutoAddCommandWindow = Ext.extend(
{
title: _('Add Watch Folder'),
initComponent: function() {
initComponent: function () {
Deluge.ux.AutoAdd.AddAutoAddCommandWindow.superclass.initComponent.call(
this
);
@ -439,21 +435,21 @@ Deluge.ux.AutoAdd.AddAutoAddCommandWindow = Ext.extend(
});
},
show: function() {
show: function () {
Deluge.ux.AutoAdd.AddAutoAddCommandWindow.superclass.show.call(
this
);
this.loadOptions();
},
onAddClick: function() {
onAddClick: function () {
var options = this.getOptions();
deluge.client.autoadd.add(options, {
success: function() {
success: function () {
this.fireEvent('watchdiradd', this, options);
this.hide();
},
failure: function(err) {
failure: function (err) {
const regex = /: (.*\n)\n?\]/m;
var error;
if ((error = regex.exec(err.error.message)) !== null) {

View File

@ -19,7 +19,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
id: 'main_tab_panel',
title: _('Main'),
initComponent: function() {
initComponent: function () {
Deluge.ux.AutoAdd.AutoAddMainPanel.superclass.initComponent.call(this);
this.watchFolderFset = new Ext.form.FieldSet({
xtype: 'fieldset',
@ -69,7 +69,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
checked: true,
hideLabel: true,
listeners: {
check: function(cb, newValue) {
check: function (cb, newValue) {
if (newValue) {
Ext.getCmp(
'append_extension'
@ -98,7 +98,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
),
hideLabel: true,
listeners: {
check: function(cb, newValue) {
check: function (cb, newValue) {
if (newValue) {
Ext.getCmp(
'append_extension'
@ -141,7 +141,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
),
hideLabel: true,
listeners: {
check: function(cb, newValue) {
check: function (cb, newValue) {
if (newValue) {
Ext.getCmp(
'append_extension'
@ -201,7 +201,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
xtype: 'checkbox',
boxLabel: _('Set download folder'),
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp('download_location').setDisabled(
!checked
);
@ -233,7 +233,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
xtype: 'checkbox',
boxLabel: _('Set move completed folder'),
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp('move_completed_path').setDisabled(
!checked
);
@ -271,7 +271,7 @@ Deluge.ux.AutoAdd.AutoAddMainPanel = Ext.extend(Ext.Panel, {
xtype: 'checkbox',
boxLabel: _('Label:'),
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp('label').setDisabled(!checked);
},
},

View File

@ -19,7 +19,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
id: 'options_tab_panel',
title: _('Options'),
initComponent: function() {
initComponent: function () {
Deluge.ux.AutoAdd.AutoAddOptionsPanel.superclass.initComponent.call(
this
);
@ -149,7 +149,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
hideLabel: true,
width: 175,
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp('stop_ratio').setDisabled(
!checked
);
@ -223,7 +223,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
this.add([this.ownerFset, this.bandwidthFset, this.queueFset]);
},
_getBandwidthContainer: function(values) {
_getBandwidthContainer: function (values) {
return new Ext.Container({
xtype: 'container',
layout: 'hbox',
@ -236,7 +236,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
boxLabel: _(values.labelCheckbox),
width: 175,
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp(values.idSpinner).setDisabled(!checked);
},
},
@ -257,7 +257,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
});
},
_getQueueContainer: function(values) {
_getQueueContainer: function (values) {
return new Ext.Container({
xtype: 'container',
layout: 'hbox',
@ -270,7 +270,7 @@ Deluge.ux.AutoAdd.AutoAddOptionsPanel = Ext.extend(Ext.Panel, {
boxLabel: _(values.labelCheckbox),
width: 175,
listeners: {
check: function(cb, checked) {
check: function (cb, checked) {
Ext.getCmp(values.nameRadio).setDisabled(!checked);
Ext.getCmp('not_' + values.nameRadio).setDisabled(
!checked

View File

@ -22,7 +22,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
border: false,
autoScroll: true,
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.BlocklistPage.superclass.initComponent.call(this);
this.URLFset = this.add({
@ -210,11 +210,11 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
fields: [{ name: 'ip' }],
}),
listeners: {
afteredit: function(e) {
afteredit: function (e) {
e.record.commit();
},
},
setEmptyText: function(text) {
setEmptyText: function (text) {
if (this.viewReady) {
this.getView().emptyText = text;
this.getView().refresh();
@ -222,7 +222,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
Ext.apply(this.viewConfig, { emptyText: text });
}
},
loadData: function(data) {
loadData: function (data) {
this.getStore().loadData(data);
if (this.viewReady) {
this.getView().updateHeaders();
@ -264,7 +264,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
this.forceDownload.setHandler(this.forceDown, this);
},
onApply: function() {
onApply: function () {
var config = {};
config['url'] = this.URL.getValue();
@ -285,13 +285,13 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
deluge.client.blocklist.set_config(config);
},
onOk: function() {
onOk: function () {
this.onApply();
},
onUpdate: function() {
onUpdate: function () {
deluge.client.blocklist.get_status({
success: function(status) {
success: function (status) {
if (status['state'] == 'Downloading') {
this.InfoFset.hide();
this.checkDownload.getComponent(0).setDisabled(true);
@ -339,19 +339,19 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
});
},
checkDown: function() {
checkDown: function () {
this.onApply();
deluge.client.blocklist.check_import();
},
forceDown: function() {
forceDown: function () {
this.onApply();
deluge.client.blocklist.check_import((force = true));
},
updateConfig: function() {
updateConfig: function () {
deluge.client.blocklist.get_config({
success: function(config) {
success: function (config) {
this.URL.setValue(config['url']);
this.checkListDays.setValue(config['check_after_days']);
this.chkImportOnStart.setValue(config['load_on_start']);
@ -369,7 +369,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
});
deluge.client.blocklist.get_status({
success: function(status) {
success: function (status) {
this.lblFileSize.setText(fsize(status['file_size']));
this.lblDate.setText(fdate(status['file_date']));
this.lblType.setText(status['file_type']);
@ -381,7 +381,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
});
},
addIP: function() {
addIP: function () {
var store = this.WhitelistFset.getComponent(0).getStore();
var IP = store.recordType;
var i = new IP({
@ -392,7 +392,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
this.WhitelistFset.getComponent(0).startEditing(0, 0);
},
deleteIP: function() {
deleteIP: function () {
var selections = this.WhitelistFset.getComponent(0)
.getSelectionModel()
.getSelections();
@ -403,7 +403,7 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
store.commitChanges();
},
onDestroy: function() {
onDestroy: function () {
Ext.TaskMgr.stop(this.updateTask);
deluge.preferences.un('show', this.updateConfig, this);
@ -415,11 +415,11 @@ Deluge.ux.preferences.BlocklistPage = Ext.extend(Ext.Panel, {
Deluge.plugins.BlocklistPlugin = Ext.extend(Deluge.Plugin, {
name: 'Blocklist',
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.BlocklistPage()
);

View File

@ -18,7 +18,7 @@ Deluge.ux.ExecuteWindowBase = Ext.extend(Ext.Window, {
height: 130,
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.ux.ExecuteWindowBase.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -56,7 +56,7 @@ Deluge.ux.ExecuteWindowBase = Ext.extend(Ext.Window, {
});
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
});
@ -64,7 +64,7 @@ Deluge.ux.ExecuteWindowBase = Ext.extend(Ext.Window, {
Deluge.ux.EditExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
title: _('Edit Command'),
initComponent: function() {
initComponent: function () {
Deluge.ux.EditExecuteCommandWindow.superclass.initComponent.call(this);
this.addButton(_('Save'), this.onSaveClick, this);
this.addEvents({
@ -72,7 +72,7 @@ Deluge.ux.EditExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
});
},
show: function(command) {
show: function (command) {
Deluge.ux.EditExecuteCommandWindow.superclass.show.call(this);
this.command = command;
this.form.getForm().setValues({
@ -81,14 +81,14 @@ Deluge.ux.EditExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
});
},
onSaveClick: function() {
onSaveClick: function () {
var values = this.form.getForm().getFieldValues();
deluge.client.execute.save_command(
this.command.id,
values.event,
values.command,
{
success: function() {
success: function () {
this.fireEvent(
'commandedit',
this,
@ -106,7 +106,7 @@ Deluge.ux.EditExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
Deluge.ux.AddExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
title: _('Add Command'),
initComponent: function() {
initComponent: function () {
Deluge.ux.AddExecuteCommandWindow.superclass.initComponent.call(this);
this.addButton(_('Add'), this.onAddClick, this);
this.addEvents({
@ -114,10 +114,10 @@ Deluge.ux.AddExecuteCommandWindow = Ext.extend(Deluge.ux.ExecuteWindowBase, {
});
},
onAddClick: function() {
onAddClick: function () {
var values = this.form.getForm().getFieldValues();
deluge.client.execute.add_command(values.event, values.command, {
success: function() {
success: function () {
this.fireEvent(
'commandadd',
this,
@ -143,7 +143,7 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
layout: 'fit',
border: false,
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.ExecutePage.superclass.initComponent.call(this);
var event_map = (this.event_map = {
complete: _('Torrent Complete'),
@ -166,7 +166,7 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
sortable: true,
dataIndex: 'event',
tpl: new Ext.XTemplate('{[this.getEvent(values.event)]}', {
getEvent: function(e) {
getEvent: function (e) {
return event_map[e] ? event_map[e] : e;
},
}),
@ -215,21 +215,21 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
this.on('show', this.onPreferencesShow, this);
},
updateCommands: function() {
updateCommands: function () {
deluge.client.execute.get_commands({
success: function(commands) {
success: function (commands) {
this.list.getStore().loadData(commands);
},
scope: this,
});
},
onAddClick: function() {
onAddClick: function () {
if (!this.addWin) {
this.addWin = new Deluge.ux.AddExecuteCommandWindow();
this.addWin.on(
'commandadd',
function() {
function () {
this.updateCommands();
},
this
@ -238,19 +238,19 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
this.addWin.show();
},
onCommandAdded: function(win, evt, cmd) {
onCommandAdded: function (win, evt, cmd) {
var record = new this.list.getStore().recordType({
event: evt,
command: cmd,
});
},
onEditClick: function() {
onEditClick: function () {
if (!this.editWin) {
this.editWin = new Deluge.ux.EditExecuteCommandWindow();
this.editWin.on(
'commandedit',
function() {
function () {
this.updateCommands();
},
this
@ -259,39 +259,27 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
this.editWin.show(this.list.getSelectedRecords()[0]);
},
onPreferencesShow: function() {
onPreferencesShow: function () {
this.updateCommands();
},
onRemoveClick: function() {
onRemoveClick: function () {
var record = this.list.getSelectedRecords()[0];
deluge.client.execute.remove_command(record.id, {
success: function() {
success: function () {
this.updateCommands();
},
scope: this,
});
},
onSelectionChange: function(dv, selections) {
onSelectionChange: function (dv, selections) {
if (selections.length) {
this.panel
.getBottomToolbar()
.items.get(1)
.enable();
this.panel
.getBottomToolbar()
.items.get(3)
.enable();
this.panel.getBottomToolbar().items.get(1).enable();
this.panel.getBottomToolbar().items.get(3).enable();
} else {
this.panel
.getBottomToolbar()
.items.get(1)
.disable();
this.panel
.getBottomToolbar()
.items.get(3)
.disable();
this.panel.getBottomToolbar().items.get(1).disable();
this.panel.getBottomToolbar().items.get(3).disable();
}
},
});
@ -299,11 +287,11 @@ Deluge.ux.preferences.ExecutePage = Ext.extend(Ext.Panel, {
Deluge.plugins.ExecutePlugin = Ext.extend(Deluge.Plugin, {
name: 'Execute',
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.ExecutePage()
);

View File

@ -21,7 +21,7 @@ Deluge.ux.preferences.ExtractorPage = Ext.extend(Ext.Panel, {
layout: 'fit',
border: false,
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.ExtractorPage.superclass.initComponent.call(this);
this.form = this.add({
@ -59,7 +59,7 @@ Deluge.ux.preferences.ExtractorPage = Ext.extend(Ext.Panel, {
this.on('show', this.updateConfig, this);
},
onApply: function() {
onApply: function () {
// build settings object
var config = {};
@ -69,13 +69,13 @@ Deluge.ux.preferences.ExtractorPage = Ext.extend(Ext.Panel, {
deluge.client.extractor.set_config(config);
},
onOk: function() {
onOk: function () {
this.onApply();
},
updateConfig: function() {
updateConfig: function () {
deluge.client.extractor.get_config({
success: function(config) {
success: function (config) {
this.extract_path.setValue(config['extract_path']);
this.use_name_folder.setValue(config['use_name_folder']);
},
@ -87,11 +87,11 @@ Deluge.ux.preferences.ExtractorPage = Ext.extend(Ext.Panel, {
Deluge.plugins.ExtractorPlugin = Ext.extend(Deluge.Plugin, {
name: 'Extractor',
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.ExtractorPage()
);

View File

@ -20,7 +20,7 @@ Deluge.ux.preferences.LabelPage = Ext.extend(Ext.Panel, {
layout: 'fit',
border: false,
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.LabelPage.superclass.initComponent.call(this);
fieldset = this.add({
xtype: 'fieldset',
@ -56,7 +56,7 @@ Deluge.ux.AddLabelWindow = Ext.extend(Ext.Window, {
height: 100,
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.ux.AddLabelWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
this.addButton(_('Ok'), this.onOkClick, this);
@ -76,7 +76,7 @@ Deluge.ux.AddLabelWindow = Ext.extend(Ext.Window, {
width: 220,
listeners: {
specialkey: {
fn: function(field, e) {
fn: function (field, e) {
if (e.getKey() == 13) this.onOkClick();
},
scope: this,
@ -87,14 +87,14 @@ Deluge.ux.AddLabelWindow = Ext.extend(Ext.Window, {
});
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
onOkClick: function() {
onOkClick: function () {
var label = this.form.getForm().getValues().name;
deluge.client.label.add(label, {
success: function() {
success: function () {
deluge.ui.update();
this.fireEvent('labeladded', label);
},
@ -103,17 +103,14 @@ Deluge.ux.AddLabelWindow = Ext.extend(Ext.Window, {
this.hide();
},
onHide: function(comp) {
onHide: function (comp) {
Deluge.ux.AddLabelWindow.superclass.onHide.call(this, comp);
this.form.getForm().reset();
},
onShow: function(comp) {
onShow: function (comp) {
Deluge.ux.AddLabelWindow.superclass.onShow.call(this, comp);
this.form
.getForm()
.findField('name')
.focus(false, 150);
this.form.getForm().findField('name').focus(false, 150);
},
});
@ -127,7 +124,7 @@ Deluge.ux.LabelOptionsWindow = Ext.extend(Ext.Window, {
height: 240,
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.ux.LabelOptionsWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
this.addButton(_('Ok'), this.onOkClick, this);
@ -385,18 +382,18 @@ Deluge.ux.LabelOptionsWindow = Ext.extend(Ext.Window, {
});
},
getLabelOptions: function() {
getLabelOptions: function () {
deluge.client.label.get_options(this.label, {
success: this.gotOptions,
scope: this,
});
},
gotOptions: function(options) {
gotOptions: function (options) {
this.form.getForm().setValues(options);
},
show: function(label) {
show: function (label) {
Deluge.ux.LabelOptionsWindow.superclass.show.call(this);
this.label = label;
this.setTitle(_('Label Options') + ': ' + this.label);
@ -404,11 +401,11 @@ Deluge.ux.LabelOptionsWindow = Ext.extend(Ext.Window, {
this.getLabelOptions();
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
onOkClick: function() {
onOkClick: function () {
var values = this.form.getForm().getFieldValues();
if (values['auto_add_trackers']) {
values['auto_add_trackers'] = values['auto_add_trackers'].split(
@ -419,9 +416,9 @@ Deluge.ux.LabelOptionsWindow = Ext.extend(Ext.Window, {
this.hide();
},
onFieldChecked: function(field, checked) {
onFieldChecked: function (field, checked) {
var fs = field.ownerCt.nextSibling();
fs.items.each(function(field) {
fs.items.each(function (field) {
field.setDisabled(!checked);
});
},
@ -436,7 +433,7 @@ Ext.ns('Deluge.plugins');
Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
name: 'Label',
createMenu: function() {
createMenu: function () {
this.labelMenu = new Ext.menu.Menu({
items: [
{
@ -462,7 +459,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
});
},
setFilter: function(filter) {
setFilter: function (filter) {
filter.show_zero = true;
filter.list.on('contextmenu', this.onLabelContextMenu, this);
@ -470,7 +467,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.filter = filter;
},
updateTorrentMenu: function(states) {
updateTorrentMenu: function (states) {
this.torrentMenu.removeAll(true);
this.torrentMenu.addMenuItem({
text: _('No Label'),
@ -489,7 +486,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
}
},
onDisable: function() {
onDisable: function () {
deluge.sidebar.un('filtercreate', this.onFilterCreate);
deluge.sidebar.un('afterfiltercreate', this.onAfterFilterCreate);
delete Deluge.FilterPanel.templates.label;
@ -499,7 +496,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.LabelPage()
);
@ -539,17 +536,17 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.registerTorrentStatus('label', _('Label'));
},
onAfterFilterCreate: function(sidebar, filter) {
onAfterFilterCreate: function (sidebar, filter) {
if (filter.filter != 'label') return;
this.updateTorrentMenu(filter.getStates());
},
onFilterCreate: function(sidebar, filter) {
onFilterCreate: function (sidebar, filter) {
if (filter.filter != 'label') return;
this.setFilter(filter);
},
onLabelAddClick: function() {
onLabelAddClick: function () {
if (!this.addWindow) {
this.addWindow = new Deluge.ux.AddLabelWindow();
this.addWindow.on('labeladded', this.onLabelAdded, this);
@ -557,7 +554,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.addWindow.show();
},
onLabelAdded: function(label) {
onLabelAdded: function (label) {
var filter = deluge.sidebar.getFilter('label');
var states = filter.getStates();
var statesArray = [];
@ -582,7 +579,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.updateTorrentMenu(states);
},
onLabelContextMenu: function(dv, i, node, e) {
onLabelContextMenu: function (dv, i, node, e) {
e.preventDefault();
if (!this.labelMenu) this.createMenu();
var r = dv.getRecord(node).get('filter');
@ -597,7 +594,7 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.labelMenu.showAt(e.getXY());
},
onLabelHeaderContextMenu: function(e, t) {
onLabelHeaderContextMenu: function (e, t) {
e.preventDefault();
if (!this.labelMenu) this.createMenu();
this.labelMenu.items.get(1).setDisabled(true);
@ -605,18 +602,18 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
this.labelMenu.showAt(e.getXY());
},
onLabelOptionsClick: function() {
onLabelOptionsClick: function () {
if (!this.labelOpts)
this.labelOpts = new Deluge.ux.LabelOptionsWindow();
this.labelOpts.show(this.filter.getState());
},
onLabelRemoveClick: function() {
onLabelRemoveClick: function () {
var state = this.filter.getState();
deluge.client.label.remove(state, {
success: function() {
success: function () {
deluge.ui.update();
this.torrentMenu.items.each(function(item) {
this.torrentMenu.items.each(function (item) {
if (item.text != state) return;
this.torrentMenu.remove(item);
var i = item;
@ -626,12 +623,12 @@ Deluge.plugins.LabelPlugin = Ext.extend(Deluge.Plugin, {
});
},
onTorrentMenuClick: function(item, e) {
onTorrentMenuClick: function (item, e) {
var ids = deluge.torrents.getSelectedIds();
Ext.each(ids, function(id, i) {
Ext.each(ids, function (id, i) {
if (ids.length == i + 1) {
deluge.client.label.set_torrent(id, item.label, {
success: function() {
success: function () {
deluge.ui.update();
},
});

View File

@ -21,7 +21,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
layout: 'fit',
border: false,
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.NotificationsPage.superclass.initComponent.call(
this
);
@ -44,7 +44,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
xtype: 'checkbox',
boxLabel: _('Enabled'),
listeners: {
check: function(object, checked) {
check: function (object, checked) {
this.setSmtpDisabled(!checked);
},
scope: this,
@ -227,11 +227,11 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
fields: [{ name: 'recipient' }],
}),
listeners: {
afteredit: function(e) {
afteredit: function (e) {
e.record.commit();
},
},
setEmptyText: function(text) {
setEmptyText: function (text) {
if (this.viewReady) {
this.getView().emptyText = text;
this.getView().refresh();
@ -239,7 +239,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
Ext.apply(this.viewConfig, { emptyText: text });
}
},
loadData: function(data) {
loadData: function (data) {
this.getStore().loadData(data);
if (this.viewReady) {
this.getView().updateHeaders();
@ -259,7 +259,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
},
colModel: new Ext.grid.ColumnModel({
defaults: {
renderer: function(
renderer: function (
value,
meta,
record,
@ -310,7 +310,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
],
}),
listeners: {
cellclick: function(grid, rowIndex, colIndex, e) {
cellclick: function (grid, rowIndex, colIndex, e) {
var record = grid.getStore().getAt(rowIndex);
var field = grid.getColumnModel().getDataIndex(colIndex);
var value = record.get(field);
@ -322,18 +322,18 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
}
}
},
beforeedit: function(e) {
beforeedit: function (e) {
if (Ext.isBoolean(e.value)) {
return false;
}
return e.record.get('enabled');
},
afteredit: function(e) {
afteredit: function (e) {
e.record.commit();
},
},
setEmptyText: function(text) {
setEmptyText: function (text) {
if (this.viewReady) {
this.getView().emptyText = text;
this.getView().refresh();
@ -341,13 +341,13 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
Ext.apply(this.viewConfig, { emptyText: text });
}
},
setSub: function(eventName) {
setSub: function (eventName) {
var store = this.getStore();
var index = store.find('event', eventName);
store.getAt(index).set('email', true);
store.getAt(index).commit();
},
loadData: function(data) {
loadData: function (data) {
this.getStore().loadData(data);
if (this.viewReady) {
this.getView().updateHeaders();
@ -374,9 +374,9 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
this.on('show', this.updateConfig, this);
},
updateConfig: function() {
updateConfig: function () {
deluge.client.notifications.get_handled_events({
success: function(events) {
success: function (events) {
var data = [];
var keys = Ext.keys(events);
for (var i = 0; i < keys.length; i++) {
@ -388,7 +388,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
scope: this,
});
deluge.client.notifications.get_config({
success: function(config) {
success: function (config) {
this.chkEnableEmail.setValue(config['smtp_enabled']);
this.setSmtpDisabled(!config['smtp_enabled']);
@ -420,7 +420,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
});
},
onApply: function() {
onApply: function () {
var config = {};
config['smtp_enabled'] = this.chkEnableEmail.getValue();
@ -461,11 +461,11 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
deluge.client.notifications.set_config(config);
},
onOk: function() {
onOk: function () {
this.onApply();
},
onAddClick: function() {
onAddClick: function () {
var store = this.recipientsFset.getComponent(0).getStore();
var Recipient = store.recordType;
var i = new Recipient({
@ -476,7 +476,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
this.recipientsFset.getComponent(0).startEditing(0, 0);
},
onRemoveClick: function() {
onRemoveClick: function () {
var selections = this.recipientsFset
.getComponent(0)
.getSelectionModel()
@ -488,7 +488,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
store.commitChanges();
},
setSmtpDisabled: function(disable) {
setSmtpDisabled: function (disable) {
this.hBoxHost.setDisabled(disable);
this.hBoxPort.setDisabled(disable);
this.hBoxUser.setDisabled(disable);
@ -498,7 +498,7 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
this.recipientsFset.getComponent(0).setDisabled(disable);
},
onDestroy: function() {
onDestroy: function () {
deluge.preferences.un('show', this.updateConfig, this);
Deluge.ux.preferences.NotificationsPage.superclass.onDestroy.call(this);
@ -508,11 +508,11 @@ Deluge.ux.preferences.NotificationsPage = Ext.extend(Ext.Panel, {
Deluge.plugins.NotificationsPlugin = Ext.extend(Deluge.Plugin, {
name: 'Notifications',
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.NotificationsPage()
);

View File

@ -42,7 +42,7 @@ except ImportError:
try:
require_version('Notify', '0.7')
from gi.repository import Notify, GLib
from gi.repository import GLib, Notify
except (ValueError, ImportError):
POPUP_AVAILABLE = False
else:

View File

@ -40,7 +40,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
],
daysOfWeek: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
initComponent: function() {
initComponent: function () {
Deluge.ux.ScheduleSelector.superclass.initComponent.call(this);
// ExtJS' radiogroup implementation is very broken for styling.
@ -57,7 +57,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
});*/
},
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.ux.ScheduleSelector.superclass.onRender.call(this, ct, position);
var dom = this.body.dom;
@ -126,7 +126,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
Ext.each(
this.daysOfWeek,
function(day) {
function (day) {
var cells = [];
var row = createEl(table, 'tr');
var label = createEl(row, 'th');
@ -175,7 +175,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
);
},
updateCell: function(cell) {
updateCell: function (cell) {
// sanity check
if (cell.currentValue == undefined) return;
@ -188,29 +188,29 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
getCurrentBrushValue: function() {
getCurrentBrushValue: function () {
var v = null;
var brushes = Ext.get(this.body.dom).findParent('form').elements[
this.stateBrushName
];
Ext.each(brushes, function(b) {
Ext.each(brushes, function (b) {
if (b.checked) v = b.value;
});
return v;
},
onCellClick: function(event, cell) {
onCellClick: function (event, cell) {
cell.oldValue = cell.currentValue;
this.dragAnchor = null;
},
onCellMouseDown: function(event, cell) {
onCellMouseDown: function (event, cell) {
this.dragAnchor = cell;
},
onCellMouseUp: function(event, cell) {
onCellMouseUp: function (event, cell) {
// if we're dragging...
if (this.dragAnchor) {
// set all those between here and the anchor to the new values
@ -226,7 +226,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
onCellMouseOver: function(event, cell) {
onCellMouseOver: function (event, cell) {
// LEFT TOOL TIP
// if it isn't showing and we're dragging, show it.
// otherwise if dragging, leave it alone unless we're dragging to the left.
@ -295,7 +295,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
// dragged into another day. Abort! Abort!
Ext.each(
this.daysOfWeek,
function(day) {
function (day) {
this.revertCells(day, 0, 23);
},
this
@ -323,7 +323,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
onCellMouseOut: function(event, cell) {
onCellMouseOut: function (event, cell) {
if (!this.dragAnchor) this.hideCellLeftTooltip();
// revert state. If new state has been set, old and new will be equal.
@ -333,7 +333,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
previewCells: function(day, fromHour, toHour) {
previewCells: function (day, fromHour, toHour) {
var cells = this.scheduleCells[day];
var curBrushValue = this.getCurrentBrushValue();
@ -348,7 +348,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
revertCells: function(day, fromHour, toHour) {
revertCells: function (day, fromHour, toHour) {
var cells = this.scheduleCells[day];
if (toHour > cells.length) toHour = cells.length;
@ -359,7 +359,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
confirmCells: function(day, fromHour, toHour) {
confirmCells: function (day, fromHour, toHour) {
var cells = this.scheduleCells[day];
if (toHour > cells.length) toHour = cells.length;
@ -371,7 +371,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
}
},
showCellLeftTooltip: function(text, cell) {
showCellLeftTooltip: function (text, cell) {
var tooltip = this.cellLeftTooltip;
if (!tooltip) {
@ -400,19 +400,19 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
tooltip.style.visibility = 'visible';
},
hideCellLeftTooltip: function() {
hideCellLeftTooltip: function () {
if (this.cellLeftTooltip) {
this.cellLeftTooltip.style.visibility = 'hidden';
}
},
isCellLeftTooltipHidden: function() {
isCellLeftTooltipHidden: function () {
if (this.cellLeftTooltip)
return this.cellLeftTooltip.style.visibility == 'hidden';
else return true;
},
showCellRightTooltip: function(text, cell) {
showCellRightTooltip: function (text, cell) {
var tooltip = this.cellRightTooltip;
if (!tooltip) {
@ -441,19 +441,19 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
tooltip.style.visibility = 'visible';
},
hideCellRightTooltip: function() {
hideCellRightTooltip: function () {
if (this.cellRightTooltip) {
this.cellRightTooltip.style.visibility = 'hidden';
}
},
isCellRightTooltipHidden: function() {
isCellRightTooltipHidden: function () {
if (this.cellRightTooltip)
return this.cellRightTooltip.style.visibility == 'hidden';
else return true;
},
getConfig: function() {
getConfig: function () {
var config = [];
for (var i = 0; i < 24; i++) {
@ -471,7 +471,7 @@ Deluge.ux.ScheduleSelector = Ext.extend(Ext.form.FieldSet, {
return config;
},
setConfig: function(config) {
setConfig: function (config) {
for (var i = 0; i < 24; i++) {
var hourConfig = config[i];
@ -496,7 +496,7 @@ Deluge.ux.preferences.SchedulerPage = Ext.extend(Ext.Panel, {
header: false,
layout: 'fit',
initComponent: function() {
initComponent: function () {
Deluge.ux.preferences.SchedulerPage.superclass.initComponent.call(this);
this.form = this.add({
@ -561,7 +561,7 @@ Deluge.ux.preferences.SchedulerPage = Ext.extend(Ext.Panel, {
this.on('show', this.updateConfig, this);
},
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.ux.preferences.SchedulerPage.superclass.onRender.call(
this,
ct,
@ -572,7 +572,7 @@ Deluge.ux.preferences.SchedulerPage = Ext.extend(Ext.Panel, {
this.form.doLayout();
},
onApply: function() {
onApply: function () {
// build settings object
var config = {};
@ -586,13 +586,13 @@ Deluge.ux.preferences.SchedulerPage = Ext.extend(Ext.Panel, {
deluge.client.scheduler.set_config(config);
},
onOk: function() {
onOk: function () {
this.onApply();
},
updateConfig: function() {
updateConfig: function () {
deluge.client.scheduler.get_config({
success: function(config) {
success: function (config) {
this.schedule.setConfig(config['button_state']);
this.downloadLimit.setValue(config['low_down']);
this.uploadLimit.setValue(config['low_up']);
@ -608,11 +608,11 @@ Deluge.ux.preferences.SchedulerPage = Ext.extend(Ext.Panel, {
Deluge.plugins.SchedulerPlugin = Ext.extend(Deluge.Plugin, {
name: 'Scheduler',
onDisable: function() {
onDisable: function () {
deluge.preferences.removePage(this.prefsPage);
},
onEnable: function() {
onEnable: function () {
this.prefsPage = deluge.preferences.addPage(
new Deluge.ux.preferences.SchedulerPage()
);

View File

@ -10,7 +10,7 @@
*/
StatsPlugin = Ext.extend(Deluge.Plugin, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
name: 'Stats',
@ -20,8 +20,8 @@ StatsPlugin = Ext.extend(Deluge.Plugin, {
StatsPlugin.superclass.constructor.call(this, config);
},
onDisable: function() {},
onDisable: function () {},
onEnable: function() {},
onEnable: function () {},
});
new StatsPlugin();

View File

@ -72,14 +72,15 @@ class StatsTestCase(BaseTestCase):
Not strictly a unit test, but tests if calls do not fail...
"""
from deluge.ui.gtkui.gtkui import DEFAULT_PREFS
from deluge.ui.gtkui.preferences import Preferences
from deluge.ui.gtkui.mainwindow import MainWindow
from deluge_stats import graph, gtkui
from deluge.configmanager import ConfigManager
from deluge.ui.gtkui.gtkui import DEFAULT_PREFS
from deluge.ui.gtkui.mainwindow import MainWindow
from deluge.ui.gtkui.pluginmanager import PluginManager
from deluge.ui.gtkui.preferences import Preferences
from deluge.ui.gtkui.torrentdetails import TorrentDetails
from deluge.ui.gtkui.torrentview import TorrentView
from deluge_stats import graph, gtkui
ConfigManager('gtkui.conf', defaults=DEFAULT_PREFS)

View File

@ -10,7 +10,7 @@
*/
TogglePlugin = Ext.extend(Deluge.Plugin, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
name: 'Toggle',
@ -20,8 +20,8 @@ TogglePlugin = Ext.extend(Deluge.Plugin, {
TogglePlugin.superclass.constructor.call(this, config);
},
onDisable: function() {},
onDisable: function () {},
onEnable: function() {},
onEnable: function () {},
});
new TogglePlugin();

View File

@ -26,8 +26,8 @@ try:
from urllib.request import url2pathname
except ImportError:
# PY2 fallback
from urlparse import urlparse # pylint: disable=ungrouped-imports
from urllib import url2pathname # pylint: disable=ungrouped-imports
from urlparse import urlparse # pylint: disable=ungrouped-imports
class Command(BaseCommand):

View File

@ -106,8 +106,8 @@ class Command(BaseCommand):
elif options.install:
import os.path
from base64 import b64encode
import shutil
from base64 import b64encode
filepath = options.install

View File

@ -112,9 +112,9 @@ class Console(UI):
)
# To properly print help message for the console commands ( e.g. deluge-console info -h),
# we add a subparser for each command which will trigger the help/usage when given
from deluge.ui.console.parser import (
from deluge.ui.console.parser import ( # import here because (see top)
ConsoleCommandParser,
) # import here because (see top)
)
self.console_parser = ConsoleCommandParser(
parents=[self.parser],

View File

@ -26,9 +26,9 @@ except ImportError:
try:
import signal
from fcntl import ioctl
import termios
import struct
import termios
from fcntl import ioctl
except ImportError:
pass

View File

@ -220,7 +220,7 @@ class TorrentDetail(BaseMode, PopupsHandler):
self.refresh()
def build_file_list(self, torrent_files, progress, priority):
""" Split file list from torrent state into a directory tree.
"""Split file list from torrent state into a directory tree.
Returns:

View File

@ -60,14 +60,14 @@ class ConsoleCommandParser(ConsoleBaseParser):
def parse_args(self, args=None):
"""Parse known UI args and handle common and process group options.
Notes:
If started by deluge entry script this has already been done.
Notes:
If started by deluge entry script this has already been done.
Args:
args (list, optional): The arguments to parse.
Args:
args (list, optional): The arguments to parse.
Returns:
argparse.Namespace: The parsed arguments.
Returns:
argparse.Namespace: The parsed arguments.
"""
from deluge.ui.ui_entry import AMBIGUOUS_CMD_ARGS
@ -118,9 +118,9 @@ class OptionParser(ConsoleBaseParser):
def error(self, msg):
"""error(msg : string)
Print a usage message incorporating 'msg' to stderr and exit.
If you override this in a subclass, it should not return -- it
should either exit or raise an exception.
Print a usage message incorporating 'msg' to stderr and exit.
If you override this in a subclass, it should not return -- it
should either exit or raise an exception.
"""
raise OptionParserError(msg)

View File

@ -1061,9 +1061,9 @@ class ComboInput(InputField):
# No match, so start at beginning
select_in_range(0, selected)
from deluge.ui.console.widgets.popup import (
from deluge.ui.console.widgets.popup import ( # Must import here
SelectablePopup,
) # Must import here
)
select_popup = SelectablePopup(
self.parent,

View File

@ -40,9 +40,10 @@ class Gtk(UI):
def start(self):
super(Gtk, self).start()
from .gtkui import GtkUI
import deluge.common
from .gtkui import GtkUI
def run(options):
try:
gtkui = GtkUI(options)

View File

@ -159,8 +159,8 @@ class ErrorDialog(BaseDialog):
)
if traceback:
import traceback
import sys
import traceback
tb = sys.exc_info()
tb = traceback.format_exc(tb[2])

View File

@ -75,7 +75,7 @@ set_prgname('deluge')
log = logging.getLogger(__name__)
try:
from setproctitle import setproctitle, getproctitle
from setproctitle import getproctitle, setproctitle
except ImportError:
def setproctitle(title):

View File

@ -31,8 +31,8 @@ try:
from urllib.request import url2pathname
except ImportError:
# PY2 fallback
from urlparse import urlparse # pylint: disable=ungrouped-imports
from urllib import url2pathname # pylint: disable=ungrouped-imports
from urlparse import urlparse # pylint: disable=ungrouped-imports
log = logging.getLogger(__name__)
@ -84,8 +84,8 @@ class IPCInterface(component.Component):
if windows_check():
# If we're on windows we need to check the global mutex to see if deluge is
# already running.
import win32event
import win32api
import win32event
import winerror
self.mutex = win32event.CreateMutex(None, False, 'deluge')

View File

@ -68,10 +68,10 @@ class ListView(object):
class TreeviewColumn(Gtk.TreeViewColumn, object):
"""
TreeViewColumn does not signal right-click events, and we need them
This subclass is equivalent to TreeViewColumn, but it signals these events
TreeViewColumn does not signal right-click events, and we need them
This subclass is equivalent to TreeViewColumn, but it signals these events
Most of the code of this class comes from Quod Libet (http://www.sacredchao.net/quodlibet)
Most of the code of this class comes from Quod Libet (http://www.sacredchao.net/quodlibet)
"""
__gsignals__ = {
@ -281,7 +281,7 @@ class ListView(object):
def save_state(self, filename):
"""Saves the listview state (column positions and visibility) to
filename."""
filename."""
# A list of ListViewColumnStates
state = []
@ -627,8 +627,7 @@ class ListView(object):
unique=False,
default_sort=False,
):
"""Add a text column to the listview. Only the header name is required.
"""
"""Add a text column to the listview. Only the header name is required."""
render = Gtk.CellRendererText()
self.add_column(
header,

View File

@ -305,8 +305,8 @@ class PeersTab(Tab):
peer_ip = peer['ip']
else:
# This is an IPv6 address
import socket
import binascii
import socket
# Split out the :port
ip = ':'.join(peer['ip'].split(':')[:-1])

View File

@ -1180,8 +1180,8 @@ class Preferences(component.Component):
chooser.destroy()
return
from base64 import b64encode
import shutil
from base64 import b64encode
filename = os.path.split(filepath)[1]
shutil.copyfile(filepath, os.path.join(get_config_dir(), 'plugins', filename))

View File

@ -112,11 +112,11 @@ class TorrentDetails(component.Component):
self.tabs = {}
# Add the default tabs
from .status_tab import StatusTab
from .details_tab import DetailsTab
from .files_tab import FilesTab
from .peers_tab import PeersTab
from .options_tab import OptionsTab
from .peers_tab import PeersTab
from .status_tab import StatusTab
from .trackers_tab import TrackersTab
default_tabs = {

View File

@ -28,16 +28,16 @@ Deluge.about.AboutWindow = Ext.extend(Ext.Window, {
},
buttonAlign: 'center',
initComponent: function() {
initComponent: function () {
Deluge.about.AboutWindow.superclass.initComponent.call(this);
this.addEvents({
build_ready: true,
});
var self = this;
var libtorrent = function() {
var libtorrent = function () {
deluge.client.core.get_libtorrent_version({
success: function(lt_version) {
success: function (lt_version) {
comment += '<br/>' + _('libtorrent:') + ' ' + lt_version;
Ext.getCmp('about_comment').setText(comment, false);
self.fireEvent('build_ready');
@ -57,10 +57,10 @@ Deluge.about.AboutWindow = Ext.extend(Ext.Window, {
client_version +
'<br/>';
deluge.client.web.connected({
success: function(connected) {
success: function (connected) {
if (connected) {
deluge.client.daemon.get_version({
success: function(server_version) {
success: function (server_version) {
comment +=
_('Server:') + ' ' + server_version + '<br/>';
libtorrent();
@ -70,7 +70,7 @@ Deluge.about.AboutWindow = Ext.extend(Ext.Window, {
this.fireEvent('build_ready');
}
},
failure: function() {
failure: function () {
this.fireEvent('build_ready');
},
scope: this,
@ -111,19 +111,19 @@ Deluge.about.AboutWindow = Ext.extend(Ext.Window, {
this.addButton(_('Close'), this.onCloseClick, this);
},
show: function() {
this.on('build_ready', function() {
show: function () {
this.on('build_ready', function () {
Deluge.about.AboutWindow.superclass.show.call(this);
});
},
onCloseClick: function() {
onCloseClick: function () {
this.close();
},
});
Ext.namespace('Deluge');
Deluge.About = function() {
Deluge.About = function () {
new Deluge.about.AboutWindow().show();
};

View File

@ -24,7 +24,7 @@ Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
bodyStyle: 'padding: 10px 5px;',
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.AddConnectionWindow.superclass.initComponent.call(this);
this.addEvents('hostadded');
@ -80,7 +80,7 @@ Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
});
},
onAddClick: function() {
onAddClick: function () {
var values = this.form.getForm().getValues();
deluge.client.web.add_host(
values.host,
@ -88,7 +88,7 @@ Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
values.username,
values.password,
{
success: function(result) {
success: function (result) {
if (!result[0]) {
Ext.MessageBox.show({
title: _('Error'),
@ -111,7 +111,7 @@ Deluge.AddConnectionWindow = Ext.extend(Ext.Window, {
);
},
onHide: function() {
onHide: function () {
this.form.getForm().reset();
},
});

View File

@ -12,7 +12,7 @@ Ext.ns('Deluge');
// Custom VType validator for tracker urls
var trackerUrlTest = /(((^https?)|(^udp)):\/\/([\-\w]+\.)+\w{2,3}(\/[%\-\w]+(\.\w{2,})?)*(([\w\-\.\?\\\/+@&#;`~=%!]*)(\.\w{2,})?)*\/?)/i;
Ext.apply(Ext.form.VTypes, {
trackerUrl: function(val, field) {
trackerUrl: function (val, field) {
return trackerUrlTest.test(val);
},
trackerUrlText: 'Not a valid tracker url',
@ -36,7 +36,7 @@ Deluge.AddTrackerWindow = Ext.extend(Ext.Window, {
closeAction: 'hide',
iconCls: 'x-deluge-edit-trackers',
initComponent: function() {
initComponent: function () {
Deluge.AddTrackerWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -59,17 +59,14 @@ Deluge.AddTrackerWindow = Ext.extend(Ext.Window, {
});
},
onAddClick: function() {
var trackers = this.form
.getForm()
.findField('trackers')
.getValue();
onAddClick: function () {
var trackers = this.form.getForm().findField('trackers').getValue();
trackers = trackers.split('\n');
var cleaned = [];
Ext.each(
trackers,
function(tracker) {
function (tracker) {
if (Ext.form.VTypes.trackerUrl(tracker)) {
cleaned.push(tracker);
}
@ -78,17 +75,11 @@ Deluge.AddTrackerWindow = Ext.extend(Ext.Window, {
);
this.fireEvent('add', cleaned);
this.hide();
this.form
.getForm()
.findField('trackers')
.setValue('');
this.form.getForm().findField('trackers').setValue('');
},
onCancelClick: function() {
this.form
.getForm()
.findField('trackers')
.setValue('');
onCancelClick: function () {
this.form.getForm().findField('trackers').setValue('');
this.hide();
},
});

View File

@ -31,7 +31,7 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
* Fires when the client has retrieved the list of methods from the server.
* @param {Ext.ux.util.RpcClient} this
*/
constructor: function(config) {
constructor: function (config) {
Ext.ux.util.RpcClient.superclass.constructor.call(this, config);
this._url = config.url || null;
this._id = 0;
@ -44,14 +44,14 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
this.reloadMethods();
},
reloadMethods: function() {
reloadMethods: function () {
this._execute('system.listMethods', {
success: this._setMethods,
scope: this,
});
},
_execute: function(method, options) {
_execute: function (method, options) {
options = options || {};
options.params = options.params || [];
options.id = this._id;
@ -74,7 +74,7 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
});
},
_onFailure: function(response, requestOptions) {
_onFailure: function (response, requestOptions) {
var options = requestOptions.options;
errorObj = {
id: options.id,
@ -100,7 +100,7 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
}
},
_onSuccess: function(response, requestOptions) {
_onSuccess: function (response, requestOptions) {
var responseObj = Ext.decode(response.responseText);
var options = requestOptions.options;
if (responseObj.error) {
@ -138,9 +138,9 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
}
},
_parseArgs: function(args) {
_parseArgs: function (args) {
var params = [];
Ext.each(args, function(arg) {
Ext.each(args, function (arg) {
params.push(arg);
});
@ -149,7 +149,7 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
var keys = Ext.keys(options),
isOption = false;
Ext.each(this._optionKeys, function(key) {
Ext.each(this._optionKeys, function (key) {
if (keys.indexOf(key) > -1) isOption = true;
});
@ -165,15 +165,15 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
return options;
},
_setMethods: function(methods) {
_setMethods: function (methods) {
var components = {},
self = this;
Ext.each(methods, function(method) {
Ext.each(methods, function (method) {
var parts = method.split('.');
var component = components[parts[0]] || {};
var fn = function() {
var fn = function () {
var options = self._parseArgs(arguments);
return self._execute(method, options);
};
@ -186,7 +186,7 @@ Ext.ux.util.RpcClient = Ext.extend(Ext.util.Observable, {
}
Ext.each(
this._components,
function(component) {
function (component) {
if (!component in components) {
delete this[component];
}

View File

@ -21,7 +21,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
title: _('Connection Manager'),
iconCls: 'x-deluge-connect-window-icon',
initComponent: function() {
initComponent: function () {
Deluge.ConnectionManager.superclass.initComponent.call(this);
this.on('hide', this.onHide, this);
this.on('show', this.onShow, this);
@ -133,9 +133,9 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
* Check to see if the the web interface is currently connected
* to a Deluge Daemon and show the Connection Manager if not.
*/
checkConnected: function() {
checkConnected: function () {
deluge.client.web.connected({
success: function(connected) {
success: function (connected) {
if (connected) {
deluge.events.fire('connect');
} else {
@ -146,7 +146,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
});
},
disconnect: function(show) {
disconnect: function (show) {
deluge.events.fire('disconnect');
if (show) {
if (this.isVisible()) return;
@ -154,15 +154,15 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
}
},
loadHosts: function() {
loadHosts: function () {
deluge.client.web.get_hosts({
success: this.onGetHosts,
scope: this,
});
},
update: function() {
this.list.getStore().each(function(r) {
update: function () {
this.list.getStore().each(function (r) {
deluge.client.web.get_host_status(r.id, {
success: this.onGetHostStatus,
scope: this,
@ -175,7 +175,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
* passed in records host state.
* @param {Ext.data.Record} record The hosts record to update the UI for
*/
updateButtons: function(record) {
updateButtons: function (record) {
var button = this.buttons[1],
status = record.get('status');
@ -209,7 +209,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onAddClick: function(button, e) {
onAddClick: function (button, e) {
if (!this.addWindow) {
this.addWindow = new Deluge.AddConnectionWindow();
this.addWindow.on('hostadded', this.onHostChange, this);
@ -218,7 +218,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onEditClick: function(button, e) {
onEditClick: function (button, e) {
var connection = this.list.getSelectedRecords()[0];
if (!connection) return;
@ -230,24 +230,24 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onHostChange: function() {
onHostChange: function () {
this.loadHosts();
},
// private
onClose: function(e) {
onClose: function (e) {
this.hide();
},
// private
onConnect: function(e) {
onConnect: function (e) {
var selected = this.list.getSelectedRecords()[0];
if (!selected) return;
var me = this;
var disconnect = function() {
var disconnect = function () {
deluge.client.web.disconnect({
success: function(result) {
success: function (result) {
this.update(this);
deluge.events.fire('disconnect');
},
@ -268,11 +268,11 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
var id = selected.id;
deluge.client.web.connect(id, {
success: function(methods) {
success: function (methods) {
deluge.client.reloadMethods();
deluge.client.on(
'connected',
function(e) {
function (e) {
deluge.events.fire('connect');
},
this,
@ -285,11 +285,11 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onGetHosts: function(hosts) {
onGetHosts: function (hosts) {
this.list.getStore().loadData(hosts);
Ext.each(
hosts,
function(host) {
function (host) {
deluge.client.web.get_host_status(host[0], {
success: this.onGetHostStatus,
scope: this,
@ -300,7 +300,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onGetHostStatus: function(host) {
onGetHostStatus: function (host) {
var record = this.list.getStore().getById(host[0]);
record.set('status', host[1]);
record.set('version', host[2]);
@ -311,19 +311,19 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onHide: function() {
onHide: function () {
if (this.running) window.clearInterval(this.running);
},
// private
onLogin: function() {
onLogin: function () {
if (deluge.config.first_login) {
Ext.MessageBox.confirm(
_('Change Default Password'),
_(
'We recommend changing the default password.<br><br>Would you like to change it now?'
),
function(res) {
function (res) {
this.checkConnected();
if (res == 'yes') {
deluge.preferences.show();
@ -339,7 +339,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onLogout: function() {
onLogout: function () {
this.disconnect();
if (!this.hidden && this.rendered) {
this.hide();
@ -347,12 +347,12 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onRemoveClick: function(button) {
onRemoveClick: function (button) {
var connection = this.list.getSelectedRecords()[0];
if (!connection) return;
deluge.client.web.remove_host(connection.id, {
success: function(result) {
success: function (result) {
if (!result) {
Ext.MessageBox.show({
title: _('Error'),
@ -371,7 +371,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onSelectionChanged: function(list, selections) {
onSelectionChanged: function (list, selections) {
if (selections[0]) {
this.editHostButton.enable();
this.removeHostButton.enable();
@ -387,7 +387,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
// FIXME: Find out why this is being fired twice
// private
onShow: function() {
onShow: function () {
if (!this.addHostButton) {
var bbar = this.panel.getBottomToolbar();
this.addHostButton = bbar.items.get('cm-add');
@ -401,7 +401,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
},
// private
onStopClick: function(button, e) {
onStopClick: function (button, e) {
var connection = this.list.getSelectedRecords()[0];
if (!connection) return;
@ -411,7 +411,7 @@ Deluge.ConnectionManager = Ext.extend(Ext.Window, {
} else {
// This means we need to stop the daemon
deluge.client.web.stop_daemon(connection.id, {
success: function(result) {
success: function (result) {
if (!result[0]) {
Ext.MessageBox.show({
title: _('Error'),

View File

@ -25,21 +25,19 @@ Ext.state.Manager.setProvider(
// Add some additional functions to ext and setup some of the
// configurable parameters
Ext.apply(Ext, {
escapeHTML: function(text) {
text = String(text)
.replace('<', '&lt;')
.replace('>', '&gt;');
escapeHTML: function (text) {
text = String(text).replace('<', '&lt;').replace('>', '&gt;');
return text.replace('&', '&amp;');
},
isObjectEmpty: function(obj) {
isObjectEmpty: function (obj) {
for (var i in obj) {
return false;
}
return true;
},
areObjectsEqual: function(obj1, obj2) {
areObjectsEqual: function (obj1, obj2) {
var equal = true;
if (!obj1 || !obj2) return false;
for (var i in obj1) {
@ -50,7 +48,7 @@ Ext.apply(Ext, {
return equal;
},
keys: function(obj) {
keys: function (obj) {
var keys = [];
for (var i in obj)
if (obj.hasOwnProperty(i)) {
@ -59,7 +57,7 @@ Ext.apply(Ext, {
return keys;
},
values: function(obj) {
values: function (obj) {
var values = [];
for (var i in obj) {
if (obj.hasOwnProperty(i)) {
@ -69,7 +67,7 @@ Ext.apply(Ext, {
return values;
},
splat: function(obj) {
splat: function (obj) {
var type = Ext.type(obj);
return type ? (type != 'array' ? [obj] : obj) : [];
},
@ -106,7 +104,7 @@ Ext.apply(Deluge, {
* @param {String} text The text to display on the bar
* @param {Number} modified Amount to subtract from the width allowing for fixes
*/
progressBar: function(progress, width, text, modifier) {
progressBar: function (progress, width, text, modifier) {
modifier = Ext.value(modifier, 10);
var progressWidth = ((width / 100.0) * progress).toFixed(0);
var barWidth = progressWidth - 1;
@ -125,7 +123,7 @@ Ext.apply(Deluge, {
* Constructs a new instance of the specified plugin.
* @param {String} name The plugin name to create
*/
createPlugin: function(name) {
createPlugin: function (name) {
return new Deluge.pluginStore[name]();
},
@ -133,7 +131,7 @@ Ext.apply(Deluge, {
* Check to see if a plugin has been registered.
* @param {String} name The plugin name to check
*/
hasPlugin: function(name) {
hasPlugin: function (name) {
return Deluge.pluginStore[name] ? true : false;
},
@ -142,7 +140,7 @@ Ext.apply(Deluge, {
* @param {String} name The plugin name to register
* @param {Plugin} plugin The plugin to register
*/
registerPlugin: function(name, plugin) {
registerPlugin: function (name, plugin) {
Deluge.pluginStore[name] = plugin;
},
});

View File

@ -24,7 +24,7 @@ Deluge.EditConnectionWindow = Ext.extend(Ext.Window, {
bodyStyle: 'padding: 10px 5px;',
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.EditConnectionWindow.superclass.initComponent.call(this);
this.addEvents('hostedited');
@ -80,17 +80,11 @@ Deluge.EditConnectionWindow = Ext.extend(Ext.Window, {
});
},
show: function(connection) {
show: function (connection) {
Deluge.EditConnectionWindow.superclass.show.call(this);
this.form
.getForm()
.findField('host')
.setValue(connection.get('host'));
this.form
.getForm()
.findField('port')
.setValue(connection.get('port'));
this.form.getForm().findField('host').setValue(connection.get('host'));
this.form.getForm().findField('port').setValue(connection.get('port'));
this.form
.getForm()
.findField('username')
@ -98,7 +92,7 @@ Deluge.EditConnectionWindow = Ext.extend(Ext.Window, {
this.host_id = connection.id;
},
onEditClick: function() {
onEditClick: function () {
var values = this.form.getForm().getValues();
deluge.client.web.edit_host(
this.host_id,
@ -107,7 +101,7 @@ Deluge.EditConnectionWindow = Ext.extend(Ext.Window, {
values.username,
values.password,
{
success: function(result) {
success: function (result) {
if (!result) {
console.log(result);
Ext.MessageBox.show({
@ -128,7 +122,7 @@ Deluge.EditConnectionWindow = Ext.extend(Ext.Window, {
);
},
onHide: function() {
onHide: function () {
this.form.getForm().reset();
},
});

View File

@ -27,7 +27,7 @@ Deluge.EditTrackerWindow = Ext.extend(Ext.Window, {
closeAction: 'hide',
iconCls: 'x-deluge-edit-trackers',
initComponent: function() {
initComponent: function () {
Deluge.EditTrackerWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -50,32 +50,23 @@ Deluge.EditTrackerWindow = Ext.extend(Ext.Window, {
});
},
show: function(record) {
show: function (record) {
Deluge.EditTrackerWindow.superclass.show.call(this);
this.record = record;
this.form
.getForm()
.findField('tracker')
.setValue(record.data['url']);
this.form.getForm().findField('tracker').setValue(record.data['url']);
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
onHide: function() {
this.form
.getForm()
.findField('tracker')
.setValue('');
onHide: function () {
this.form.getForm().findField('tracker').setValue('');
},
onSaveClick: function() {
var url = this.form
.getForm()
.findField('tracker')
.getValue();
onSaveClick: function () {
var url = this.form.getForm().findField('tracker').getValue();
this.record.set('url', url);
this.record.commit();
this.hide();

View File

@ -28,7 +28,7 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
closeAction: 'hide',
iconCls: 'x-deluge-edit-trackers',
initComponent: function() {
initComponent: function () {
Deluge.EditTrackersWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -111,18 +111,18 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
});
},
onAddClick: function() {
onAddClick: function () {
this.addWindow.show();
},
onAddTrackers: function(trackers) {
onAddTrackers: function (trackers) {
var store = this.list.getStore();
Ext.each(
trackers,
function(tracker) {
function (tracker) {
var duplicate = false,
heightestTier = -1;
store.each(function(record) {
store.each(function (record) {
if (record.get('tier') > heightestTier) {
heightestTier = record.get('tier');
}
@ -143,27 +143,27 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
);
},
onCancelClick: function() {
onCancelClick: function () {
this.hide();
},
onEditClick: function() {
onEditClick: function () {
var selected = this.list.getSelectedRecords()[0];
if (!selected) return;
this.editWindow.show(selected);
},
onHide: function() {
onHide: function () {
this.list.getStore().removeAll();
},
onListNodeDblClicked: function(list, index, node, e) {
onListNodeDblClicked: function (list, index, node, e) {
this.editWindow.show(this.list.getRecord(node));
},
onOkClick: function() {
onOkClick: function () {
var trackers = [];
this.list.getStore().each(function(record) {
this.list.getStore().each(function (record) {
trackers.push({
tier: record.get('tier'),
url: record.get('url'),
@ -178,34 +178,28 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
this.hide();
},
onRemoveClick: function() {
onRemoveClick: function () {
// Remove from the grid
var selected = this.list.getSelectedRecords()[0];
if (!selected) return;
this.list.getStore().remove(selected);
},
onRequestComplete: function(status) {
onRequestComplete: function (status) {
this.list.getStore().loadData(status);
this.list.getStore().sort('tier', 'ASC');
},
onSaveFail: function() {},
onSaveFail: function () {},
onSelect: function(list) {
onSelect: function (list) {
if (list.getSelectionCount()) {
this.panel
.getBottomToolbar()
.items.get(4)
.enable();
this.panel.getBottomToolbar().items.get(4).enable();
}
},
onShow: function() {
this.panel
.getBottomToolbar()
.items.get(4)
.disable();
onShow: function () {
this.panel.getBottomToolbar().items.get(4).disable();
var r = deluge.torrents.getSelected();
this.torrentId = r.id;
deluge.client.core.get_torrent_status(r.id, ['trackers'], {
@ -214,7 +208,7 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
});
},
onDownClick: function() {
onDownClick: function () {
var r = this.list.getSelectedRecords()[0];
if (!r) return;
@ -225,7 +219,7 @@ Deluge.EditTrackersWindow = Ext.extend(Ext.Window, {
this.list.select(r.store.indexOf(r));
},
onUpClick: function() {
onUpClick: function () {
var r = this.list.getSelectedRecords()[0];
if (!r) return;

View File

@ -15,7 +15,7 @@
* Class for holding global events that occur within the UI.
*/
Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
constructor: function() {
constructor: function () {
this.toRegister = [];
this.on('login', this.onLogin, this);
Deluge.EventsManager.superclass.constructor.call(this);
@ -24,7 +24,7 @@ Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
/**
* Append an event handler to this object.
*/
addListener: function(eventName, fn, scope, o) {
addListener: function (eventName, fn, scope, o) {
this.addEvents(eventName);
if (/[A-Z]/.test(eventName.substring(0, 1))) {
if (!deluge.client) {
@ -42,7 +42,7 @@ Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
);
},
getEvents: function() {
getEvents: function () {
deluge.client.web.get_events({
success: this.onGetEventsSuccess,
failure: this.onGetEventsFailure,
@ -53,8 +53,8 @@ Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
/**
* Starts the EventsManagerManager checking for events.
*/
start: function() {
Ext.each(this.toRegister, function(eventName) {
start: function () {
Ext.each(this.toRegister, function (eventName) {
deluge.client.web.register_event_listener(eventName);
});
this.running = true;
@ -65,21 +65,21 @@ Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
/**
* Stops the EventsManagerManager checking for events.
*/
stop: function() {
stop: function () {
this.running = false;
},
// private
onLogin: function() {
onLogin: function () {
this.start();
},
onGetEventsSuccess: function(events) {
onGetEventsSuccess: function (events) {
if (!this.running) return;
if (events) {
Ext.each(
events,
function(event) {
function (event) {
var name = event[0],
args = event[1];
args.splice(0, 0, name);
@ -92,7 +92,7 @@ Deluge.EventsManager = Ext.extend(Ext.util.Observable, {
},
// private
onGetEventsFailure: function(result, error) {
onGetEventsFailure: function (result, error) {
// the request timed out or we had a communication failure
if (!this.running) return;
if (!error.isTimeout && this.errorCount++ >= 3) {

View File

@ -15,7 +15,7 @@ Deluge.FileBrowser = Ext.extend(Ext.Window, {
width: 500,
height: 400,
initComponent: function() {
initComponent: function () {
Deluge.FileBrowser.superclass.initComponent.call(this);
this.add({

View File

@ -20,7 +20,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
show_zero: null,
initComponent: function() {
initComponent: function () {
Deluge.FilterPanel.superclass.initComponent.call(this);
this.filterType = this.initialConfig.filter;
var title = '';
@ -36,7 +36,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
(title = this.filterType.replace('_', ' ')),
(parts = title.split(' ')),
(title = '');
Ext.each(parts, function(p) {
Ext.each(parts, function (p) {
fl = p.substring(0, 1).toUpperCase();
title += fl + p.substring(1) + ' ';
});
@ -75,7 +75,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
* Return the currently selected filter state
* @returns {String} the current filter state
*/
getState: function() {
getState: function () {
if (!this.list.getSelectionCount()) return;
var state = this.list.getSelectedRecords()[0];
@ -87,7 +87,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
/**
* Return the current states in the filter
*/
getStates: function() {
getStates: function () {
return this.states;
},
@ -95,18 +95,18 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
* Return the Store for the ListView of the FilterPanel
* @returns {Ext.data.Store} the ListView store
*/
getStore: function() {
getStore: function () {
return this.list.getStore();
},
/**
* Update the states in the FilterPanel
*/
updateStates: function(states) {
updateStates: function (states) {
this.states = {};
Ext.each(
states,
function(state) {
function (state) {
this.states[state[0]] = state[1];
},
this
@ -118,7 +118,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
: this.show_zero;
if (!show_zero) {
var newStates = [];
Ext.each(states, function(state) {
Ext.each(states, function (state) {
if (state[1] > 0 || state[0] == 'All') {
newStates.push(state);
}
@ -130,7 +130,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
var filters = {};
Ext.each(
states,
function(s, i) {
function (s, i) {
var record = store.getById(s[0]);
if (!record) {
record = new store.recordType({
@ -149,7 +149,7 @@ Deluge.FilterPanel = Ext.extend(Ext.Panel, {
this
);
store.each(function(record) {
store.each(function (record) {
if (filters[record.id]) return;
store.remove(record);
var selected = this.list.getSelectedRecords()[0];

View File

@ -24,7 +24,7 @@ Deluge.Formatters = {
* @return {String} a string in the date representation of the current locale
* or "" if seconds < 0.
*/
date: function(timestamp) {
date: function (timestamp) {
function zeroPad(num, count) {
var numZeropad = num + '';
while (numZeropad.length < count) {
@ -52,7 +52,7 @@ Deluge.Formatters = {
* @param {Boolean} showZero pass in true to displays 0 values
* @return {String} formatted string with KiB, MiB or GiB units.
*/
size: function(bytes, showZero) {
size: function (bytes, showZero) {
if (!bytes && !showZero) return '';
bytes = bytes / 1024.0;
@ -78,7 +78,7 @@ Deluge.Formatters = {
* @param {Boolean} showZero pass in true to displays 0 values
* @return {String} formatted string with K, M or G units.
*/
sizeShort: function(bytes, showZero) {
sizeShort: function (bytes, showZero) {
if (!bytes && !showZero) return '';
bytes = bytes / 1024.0;
@ -104,7 +104,7 @@ Deluge.Formatters = {
* @param {Boolean} showZero pass in true to displays 0 values
* @return {String} formatted string with KiB, MiB or GiB units.
*/
speed: function(bytes, showZero) {
speed: function (bytes, showZero) {
return !bytes && !showZero ? '' : fsize(bytes, showZero) + '/s';
},
@ -114,7 +114,7 @@ Deluge.Formatters = {
* @param {Number} time the number of seconds
* @return {String} a formatted time string. will return '' if seconds == 0
*/
timeRemaining: function(time) {
timeRemaining: function (time) {
if (time <= 0) {
return '&infin;';
}
@ -164,11 +164,11 @@ Deluge.Formatters = {
* @param {Mixed} value the value to be displayed
* @return the untouched value.
*/
plain: function(value) {
plain: function (value) {
return value;
},
cssClassEscape: function(value) {
cssClassEscape: function (value) {
return value.toLowerCase().replace('.', '_');
},
};

View File

@ -133,6 +133,6 @@ Deluge.Keys = {
// Merge the grid and status keys together as the status keys contain all the
// grid ones.
Ext.each(Deluge.Keys.Grid, function(key) {
Ext.each(Deluge.Keys.Grid, function (key) {
Deluge.Keys.Status.push(key);
});

View File

@ -23,7 +23,7 @@ Deluge.LoginWindow = Ext.extend(Ext.Window, {
width: 300,
height: 120,
initComponent: function() {
initComponent: function () {
Deluge.LoginWindow.superclass.initComponent.call(this);
this.on('show', this.onShow, this);
@ -56,17 +56,17 @@ Deluge.LoginWindow = Ext.extend(Ext.Window, {
this.passwordField.on('specialkey', this.onSpecialKey, this);
},
logout: function() {
logout: function () {
deluge.events.fire('logout');
deluge.client.auth.delete_session({
success: function(result) {
success: function (result) {
this.show(true);
},
scope: this,
});
},
show: function(skipCheck) {
show: function (skipCheck) {
if (this.firstShow) {
deluge.client.on('error', this.onClientError, this);
this.firstShow = false;
@ -77,28 +77,28 @@ Deluge.LoginWindow = Ext.extend(Ext.Window, {
}
deluge.client.auth.check_session({
success: function(result) {
success: function (result) {
if (result) {
deluge.events.fire('login');
} else {
this.show(true);
}
},
failure: function(result) {
failure: function (result) {
this.show(true);
},
scope: this,
});
},
onSpecialKey: function(field, e) {
onSpecialKey: function (field, e) {
if (e.getKey() == 13) this.onLogin();
},
onLogin: function() {
onLogin: function () {
var passwordField = this.passwordField;
deluge.client.auth.login(passwordField.getValue(), {
success: function(result) {
success: function (result) {
if (result) {
deluge.events.fire('login');
this.hide();
@ -109,7 +109,7 @@ Deluge.LoginWindow = Ext.extend(Ext.Window, {
msg: _('You entered an incorrect password'),
buttons: Ext.MessageBox.OK,
modal: false,
fn: function() {
fn: function () {
passwordField.focus(true, 10);
},
icon: Ext.MessageBox.WARNING,
@ -121,14 +121,14 @@ Deluge.LoginWindow = Ext.extend(Ext.Window, {
});
},
onClientError: function(errorObj, response, requestOptions) {
onClientError: function (errorObj, response, requestOptions) {
if (errorObj.error.code == 1) {
deluge.events.fire('logout');
this.show(true);
}
},
onShow: function() {
onShow: function () {
this.passwordField.focus(true, 300);
},
});

View File

@ -9,7 +9,7 @@
*/
deluge.menus = {
onTorrentActionSetOpt: function(item, e) {
onTorrentActionSetOpt: function (item, e) {
var ids = deluge.torrents.getSelectedIds();
var action = item.initialConfig.torrentAction;
var opts = {};
@ -17,17 +17,17 @@ deluge.menus = {
deluge.client.core.set_torrent_options(ids, opts);
},
onTorrentActionMethod: function(item, e) {
onTorrentActionMethod: function (item, e) {
var ids = deluge.torrents.getSelectedIds();
var action = item.initialConfig.torrentAction;
deluge.client.core[action](ids, {
success: function() {
success: function () {
deluge.ui.update();
},
});
},
onTorrentActionShow: function(item, e) {
onTorrentActionShow: function (item, e) {
var ids = deluge.torrents.getSelectedIds();
var action = item.initialConfig.torrentAction;
switch (action) {

View File

@ -10,7 +10,7 @@
Ext.namespace('Deluge');
Deluge.MoveStorage = Ext.extend(Ext.Window, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
title: _('Move Download Folder'),
@ -30,7 +30,7 @@ Deluge.MoveStorage = Ext.extend(Ext.Window, {
Deluge.MoveStorage.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.MoveStorage.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancel, this);
@ -62,21 +62,21 @@ Deluge.MoveStorage = Ext.extend(Ext.Window, {
//});
},
hide: function() {
hide: function () {
Deluge.MoveStorage.superclass.hide.call(this);
this.torrentIds = null;
},
show: function(torrentIds) {
show: function (torrentIds) {
Deluge.MoveStorage.superclass.show.call(this);
this.torrentIds = torrentIds;
},
onCancel: function() {
onCancel: function () {
this.hide();
},
onMove: function() {
onMove: function () {
var dest = this.moveLocation.getValue();
deluge.client.core.move_storage(this.torrentIds, dest);
this.hide();

View File

@ -15,7 +15,7 @@
* @extends Deluge.OptionsManager
*/
Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
constructor: function(config) {
constructor: function (config) {
this.currentId = null;
this.stored = {};
Deluge.MultiOptionsManager.superclass.constructor.call(this, config);
@ -25,7 +25,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* Changes bound fields to use the specified id.
* @param {String} id
*/
changeId: function(id, dontUpdateBinds) {
changeId: function (id, dontUpdateBinds) {
var oldId = this.currentId;
this.currentId = id;
if (!dontUpdateBinds) {
@ -33,7 +33,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
if (!this.binds[option]) continue;
Ext.each(
this.binds[option],
function(bind) {
function (bind) {
bind.setValue(this.get(option));
},
this
@ -47,7 +47,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* Changes all the changed values to be the default values
* @param {String} id
*/
commit: function() {
commit: function () {
this.stored[this.currentId] = Ext.apply(
this.stored[this.currentId],
this.changed[this.currentId]
@ -60,7 +60,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String/Array} option A single option or an array of options to return.
* @returns {Object} the options value.
*/
get: function() {
get: function () {
if (arguments.length == 1) {
var option = arguments[0];
return this.isDirty(option)
@ -78,7 +78,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
var options = {};
Ext.each(
arguments,
function(option) {
function (option) {
options[option] = this.isDirty(option)
? this.changed[this.currentId][option]
: this.getDefault(option);
@ -94,7 +94,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String} option A single option.
* @returns {Object} the value of the option
*/
getDefault: function(option) {
getDefault: function (option) {
return this.has(option)
? this.stored[this.currentId][option]
: this.options[option];
@ -104,7 +104,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* Returns the dirty (changed) values.
* @returns {Object} the changed options
*/
getDirty: function() {
getDirty: function () {
return this.changed[this.currentId] ? this.changed[this.currentId] : {};
},
@ -113,7 +113,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String} option
* @returns {Boolean} true if the option has been changed, else false.
*/
isDirty: function(option) {
isDirty: function (option) {
return (
this.changed[this.currentId] &&
!Ext.isEmpty(this.changed[this.currentId][option])
@ -126,7 +126,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String} option
* @returns {Boolean} true if the id has an option, else false.
*/
has: function(option) {
has: function (option) {
return (
this.stored[this.currentId] &&
!Ext.isEmpty(this.stored[this.currentId][option])
@ -136,7 +136,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
/**
* Reset the options back to the default values for the specified id.
*/
reset: function() {
reset: function () {
if (this.changed[this.currentId]) delete this.changed[this.currentId];
if (this.stored[this.currentId]) delete this.stored[this.currentId];
},
@ -144,7 +144,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
/**
* Reset the options back to their defaults for all ids.
*/
resetAll: function() {
resetAll: function () {
this.changed = {};
this.stored = {};
this.changeId(null);
@ -156,7 +156,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String} option
* @param {Object} value The value for the option
*/
setDefault: function(option, value) {
setDefault: function (option, value) {
if (option === undefined) {
return;
} else if (value === undefined) {
@ -187,7 +187,7 @@ Deluge.MultiOptionsManager = Ext.extend(Deluge.OptionsManager, {
* @param {String/Object} option or options to update
* @param {Object} [value];
*/
update: function(option, value) {
update: function (option, value) {
if (option === undefined) {
return;
} else if (value === undefined) {

View File

@ -18,7 +18,7 @@ Ext.namespace('Deluge');
* @param {Object} config Configuration options
*/
Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
constructor: function(config) {
constructor: function (config) {
config = config || {};
this.binds = {};
this.changed = {};
@ -56,7 +56,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* Add a set of default options and values to the options manager
* @param {Object} options The default options.
*/
addOptions: function(options) {
addOptions: function (options) {
this.options = Ext.applyIf(this.options, options);
},
@ -65,7 +65,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String} option
* @param {Ext.form.Field} field
*/
bind: function(option, field) {
bind: function (option, field) {
this.binds[option] = this.binds[option] || [];
this.binds[option].push(field);
field._doption = option;
@ -81,7 +81,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
/**
* Changes all the changed values to be the default values
*/
commit: function() {
commit: function () {
this.options = Ext.apply(this.options, this.changed);
this.reset();
},
@ -91,7 +91,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {Mixed} oldValue The original value
* @param {Mixed} value The new value to convert
*/
convertValueType: function(oldValue, value) {
convertValueType: function (oldValue, value) {
if (Ext.type(oldValue) != Ext.type(value)) {
switch (Ext.type(oldValue)) {
case 'string':
@ -121,7 +121,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String} [option] A single option or an array of options to return.
* @returns {Object} the options value.
*/
get: function() {
get: function () {
if (arguments.length == 1) {
var option = arguments[0];
return this.isDirty(option)
@ -131,7 +131,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
var options = {};
Ext.each(
arguments,
function(option) {
function (option) {
if (!this.has(option)) return;
options[option] = this.isDirty(option)
? this.changed[option]
@ -148,7 +148,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String|Array} [option] A single option or an array of options to return.
* @returns {Object} the value of the option
*/
getDefault: function(option) {
getDefault: function (option) {
return this.options[option];
},
@ -156,7 +156,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* Returns the dirty (changed) values.
* @returns {Object} the changed options
*/
getDirty: function() {
getDirty: function () {
return this.changed;
},
@ -164,7 +164,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String} [option] The option to check
* @returns {Boolean} true if the option has been changed from the default.
*/
isDirty: function(option) {
isDirty: function (option) {
return !Ext.isEmpty(this.changed[option]);
},
@ -173,14 +173,14 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String} option
* @returns {Boolean} true if the option exists, else false.
*/
has: function(option) {
has: function (option) {
return this.options[option];
},
/**
* Reset the options back to the default values.
*/
reset: function() {
reset: function () {
this.changed = {};
},
@ -189,7 +189,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String} option
* @param {Object} value The value for the option
*/
set: function(option, value) {
set: function (option, value) {
if (option === undefined) {
return;
} else if (typeof option == 'object') {
@ -209,7 +209,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {String/Object} option or options to update
* @param {Object} [value];
*/
update: function(option, value) {
update: function (option, value) {
if (option === undefined) {
return;
} else if (value === undefined) {
@ -238,7 +238,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* Lets the option manager know when a field is blurred so if a value
* so value changing operations can continue on that field.
*/
onFieldBlur: function(field, event) {
onFieldBlur: function (field, event) {
if (this.focused == field) {
this.focused = null;
}
@ -249,7 +249,7 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* @param {Ext.form.Field} field
* @private
*/
onFieldChange: function(field, event) {
onFieldChange: function (field, event) {
if (field.field) field = field.field; // fix for spinners
this.update(field._doption, field.getValue());
},
@ -258,16 +258,16 @@ Deluge.OptionsManager = Ext.extend(Ext.util.Observable, {
* Lets the option manager know when a field is focused so if a value changing
* operation is performed it will not change the value of the field.
*/
onFieldFocus: function(field, event) {
onFieldFocus: function (field, event) {
this.focused = field;
},
onChange: function(option, newValue, oldValue) {
onChange: function (option, newValue, oldValue) {
// If we don't have a bind there's nothing to do.
if (Ext.isEmpty(this.binds[option])) return;
Ext.each(
this.binds[option],
function(bind) {
function (bind) {
// The field is currently focused so we do not want to change it.
if (bind == this.focused) return;
// Set the form field to the new value.

View File

@ -20,7 +20,7 @@ Deluge.OtherLimitWindow = Ext.extend(Ext.Window, {
constrainHeader: true,
closeAction: 'hide',
initComponent: function() {
initComponent: function () {
Deluge.OtherLimitWindow.superclass.initComponent.call(this);
this.form = this.add({
xtype: 'form',
@ -53,30 +53,27 @@ Deluge.OtherLimitWindow = Ext.extend(Ext.Window, {
this.afterMethod('show', this.doFocusField, this);
},
setValue: function(value) {
setValue: function (value) {
this.form.getForm().setValues({ limit: value });
},
onCancelClick: function() {
onCancelClick: function () {
this.form.getForm().reset();
this.hide();
},
onOkClick: function() {
onOkClick: function () {
var config = {};
config[this.group] = this.form.getForm().getValues().limit;
deluge.client.core.set_config(config, {
success: function() {
success: function () {
deluge.ui.update();
},
});
this.hide();
},
doFocusField: function() {
this.form
.getForm()
.findField('limit')
.focus(true, 10);
doFocusField: function () {
this.form.getForm().findField('limit').focus(true, 10);
},
});

View File

@ -21,7 +21,7 @@ Deluge.Plugin = Ext.extend(Ext.util.Observable, {
*/
name: null,
constructor: function(config) {
constructor: function (config) {
this.isDelugePlugin = true;
this.addEvents({
/**
@ -43,7 +43,7 @@ Deluge.Plugin = Ext.extend(Ext.util.Observable, {
* Disables the plugin, firing the "{@link #disabled}" event and
* then executing the plugins clean up method onDisabled.
*/
disable: function() {
disable: function () {
this.fireEvent('disabled', this);
if (this.onDisable) this.onDisable();
},
@ -52,13 +52,13 @@ Deluge.Plugin = Ext.extend(Ext.util.Observable, {
* Enables the plugin, firing the "{@link #enabled}" event and
* then executes the plugins setup method, onEnabled.
*/
enable: function() {
enable: function () {
deluge.client.reloadMethods();
this.fireEvent('enable', this);
if (this.onEnable) this.onEnable();
},
registerTorrentStatus: function(key, header, options) {
registerTorrentStatus: function (key, header, options) {
options = options || {};
var cc = options.colCfg || {},
sc = options.storeCfg || {};
@ -79,23 +79,23 @@ Deluge.Plugin = Ext.extend(Ext.util.Observable, {
deluge.torrents.getView().refresh(true);
},
deregisterTorrentStatus: function(key) {
deregisterTorrentStatus: function (key) {
var fields = [];
Ext.each(deluge.torrents.meta.fields, function(field) {
Ext.each(deluge.torrents.meta.fields, function (field) {
if (field.name != key) fields.push(field);
});
deluge.torrents.meta.fields = fields;
deluge.torrents.getStore().reader.onMetaChange(deluge.torrents.meta);
var cols = [];
Ext.each(deluge.torrents.columns, function(col) {
Ext.each(deluge.torrents.columns, function (col) {
if (col.dataIndex != key) cols.push(col);
});
deluge.torrents.colModel.setConfig(cols);
deluge.torrents.columns = cols;
var keys = [];
Ext.each(Deluge.Keys.Grid, function(k) {
Ext.each(Deluge.Keys.Grid, function (k) {
if (k == key) keys.push(k);
});
Deluge.Keys.Grid = keys;

View File

@ -27,16 +27,16 @@ Deluge.RemoveWindow = Ext.extend(Ext.Window, {
bodyStyle: 'padding: 5px; padding-left: 10px;',
html: 'Are you sure you wish to remove the torrent (s)?',
initComponent: function() {
initComponent: function () {
Deluge.RemoveWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancel, this);
this.addButton(_('Remove With Data'), this.onRemoveData, this);
this.addButton(_('Remove Torrent'), this.onRemove, this);
},
remove: function(removeData) {
remove: function (removeData) {
deluge.client.core.remove_torrents(this.torrentIds, removeData, {
success: function(result) {
success: function (result) {
if (result == true) {
console.log(
'Error(s) occured when trying to delete torrent(s).'
@ -49,25 +49,25 @@ Deluge.RemoveWindow = Ext.extend(Ext.Window, {
});
},
show: function(ids) {
show: function (ids) {
Deluge.RemoveWindow.superclass.show.call(this);
this.torrentIds = ids;
},
onCancel: function() {
onCancel: function () {
this.hide();
this.torrentIds = null;
},
onRemove: function() {
onRemove: function () {
this.remove(false);
},
onRemoveData: function() {
onRemoveData: function () {
this.remove(true);
},
onRemoved: function(torrentIds) {
onRemoved: function (torrentIds) {
deluge.events.fire('torrentsRemoved', torrentIds);
this.hide();
deluge.ui.update();

View File

@ -24,7 +24,7 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
// private
selected: null,
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
id: 'sidebar',
@ -43,16 +43,16 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
},
// private
initComponent: function() {
initComponent: function () {
Deluge.Sidebar.superclass.initComponent.call(this);
deluge.events.on('disconnect', this.onDisconnect, this);
},
createFilter: function(filter, states) {
createFilter: function (filter, states) {
var panel = new Deluge.FilterPanel({
filter: filter,
});
panel.on('selectionchange', function(view, nodes) {
panel.on('selectionchange', function (view, nodes) {
deluge.ui.update();
});
this.add(panel);
@ -60,7 +60,7 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
this.doLayout();
this.panels[filter] = panel;
panel.header.on('click', function(header) {
panel.header.on('click', function (header) {
if (!deluge.config.sidebar_multiple_filters) {
deluge.ui.update();
}
@ -74,16 +74,16 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
this.fireEvent('afterfiltercreate', this, panel);
},
getFilter: function(filter) {
getFilter: function (filter) {
return this.panels[filter];
},
getFilterStates: function() {
getFilterStates: function () {
var states = {};
if (deluge.config.sidebar_multiple_filters) {
// Grab the filters from each of the filter panels
this.items.each(function(panel) {
this.items.each(function (panel) {
var state = panel.getState();
if (state == null) return;
states[panel.filterType] = state;
@ -100,12 +100,12 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
return states;
},
hasFilter: function(filter) {
hasFilter: function (filter) {
return this.panels[filter] ? true : false;
},
// private
onDisconnect: function() {
onDisconnect: function () {
for (var filter in this.panels) {
this.remove(this.panels[filter]);
}
@ -113,11 +113,11 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
this.selected = null;
},
onFilterSelect: function(selModel, rowIndex, record) {
onFilterSelect: function (selModel, rowIndex, record) {
deluge.ui.update();
},
update: function(filters) {
update: function (filters) {
for (var filter in filters) {
var states = filters[filter];
if (Ext.getKeys(this.panels).indexOf(filter) > -1) {
@ -130,7 +130,7 @@ Deluge.Sidebar = Ext.extend(Ext.Panel, {
// Perform a cleanup of fitlers that are not enabled any more.
Ext.each(
Ext.keys(this.panels),
function(filter) {
function (filter) {
if (Ext.keys(filters).indexOf(filter) == -1) {
// We need to remove the panel
this.remove(this.panels[filter]);

View File

@ -10,7 +10,7 @@
Ext.namespace('Deluge');
Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
id: 'deluge-statusbar',
@ -22,14 +22,14 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
Deluge.Statusbar.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.Statusbar.superclass.initComponent.call(this);
deluge.events.on('connect', this.onConnect, this);
deluge.events.on('disconnect', this.onDisconnect, this);
},
createButtons: function() {
createButtons: function () {
this.buttons = this.add(
{
id: 'statusbar-connections',
@ -213,7 +213,7 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
cls: 'x-btn-text-icon',
iconCls: 'x-deluge-traffic',
tooltip: _('Protocol Traffic Download/Upload'),
handler: function() {
handler: function () {
deluge.preferences.show();
deluge.preferences.selectPage('Network');
},
@ -240,7 +240,7 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
cls: 'x-btn-text-icon',
iconCls: 'x-deluge-freespace',
tooltip: _('Freespace in download folder'),
handler: function() {
handler: function () {
deluge.preferences.show();
deluge.preferences.selectPage('Downloads');
},
@ -249,7 +249,7 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
this.created = true;
},
onConnect: function() {
onConnect: function () {
this.setStatus({
iconCls: 'x-connected',
text: '',
@ -257,7 +257,7 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
if (!this.created) {
this.createButtons();
} else {
Ext.each(this.buttons, function(item) {
Ext.each(this.buttons, function (item) {
item.show();
item.enable();
});
@ -265,23 +265,23 @@ Deluge.Statusbar = Ext.extend(Ext.ux.StatusBar, {
this.doLayout();
},
onDisconnect: function() {
onDisconnect: function () {
this.clearStatus({ useDefaults: true });
Ext.each(this.buttons, function(item) {
Ext.each(this.buttons, function (item) {
item.hide();
item.disable();
});
this.doLayout();
},
update: function(stats) {
update: function (stats) {
if (!stats) return;
function addSpeed(val) {
return val + ' KiB/s';
}
var updateStat = function(name, config) {
var updateStat = function (name, config) {
var item = this.items.get('statusbar-' + name);
if (config.limit.value > 0) {
var value = config.value.formatter

View File

@ -15,13 +15,13 @@ Ext.ns('Deluge');
* @extends Ext.menu.Menu
*/
Deluge.StatusbarMenu = Ext.extend(Ext.menu.Menu, {
initComponent: function() {
initComponent: function () {
Deluge.StatusbarMenu.superclass.initComponent.call(this);
this.otherWin = new Deluge.OtherLimitWindow(
this.initialConfig.otherWin || {}
);
this.items.each(function(item) {
this.items.each(function (item) {
if (item.getXType() != 'menucheckitem') return;
if (item.value == 'other') {
item.on('click', this.onOtherClicked, this);
@ -31,14 +31,14 @@ Deluge.StatusbarMenu = Ext.extend(Ext.menu.Menu, {
}, this);
},
setValue: function(value) {
setValue: function (value) {
var beenSet = false;
// set the new value
this.value = value = value == 0 ? -1 : value;
var other = null;
// uncheck all items
this.items.each(function(item) {
this.items.each(function (item) {
if (item.setChecked) {
item.suspendEvents();
if (item.value == value) {
@ -60,18 +60,18 @@ Deluge.StatusbarMenu = Ext.extend(Ext.menu.Menu, {
other.resumeEvents();
},
onLimitChanged: function(item, checked) {
onLimitChanged: function (item, checked) {
if (!checked || item.value == 'other') return; // We do not care about unchecked or other.
var config = {};
config[item.group] = item.value;
deluge.client.core.set_config(config, {
success: function() {
success: function () {
deluge.ui.update();
},
});
},
onOtherClicked: function(item, e) {
onOtherClicked: function (item, e) {
this.otherWin.group = item.group;
this.otherWin.setValue(this.value);
this.otherWin.show();

View File

@ -14,7 +14,7 @@
* @extends Ext.Toolbar
*/
Deluge.Toolbar = Ext.extend(Ext.Toolbar, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
items: [
@ -118,62 +118,62 @@ Deluge.Toolbar = Ext.extend(Ext.Toolbar, {
connectedButtons: ['add', 'remove', 'pause', 'resume', 'up', 'down'],
initComponent: function() {
initComponent: function () {
Deluge.Toolbar.superclass.initComponent.call(this);
deluge.events.on('connect', this.onConnect, this);
deluge.events.on('login', this.onLogin, this);
},
onConnect: function() {
onConnect: function () {
Ext.each(
this.connectedButtons,
function(buttonId) {
function (buttonId) {
this.items.get(buttonId).enable();
},
this
);
},
onDisconnect: function() {
onDisconnect: function () {
Ext.each(
this.connectedButtons,
function(buttonId) {
function (buttonId) {
this.items.get(buttonId).disable();
},
this
);
},
onLogin: function() {
onLogin: function () {
this.items.get('logout').enable();
},
onLogout: function() {
onLogout: function () {
this.items.get('logout').disable();
deluge.login.logout();
},
onConnectionManagerClick: function() {
onConnectionManagerClick: function () {
deluge.connectionManager.show();
},
onHelpClick: function() {
onHelpClick: function () {
window.open('http://dev.deluge-torrent.org/wiki/UserGuide');
},
onAboutClick: function() {
onAboutClick: function () {
var about = new Deluge.about.AboutWindow();
about.show();
},
onPreferencesClick: function() {
onPreferencesClick: function () {
deluge.preferences.show();
},
onTorrentAction: function(item) {
onTorrentAction: function (item) {
var selection = deluge.torrents.getSelections();
var ids = [];
Ext.each(selection, function(record) {
Ext.each(selection, function (record) {
ids.push(record.id);
});
@ -184,7 +184,7 @@ Deluge.Toolbar = Ext.extend(Ext.Toolbar, {
case 'pause':
case 'resume':
deluge.client.core[item.id + '_torrent'](ids, {
success: function() {
success: function () {
deluge.ui.update();
},
});
@ -192,7 +192,7 @@ Deluge.Toolbar = Ext.extend(Ext.Toolbar, {
case 'up':
case 'down':
deluge.client.core['queue_' + item.id](ids, {
success: function() {
success: function () {
deluge.ui.update();
},
});
@ -200,7 +200,7 @@ Deluge.Toolbar = Ext.extend(Ext.Toolbar, {
}
},
onTorrentAdd: function() {
onTorrentAdd: function () {
deluge.add.show();
},
});

View File

@ -8,7 +8,7 @@
* See LICENSE for more details.
*/
(function() {
(function () {
/* Renderers for the Torrent Grid */
function queueRenderer(value) {
return value == -1 ? '' : value + 1;
@ -337,21 +337,21 @@
key: 'a',
ctrl: true,
stopEvent: true,
handler: function() {
handler: function () {
deluge.torrents.getSelectionModel().selectAll();
},
},
{
key: [46],
stopEvent: true,
handler: function() {
handler: function () {
ids = deluge.torrents.getSelectedIds();
deluge.removeWindow.show(ids);
},
},
],
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
id: 'torrentGrid',
@ -376,12 +376,12 @@
Deluge.TorrentGrid.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.TorrentGrid.superclass.initComponent.call(this);
deluge.events.on('torrentsRemoved', this.onTorrentsRemoved, this);
deluge.events.on('disconnect', this.onDisconnect, this);
this.on('rowcontextmenu', function(grid, rowIndex, e) {
this.on('rowcontextmenu', function (grid, rowIndex, e) {
e.stopEvent();
var selection = grid.getSelectionModel();
if (!selection.isSelected(rowIndex)) {
@ -397,7 +397,7 @@
* @param index {int} The row index of the torrent you wish to retrieve.
* @return {Ext.data.Record} The record representing the torrent.
*/
getTorrent: function(index) {
getTorrent: function (index) {
return this.getStore().getAt(index);
},
@ -405,14 +405,14 @@
* Returns the currently selected record.
* @ return {Array/Ext.data.Record} The record(s) representing the rows
*/
getSelected: function() {
getSelected: function () {
return this.getSelectionModel().getSelected();
},
/**
* Returns the currently selected records.
*/
getSelections: function() {
getSelections: function () {
return this.getSelectionModel().getSelections();
},
@ -420,7 +420,7 @@
* Return the currently selected torrent id.
* @return {String} The currently selected id.
*/
getSelectedId: function() {
getSelectedId: function () {
return this.getSelectionModel().getSelected().id;
},
@ -428,15 +428,15 @@
* Return the currently selected torrent ids.
* @return {Array} The currently selected ids.
*/
getSelectedIds: function() {
getSelectedIds: function () {
var ids = [];
Ext.each(this.getSelectionModel().getSelections(), function(r) {
Ext.each(this.getSelectionModel().getSelections(), function (r) {
ids.push(r.id);
});
return ids;
},
update: function(torrents, wipe) {
update: function (torrents, wipe) {
var store = this.getStore();
// Need to perform a complete reload of the torrent grid.
@ -470,7 +470,7 @@
store.add(newTorrents);
// Remove any torrents that should not be in the store.
store.each(function(record) {
store.each(function (record) {
if (!torrents[record.id]) {
store.remove(record);
delete this.torrents[record.id];
@ -484,17 +484,17 @@
},
// private
onDisconnect: function() {
onDisconnect: function () {
this.getStore().removeAll();
this.torrents = {};
},
// private
onTorrentsRemoved: function(torrentIds) {
onTorrentsRemoved: function (torrentIds) {
var selModel = this.getSelectionModel();
Ext.each(
torrentIds,
function(torrentId) {
function (torrentId) {
var record = this.getStore().getById(torrentId);
if (selModel.isSelected(record)) {
selModel.deselectRow(this.getStore().indexOf(record));

View File

@ -42,7 +42,7 @@ deluge.ui = {
* @description Create all the interface components, the json-rpc client
* and set up various events that the UI will utilise.
*/
initialize: function() {
initialize: function () {
deluge.add = new Deluge.add.AddWindow();
deluge.details = new Deluge.details.DetailsPanel();
deluge.connectionManager = new Deluge.ConnectionManager();
@ -100,7 +100,7 @@ deluge.ui = {
deluge.client.on(
'connected',
function(e) {
function (e) {
deluge.login.show();
},
this,
@ -113,7 +113,7 @@ deluge.ui = {
this.originalTitle = document.title;
},
checkConnection: function() {
checkConnection: function () {
deluge.client.web.connected({
success: this.onConnectionSuccess,
failure: this.onConnectionError,
@ -121,7 +121,7 @@ deluge.ui = {
});
},
update: function() {
update: function () {
var filters = deluge.sidebar.getFilterStates();
this.oldFilters = this.filters;
this.filters = filters;
@ -134,9 +134,9 @@ deluge.ui = {
deluge.details.update();
},
onConnectionError: function(error) {},
onConnectionError: function (error) {},
onConnectionSuccess: function(result) {
onConnectionSuccess: function (result) {
deluge.statusbar.setStatus({
iconCls: 'x-deluge-statusbar icon-ok',
text: _('Connection restored'),
@ -147,7 +147,7 @@ deluge.ui = {
}
},
onUpdateError: function(error) {
onUpdateError: function (error) {
if (this.errorCount == 2) {
Ext.MessageBox.show({
title: _('Lost Connection'),
@ -169,7 +169,7 @@ deluge.ui = {
* @private
* Updates the various components in the interface.
*/
onUpdate: function(data) {
onUpdate: function (data) {
if (!data['connected']) {
deluge.connectionManager.disconnect(true);
return;
@ -199,7 +199,7 @@ deluge.ui = {
* @private
* Start the Deluge UI polling the server and update the interface.
*/
onConnect: function() {
onConnect: function () {
if (!this.running) {
this.running = setInterval(this.update, 2000);
this.update();
@ -214,14 +214,14 @@ deluge.ui = {
* @static
* @private
*/
onDisconnect: function() {
onDisconnect: function () {
this.stop();
},
onGotPlugins: function(plugins) {
onGotPlugins: function (plugins) {
Ext.each(
plugins.enabled_plugins,
function(plugin) {
function (plugin) {
if (deluge.plugins[plugin]) return;
deluge.client.web.get_plugin_resources(plugin, {
success: this.onGotPluginResources,
@ -232,7 +232,7 @@ deluge.ui = {
);
},
onPluginEnabled: function(pluginName) {
onPluginEnabled: function (pluginName) {
if (deluge.plugins[pluginName]) {
deluge.plugins[pluginName].enable();
} else {
@ -243,13 +243,13 @@ deluge.ui = {
}
},
onGotPluginResources: function(resources) {
onGotPluginResources: function (resources) {
var scripts = Deluge.debug
? resources.debug_scripts
: resources.scripts;
Ext.each(
scripts,
function(script) {
function (script) {
Ext.ux.JSLoader({
url: deluge.config.base + script,
onLoad: this.onPluginLoaded,
@ -260,11 +260,11 @@ deluge.ui = {
);
},
onPluginDisabled: function(pluginName) {
onPluginDisabled: function (pluginName) {
if (deluge.plugins[pluginName]) deluge.plugins[pluginName].disable();
},
onPluginLoaded: function(options) {
onPluginLoaded: function (options) {
// This could happen if the plugin has multiple scripts
if (!Deluge.hasPlugin(options.pluginName)) return;
@ -278,7 +278,7 @@ deluge.ui = {
* @static
* Stop the Deluge UI polling the server and clear the interface.
*/
stop: function() {
stop: function () {
if (this.running) {
clearInterval(this.running);
this.running = false;
@ -287,6 +287,6 @@ deluge.ui = {
},
};
Ext.onReady(function(e) {
Ext.onReady(function (e) {
deluge.ui.initialize();
});

View File

@ -12,7 +12,7 @@ Ext.namespace('Deluge.add');
// This override allows file upload buttons to contain icons
Ext.override(Ext.ux.form.FileUploadField, {
onRender: function(ct, position) {
onRender: function (ct, position) {
Ext.ux.form.FileUploadField.superclass.onRender.call(
this,
ct,
@ -58,7 +58,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
plain: true,
iconCls: 'x-deluge-add-window-icon',
initComponent: function() {
initComponent: function () {
Deluge.add.AddWindow.superclass.initComponent.call(this);
this.addButton(_('Cancel'), this.onCancelClick, this);
@ -168,17 +168,17 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
this.on('show', this.onShow, this);
},
clear: function() {
clear: function () {
this.list.getStore().removeAll();
this.optionsPanel.clear();
// Reset upload form so handler fires when a canceled file is reselected
this.fileUploadForm.reset();
},
onAddClick: function() {
onAddClick: function () {
var torrents = [];
if (!this.list) return;
this.list.getStore().each(function(r) {
this.list.getStore().each(function (r) {
var id = r.get('info_hash');
torrents.push({
path: this.optionsPanel.getFilename(id),
@ -187,29 +187,29 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
}, this);
deluge.client.web.add_torrents(torrents, {
success: function(result) {},
success: function (result) {},
});
this.clear();
this.hide();
},
onCancelClick: function() {
onCancelClick: function () {
this.clear();
this.hide();
},
onFile: function() {
onFile: function () {
if (!this.file) this.file = new Deluge.add.FileWindow();
this.file.show();
},
onHide: function() {
onHide: function () {
this.optionsPanel.setActiveTab(0);
this.optionsPanel.files.setDisabled(true);
this.optionsPanel.form.setDisabled(true);
},
onRemove: function() {
onRemove: function () {
if (!this.list.getSelectionCount()) return;
var torrent = this.list.getSelectedRecords()[0];
if (!torrent) return;
@ -220,7 +220,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
delete this.torrents[torrent.id];
},
onSelect: function(list, selections) {
onSelect: function (list, selections) {
if (selections.length) {
var record = this.list.getRecord(selections[0]);
this.optionsPanel.setTorrent(record.get('info_hash'));
@ -230,7 +230,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
}
},
onShow: function() {
onShow: function () {
if (!this.url) {
this.url = new Deluge.add.UrlWindow();
this.url.on('beforeadd', this.onTorrentBeforeAdd, this);
@ -241,14 +241,14 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
this.optionsPanel.form.getDefaults();
},
onFileSelected: function() {
onFileSelected: function () {
if (this.fileUploadForm.isValid()) {
var torrentIds = [];
var files = this.fileUploadForm.findField('torrentFile').value;
var randomId = this.createTorrentId();
Array.prototype.forEach.call(
files,
function(file, i) {
function (file, i) {
// Append index for batch of unique torrentIds.
var torrentId = randomId + i.toString();
torrentIds.push(torrentId);
@ -266,14 +266,14 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
}
},
onUploadSuccess: function(fp, upload) {
onUploadSuccess: function (fp, upload) {
if (!upload.result.success) {
this.clear();
return;
}
upload.result.files.forEach(
function(filename, i) {
function (filename, i) {
deluge.client.web.get_torrent_info(filename, {
success: this.onGotInfo,
scope: this,
@ -285,7 +285,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
this.fileUploadForm.reset();
},
onUploadFailure: function(form, action) {
onUploadFailure: function (form, action) {
this.hide();
Ext.MessageBox.show({
title: _('Error'),
@ -298,18 +298,18 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
this.fireEvent('addfailed', this.torrentId);
},
onGotInfo: function(info, obj, response, request) {
onGotInfo: function (info, obj, response, request) {
info.filename = request.options.filename;
torrentId = request.options.torrentId;
this.onTorrentAdd(torrentId, info);
},
onTorrentBeforeAdd: function(torrentId, text) {
onTorrentBeforeAdd: function (torrentId, text) {
var store = this.list.getStore();
store.loadData([[torrentId, null, text]], true);
},
onTorrentAdd: function(torrentId, info) {
onTorrentAdd: function (torrentId, info) {
var r = this.list.getStore().getById(torrentId);
if (!info) {
Ext.MessageBox.show({
@ -330,7 +330,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
}
},
onTorrentAddFailed: function(torrentId) {
onTorrentAddFailed: function (torrentId) {
var store = this.list.getStore();
var torrentRecord = store.getById(torrentId);
if (torrentRecord) {
@ -338,7 +338,7 @@ Deluge.add.AddWindow = Ext.extend(Deluge.add.Window, {
}
},
onUrl: function(button, event) {
onUrl: function (button, event) {
this.url.show();
},
});

View File

@ -34,7 +34,7 @@ Deluge.add.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
width: 60,
dataIndex: 'size',
tpl: new Ext.XTemplate('{size:this.fsize}', {
fsize: function(v) {
fsize: function (v) {
return fsize(v);
},
}),
@ -44,7 +44,7 @@ Deluge.add.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
width: 65,
dataIndex: 'download',
tpl: new Ext.XTemplate('{download:this.format}', {
format: function(v) {
format: function (v) {
return (
'<div rel="chkbox" class="x-grid3-check-col' +
(v ? '-on' : '') +
@ -55,21 +55,21 @@ Deluge.add.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
},
],
initComponent: function() {
initComponent: function () {
Deluge.add.FilesTab.superclass.initComponent.call(this);
this.on('click', this.onNodeClick, this);
},
clearFiles: function() {
clearFiles: function () {
var root = this.getRootNode();
if (!root.hasChildNodes()) return;
root.cascade(function(node) {
root.cascade(function (node) {
if (!node.parentNode || !node.getOwnerTree()) return;
node.remove();
});
},
setDownload: function(node, value, suppress) {
setDownload: function (node, value, suppress) {
node.attributes.download = value;
node.ui.updateColumns();
@ -79,7 +79,7 @@ Deluge.add.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
}
} else {
var nodes = [node];
node.cascade(function(n) {
node.cascade(function (n) {
n.attributes.download = value;
n.ui.updateColumns();
nodes.push(n);
@ -90,7 +90,7 @@ Deluge.add.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
}
},
onNodeClick: function(node, e) {
onNodeClick: function (node, e) {
var el = new Ext.Element(e.target);
if (el.getAttribute('rel') == 'chkbox') {
this.setDownload(node, !node.attributes.download);

View File

@ -18,7 +18,7 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
activeTab: 0,
height: 265,
initComponent: function() {
initComponent: function () {
Deluge.add.OptionsPanel.superclass.initComponent.call(this);
this.files = this.add(new Deluge.add.FilesTab());
this.form = this.add(new Deluge.add.OptionsTab());
@ -26,12 +26,12 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
this.files.on('fileschecked', this.onFilesChecked, this);
},
addTorrent: function(torrent) {
addTorrent: function (torrent) {
this.torrents[torrent['info_hash']] = torrent;
var fileIndexes = {};
this.walkFileTree(
torrent['files_tree'],
function(filename, type, entry, parent) {
function (filename, type, entry, parent) {
if (type != 'file') return;
fileIndexes[entry.index] = entry.download;
},
@ -39,7 +39,7 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
);
var priorities = [];
Ext.each(Ext.keys(fileIndexes), function(index) {
Ext.each(Ext.keys(fileIndexes), function (index) {
priorities[index] = fileIndexes[index];
});
@ -51,26 +51,26 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
this.form.optionsManager.changeId(oldId, true);
},
clear: function() {
clear: function () {
this.files.clearFiles();
this.form.optionsManager.resetAll();
},
getFilename: function(torrentId) {
getFilename: function (torrentId) {
return this.torrents[torrentId]['filename'];
},
getOptions: function(torrentId) {
getOptions: function (torrentId) {
var oldId = this.form.optionsManager.changeId(torrentId, true);
var options = this.form.optionsManager.get();
this.form.optionsManager.changeId(oldId, true);
Ext.each(options['file_priorities'], function(priority, index) {
Ext.each(options['file_priorities'], function (priority, index) {
options['file_priorities'][index] = priority ? 1 : 0;
});
return options;
},
setTorrent: function(torrentId) {
setTorrent: function (torrentId) {
if (!torrentId) return;
this.torrentId = torrentId;
@ -85,7 +85,7 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
if (this.torrents[torrentId]['files_tree']) {
this.walkFileTree(
this.torrents[torrentId]['files_tree'],
function(filename, type, entry, parentNode) {
function (filename, type, entry, parentNode) {
var node = new Ext.tree.TreeNode({
download: entry.index ? priorities[entry.index] : true,
filename: filename,
@ -109,7 +109,7 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
}
},
walkFileTree: function(files, callback, scope, parentNode) {
walkFileTree: function (files, callback, scope, parentNode) {
for (var filename in files.contents) {
var entry = files.contents[filename];
var type = entry.type;
@ -129,10 +129,10 @@ Deluge.add.OptionsPanel = Ext.extend(Ext.TabPanel, {
}
},
onFilesChecked: function(nodes, newValue, oldValue) {
onFilesChecked: function (nodes, newValue, oldValue) {
Ext.each(
nodes,
function(node) {
function (node) {
if (node.attributes.fileindex < 0) return;
var priorities = this.form.optionsManager.get(
'file_priorities'

View File

@ -21,7 +21,7 @@ Deluge.add.OptionsTab = Ext.extend(Ext.form.FormPanel, {
disabled: true,
labelWidth: 1,
initComponent: function() {
initComponent: function () {
Deluge.add.OptionsTab.superclass.initComponent.call(this);
this.optionsManager = new Deluge.MultiOptionsManager();
@ -174,7 +174,7 @@ Deluge.add.OptionsTab = Ext.extend(Ext.form.FormPanel, {
);
},
getDefaults: function() {
getDefaults: function () {
var keys = [
'add_paused',
'pre_allocate_storage',
@ -190,7 +190,7 @@ Deluge.add.OptionsTab = Ext.extend(Ext.form.FormPanel, {
];
deluge.client.core.get_config_values(keys, {
success: function(config) {
success: function (config) {
var options = {
file_priorities: [],
add_paused: config.add_paused,

View File

@ -22,7 +22,7 @@ Deluge.add.UrlWindow = Ext.extend(Deluge.add.Window, {
bodyStyle: 'padding: 10px 5px;',
iconCls: 'x-deluge-add-url-window-icon',
initComponent: function() {
initComponent: function () {
Deluge.add.UrlWindow.superclass.initComponent.call(this);
this.addButton(_('Add'), this.onAddClick, this);
@ -50,7 +50,7 @@ Deluge.add.UrlWindow = Ext.extend(Deluge.add.Window, {
this.cookieField.on('specialkey', this.onAdd, this);
},
onAddClick: function(field, e) {
onAddClick: function (field, e) {
if (
(field.id == 'url' || field.id == 'cookies') &&
e.getKey() != e.ENTER
@ -83,7 +83,7 @@ Deluge.add.UrlWindow = Ext.extend(Deluge.add.Window, {
this.fireEvent('beforeadd', torrentId, url);
},
onDownload: function(filename, obj, resp, req) {
onDownload: function (filename, obj, resp, req) {
deluge.client.web.get_torrent_info(filename, {
success: this.onGotInfo,
failure: this.onDownloadFailed,
@ -93,7 +93,7 @@ Deluge.add.UrlWindow = Ext.extend(Deluge.add.Window, {
});
},
onDownloadFailed: function(obj, resp, req) {
onDownloadFailed: function (obj, resp, req) {
Ext.MessageBox.show({
title: _('Error'),
msg: _('Failed to download torrent'),
@ -105,7 +105,7 @@ Deluge.add.UrlWindow = Ext.extend(Deluge.add.Window, {
this.fireEvent('addfailed', req.options.torrentId);
},
onGotInfo: function(info, obj, response, request) {
onGotInfo: function (info, obj, response, request) {
info['filename'] = request.options.filename;
this.fireEvent('add', request.options.torrentId, info);
},

View File

@ -15,7 +15,7 @@ Ext.ns('Deluge.add');
* Base class for an add Window
*/
Deluge.add.Window = Ext.extend(Ext.Window, {
initComponent: function() {
initComponent: function () {
Deluge.add.Window.superclass.initComponent.call(this);
this.addEvents('beforeadd', 'add', 'addfailed');
},
@ -23,7 +23,7 @@ Deluge.add.Window = Ext.extend(Ext.Window, {
/**
* Create an id for the torrent before we have any info about it.
*/
createTorrentId: function() {
createTorrentId: function () {
return new Date().getTime().toString();
},
});

View File

@ -27,11 +27,11 @@ Deluge.data.SortTypes = {
return ((+d[1] * 256 + (+d[2])) * 256 + (+d[3])) * 256 + (+d[4]);
},
asQueuePosition: function(value) {
asQueuePosition: function (value) {
return value > -1 ? value : Number.MAX_VALUE;
},
asName: function(value) {
asName: function (value) {
return String(value).toLowerCase();
},
};

View File

@ -16,7 +16,7 @@ Deluge.details.DetailsPanel = Ext.extend(Ext.TabPanel, {
id: 'torrentDetails',
activeTab: 0,
initComponent: function() {
initComponent: function () {
Deluge.details.DetailsPanel.superclass.initComponent.call(this);
this.add(new Deluge.details.StatusTab());
this.add(new Deluge.details.DetailsTab());
@ -25,8 +25,8 @@ Deluge.details.DetailsPanel = Ext.extend(Ext.TabPanel, {
this.add(new Deluge.details.OptionsTab());
},
clear: function() {
this.items.each(function(panel) {
clear: function () {
this.items.each(function (panel) {
if (panel.clear) {
panel.clear.defer(100, panel);
panel.disable();
@ -34,14 +34,14 @@ Deluge.details.DetailsPanel = Ext.extend(Ext.TabPanel, {
});
},
update: function(tab) {
update: function (tab) {
var torrent = deluge.torrents.getSelected();
if (!torrent) {
this.clear();
return;
}
this.items.each(function(tab) {
this.items.each(function (tab) {
if (tab.disabled) tab.enable();
});
@ -52,7 +52,7 @@ Deluge.details.DetailsPanel = Ext.extend(Ext.TabPanel, {
/* Event Handlers */
// We need to add the events in onRender since Deluge.Torrents has not been created yet.
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.details.DetailsPanel.superclass.onRender.call(
this,
ct,
@ -64,18 +64,18 @@ Deluge.details.DetailsPanel = Ext.extend(Ext.TabPanel, {
deluge.torrents.getSelectionModel().on(
'selectionchange',
function(selModel) {
function (selModel) {
if (!selModel.hasSelection()) this.clear();
},
this
);
},
onTabChange: function(panel, tab) {
onTabChange: function (panel, tab) {
this.update(tab);
},
onTorrentsClick: function(grid, rowIndex, e) {
onTorrentsClick: function (grid, rowIndex, e) {
this.update();
},
});

View File

@ -18,7 +18,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
oldData: {},
initComponent: function() {
initComponent: function () {
Deluge.details.DetailsTab.superclass.initComponent.call(this);
this.addItem('torrent_name', _('Name:'));
this.addItem('hash', _('Hash:'));
@ -31,7 +31,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
this.addItem('creator', _('Created By:'));
},
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.details.DetailsTab.superclass.onRender.call(this, ct, position);
this.body.setStyle('padding', '10px');
this.dl = Ext.DomHelper.append(this.body, { tag: 'dl' }, true);
@ -41,7 +41,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
}
},
addItem: function(id, label) {
addItem: function (id, label) {
if (!this.rendered) {
this.queuedItems[id] = label;
} else {
@ -50,7 +50,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
},
// private
doAddItem: function(id, label) {
doAddItem: function (id, label) {
Ext.DomHelper.append(this.dl, { tag: 'dt', cls: id, html: label });
this.fields[id] = Ext.DomHelper.append(
this.dl,
@ -59,7 +59,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
);
},
clear: function() {
clear: function () {
if (!this.fields) return;
for (var k in this.fields) {
this.fields[k].dom.innerHTML = '';
@ -67,7 +67,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
this.oldData = {};
},
update: function(torrentId) {
update: function (torrentId) {
deluge.client.web.get_torrent_status(torrentId, Deluge.Keys.Details, {
success: this.onRequestComplete,
scope: this,
@ -75,7 +75,7 @@ Deluge.details.DetailsTab = Ext.extend(Ext.Panel, {
});
},
onRequestComplete: function(torrent, request, response, options) {
onRequestComplete: function (torrent, request, response, options) {
var data = {
torrent_name: torrent.name,
hash: options.options.torrentId,

View File

@ -24,7 +24,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
width: 150,
dataIndex: 'size',
tpl: new Ext.XTemplate('{size:this.fsize}', {
fsize: function(v) {
fsize: function (v) {
return fsize(v);
},
}),
@ -34,7 +34,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
header: _('Progress'),
width: 150,
dataIndex: 'progress',
renderer: function(v) {
renderer: function (v) {
var progress = v * 100;
return Deluge.progressBar(
progress,
@ -54,11 +54,11 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
'{priority:this.getName}' +
'</div></tpl>',
{
getClass: function(v) {
getClass: function (v) {
return FILE_PRIORITY_CSS[v];
},
getName: function(v) {
getName: function (v) {
return _(FILE_PRIORITY[v]);
},
}
@ -68,15 +68,15 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
selModel: new Ext.tree.MultiSelectionModel(),
initComponent: function() {
initComponent: function () {
Deluge.details.FilesTab.superclass.initComponent.call(this);
this.setRootNode(new Ext.tree.TreeNode({ text: _('Files') }));
},
clear: function() {
clear: function () {
var root = this.getRootNode();
if (!root.hasChildNodes()) return;
root.cascade(function(node) {
root.cascade(function (node) {
var parentNode = node.parentNode;
if (!parentNode) return;
if (!parentNode.ownerTree) return;
@ -84,7 +84,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
});
},
createFileTree: function(files) {
createFileTree: function (files) {
function walk(files, parentNode) {
for (var file in files.contents) {
var item = files.contents[file];
@ -123,7 +123,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
root.firstChild.expand();
},
update: function(torrentId) {
update: function (torrentId) {
if (this.torrentId != torrentId) {
this.clear();
this.torrentId = torrentId;
@ -136,7 +136,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
});
},
updateFileTree: function(files) {
updateFileTree: function (files) {
function walk(files, parentNode) {
for (var file in files.contents) {
var item = files.contents[file];
@ -153,7 +153,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
walk(files, this.getRootNode());
},
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.details.FilesTab.superclass.onRender.call(this, ct, position);
deluge.menus.filePriorities.on('itemclick', this.onItemClick, this);
this.on('contextmenu', this.onContextMenu, this);
@ -162,7 +162,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
});
},
onContextMenu: function(node, e) {
onContextMenu: function (node, e) {
e.stopEvent();
var selModel = this.getSelectionModel();
if (selModel.getSelectedNodes().length < 2) {
@ -172,14 +172,14 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
deluge.menus.filePriorities.showAt(e.getPoint());
},
onItemClick: function(baseItem, e) {
onItemClick: function (baseItem, e) {
switch (baseItem.id) {
case 'expandAll':
this.expandAll();
break;
default:
var indexes = {};
var walk = function(node) {
var walk = function (node) {
if (Ext.isEmpty(node.attributes.fileIndex)) return;
indexes[node.attributes.fileIndex] =
node.attributes.priority;
@ -187,9 +187,9 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
this.getRootNode().cascade(walk);
var nodes = this.getSelectionModel().getSelectedNodes();
Ext.each(nodes, function(node) {
Ext.each(nodes, function (node) {
if (!node.isLeaf()) {
var setPriorities = function(node) {
var setPriorities = function (node) {
if (Ext.isEmpty(node.attributes.fileIndex)) return;
indexes[node.attributes.fileIndex] =
baseItem.filePriority;
@ -211,8 +211,8 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
[this.torrentId],
{ file_priorities: priorities },
{
success: function() {
Ext.each(nodes, function(node) {
success: function () {
Ext.each(nodes, function (node) {
node.setColumnValue(3, baseItem.filePriority);
});
},
@ -223,7 +223,7 @@ Deluge.details.FilesTab = Ext.extend(Ext.ux.tree.TreeGrid, {
}
},
onRequestComplete: function(files, options) {
onRequestComplete: function (files, options) {
if (!this.getRootNode().hasChildNodes()) {
this.createFileTree(files);
} else {

View File

@ -9,7 +9,7 @@
*/
Deluge.details.OptionsTab = Ext.extend(Ext.form.FormPanel, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
autoScroll: true,
@ -30,7 +30,7 @@ Deluge.details.OptionsTab = Ext.extend(Ext.form.FormPanel, {
Deluge.details.OptionsTab.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.details.OptionsTab.superclass.initComponent.call(this);
(this.fieldsets = {}), (this.fields = {});
@ -339,7 +339,7 @@ Deluge.details.OptionsTab = Ext.extend(Ext.form.FormPanel, {
});
},
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.details.OptionsTab.superclass.onRender.call(this, ct, position);
// This is another hack I think, so keep an eye out here when upgrading.
@ -348,17 +348,17 @@ Deluge.details.OptionsTab = Ext.extend(Ext.form.FormPanel, {
this.doLayout();
},
clear: function() {
clear: function () {
if (this.torrentId == null) return;
this.torrentId = null;
this.optionsManager.changeId(null);
},
reset: function() {
reset: function () {
if (this.torrentId) this.optionsManager.reset();
},
update: function(torrentId) {
update: function (torrentId) {
if (this.torrentId && !torrentId) this.clear(); // we want to clear the pane if we get a null torrent torrentIds
if (!torrentId) return; // We do not care about null torrentIds.
@ -373,33 +373,33 @@ Deluge.details.OptionsTab = Ext.extend(Ext.form.FormPanel, {
});
},
onApply: function() {
onApply: function () {
var changed = this.optionsManager.getDirty();
deluge.client.core.set_torrent_options([this.torrentId], changed, {
success: function() {
success: function () {
this.optionsManager.commit();
},
scope: this,
});
},
onEditTrackers: function() {
onEditTrackers: function () {
deluge.editTrackers.show();
},
onMoveCompletedChecked: function(checkbox, checked) {
onMoveCompletedChecked: function (checkbox, checked) {
this.fields.move_completed_path.setDisabled(!checked);
if (!checked) return;
this.fields.move_completed_path.focus();
},
onStopRatioChecked: function(checkbox, checked) {
onStopRatioChecked: function (checkbox, checked) {
this.fields.remove_at_ratio.setDisabled(!checked);
this.fields.stop_ratio.setDisabled(!checked);
},
onRequestComplete: function(torrent, options) {
onRequestComplete: function (torrent, options) {
this.fields['private'].setValue(torrent['private']);
this.fields['private'].setDisabled(true);
delete torrent['private'];

View File

@ -8,7 +8,7 @@
* See LICENSE for more details.
*/
(function() {
(function () {
function flagRenderer(value) {
if (!value.replace(' ', '').replace(' ', '')) {
return '';
@ -40,7 +40,7 @@
// fast way to figure out if we have a peer already.
peers: {},
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
title: _('Peers'),
@ -107,19 +107,19 @@
Deluge.details.PeersTab.superclass.constructor.call(this, config);
},
clear: function() {
clear: function () {
this.getStore().removeAll();
this.peers = {};
},
update: function(torrentId) {
update: function (torrentId) {
deluge.client.web.get_torrent_status(torrentId, Deluge.Keys.Peers, {
success: this.onRequestComplete,
scope: this,
});
},
onRequestComplete: function(torrent, options) {
onRequestComplete: function (torrent, options) {
if (!torrent) return;
var store = this.getStore();
@ -129,7 +129,7 @@
// Go through the peers updating and creating peer records
Ext.each(
torrent.peers,
function(peer) {
function (peer) {
if (this.peers[peer.ip]) {
var record = store.getById(peer.ip);
record.beginEdit();
@ -150,7 +150,7 @@
store.add(newPeers);
// Remove any peers that should not be left in the store.
store.each(function(record) {
store.each(function (record) {
if (!addresses[record.id]) {
store.remove(record);
delete this.peers[record.id];

View File

@ -17,7 +17,7 @@ Deluge.details.StatusTab = Ext.extend(Ext.Panel, {
title: _('Status'),
autoScroll: true,
onRender: function(ct, position) {
onRender: function (ct, position) {
Deluge.details.StatusTab.superclass.onRender.call(this, ct, position);
this.progressBar = this.add({
@ -33,7 +33,7 @@ Deluge.details.StatusTab = Ext.extend(Ext.Panel, {
width: 1000,
listeners: {
render: {
fn: function(panel) {
fn: function (panel) {
panel.load({
url: deluge.config.base + 'render/tab_status.html',
text: _('Loading') + '...',
@ -48,14 +48,14 @@ Deluge.details.StatusTab = Ext.extend(Ext.Panel, {
});
},
clear: function() {
clear: function () {
this.progressBar.updateProgress(0, ' ');
for (var k in this.fields) {
this.fields[k].innerHTML = '';
}
},
update: function(torrentId) {
update: function (torrentId) {
if (!this.fields) this.getFields();
deluge.client.web.get_torrent_status(torrentId, Deluge.Keys.Status, {
success: this.onRequestComplete,
@ -63,18 +63,18 @@ Deluge.details.StatusTab = Ext.extend(Ext.Panel, {
});
},
onPanelUpdate: function(el, response) {
onPanelUpdate: function (el, response) {
this.fields = {};
Ext.each(
Ext.query('dd', this.status.body.dom),
function(field) {
function (field) {
this.fields[field.className] = field;
},
this
);
},
onRequestComplete: function(status) {
onRequestComplete: function (status) {
seeds =
status.total_seeds > -1
? status.num_seeds + ' (' + status.total_seeds + ')'

View File

@ -14,7 +14,7 @@ Ext.namespace('Deluge.preferences');
* @extends Ext.form.FormPanel
*/
Deluge.preferences.Bandwidth = Ext.extend(Ext.form.FormPanel, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
border: false,
@ -28,7 +28,7 @@ Deluge.preferences.Bandwidth = Ext.extend(Ext.form.FormPanel, {
Deluge.preferences.Bandwidth.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.preferences.Bandwidth.superclass.initComponent.call(this);
var om = deluge.preferences.getOptionsManager();

View File

@ -19,7 +19,7 @@ Deluge.preferences.Cache = Ext.extend(Ext.form.FormPanel, {
header: false,
layout: 'form',
initComponent: function() {
initComponent: function () {
Deluge.preferences.Cache.superclass.initComponent.call(this);
var om = deluge.preferences.getOptionsManager();

View File

@ -19,7 +19,7 @@ Deluge.preferences.Daemon = Ext.extend(Ext.form.FormPanel, {
header: false,
layout: 'form',
initComponent: function() {
initComponent: function () {
Deluge.preferences.Daemon.superclass.initComponent.call(this);
var om = deluge.preferences.getOptionsManager();

View File

@ -14,7 +14,7 @@ Ext.namespace('Deluge.preferences');
* @extends Ext.form.FormPanel
*/
Deluge.preferences.Downloads = Ext.extend(Ext.FormPanel, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
border: false,
@ -29,7 +29,7 @@ Deluge.preferences.Downloads = Ext.extend(Ext.FormPanel, {
Deluge.preferences.Downloads.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.preferences.Downloads.superclass.initComponent.call(this);
var optMan = deluge.preferences.getOptionsManager();

View File

@ -18,7 +18,7 @@ Deluge.preferences.Encryption = Ext.extend(Ext.form.FormPanel, {
title: _('Encryption'),
header: false,
initComponent: function() {
initComponent: function () {
Deluge.preferences.Encryption.superclass.initComponent.call(this);
var optMan = deluge.preferences.getOptionsManager();

View File

@ -26,7 +26,7 @@ Deluge.preferences.InstallPluginWindow = Ext.extend(Ext.Window, {
modal: true,
plain: true,
initComponent: function() {
initComponent: function () {
Deluge.preferences.InstallPluginWindow.superclass.initComponent.call(
this
);
@ -53,7 +53,7 @@ Deluge.preferences.InstallPluginWindow = Ext.extend(Ext.Window, {
});
},
onInstall: function(field, e) {
onInstall: function (field, e) {
this.form.getForm().submit({
url: deluge.config.base + 'upload',
waitMsg: _('Uploading your plugin...'),
@ -62,11 +62,11 @@ Deluge.preferences.InstallPluginWindow = Ext.extend(Ext.Window, {
});
},
onUploadPlugin: function(info, obj, response, request) {
onUploadPlugin: function (info, obj, response, request) {
this.fireEvent('pluginadded');
},
onUploadSuccess: function(fp, upload) {
onUploadSuccess: function (fp, upload) {
this.hide();
if (upload.result.success) {
var filename = this.form.getForm().getFieldValues().file;

View File

@ -19,7 +19,7 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
header: false,
layout: 'form',
initComponent: function() {
initComponent: function () {
Deluge.preferences.Interface.superclass.initComponent.call(this);
var om = (this.optionsManager = new Deluge.OptionsManager());
@ -189,7 +189,7 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
);
},
onApply: function() {
onApply: function () {
var changed = this.optionsManager.getDirty();
if (!Ext.isObjectEmpty(changed)) {
deluge.client.web.set_config(changed, {
@ -211,7 +211,7 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
no: _('Close'),
},
multiline: false,
fn: function(btnText) {
fn: function (btnText) {
if (btnText === 'yes') location.reload();
},
icon: Ext.MessageBox.QUESTION,
@ -223,21 +223,21 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
}
},
onOk: function() {
onOk: function () {
this.onApply();
},
onGotConfig: function(config) {
onGotConfig: function (config) {
this.optionsManager.set(config);
},
onGotLanguages: function(info, obj, response, request) {
onGotLanguages: function (info, obj, response, request) {
info.unshift(['', _('System Default')]);
this.language.store.loadData(info);
this.language.setValue(this.optionsManager.get('language'));
},
onPasswordChange: function() {
onPasswordChange: function () {
var newPassword = this.newPassword.getValue();
if (newPassword != this.confirmPassword.getValue()) {
Ext.MessageBox.show({
@ -253,7 +253,7 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
var oldPassword = this.oldPassword.getValue();
deluge.client.auth.change_password(oldPassword, newPassword, {
success: function(result) {
success: function (result) {
if (!result) {
Ext.MessageBox.show({
title: _('Password'),
@ -282,11 +282,11 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
});
},
onSetConfig: function() {
onSetConfig: function () {
this.optionsManager.commit();
},
onPageShow: function() {
onPageShow: function () {
deluge.client.web.get_config({
success: this.onGotConfig,
scope: this,
@ -297,7 +297,7 @@ Deluge.preferences.Interface = Ext.extend(Ext.form.FormPanel, {
});
},
onSSLCheck: function(e, checked) {
onSSLCheck: function (e, checked) {
this.pkeyField.setDisabled(!checked);
this.certField.setDisabled(!checked);
},

View File

@ -11,7 +11,7 @@ Ext.namespace('Deluge.preferences');
// custom Vtype for vtype:'IPAddress'
Ext.apply(Ext.form.VTypes, {
IPAddress: function(v) {
IPAddress: function (v) {
return /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/.test(v);
},
IPAddressText: 'Must be a numeric IP address',
@ -28,7 +28,7 @@ Deluge.preferences.Network = Ext.extend(Ext.form.FormPanel, {
title: _('Network'),
header: false,
initComponent: function() {
initComponent: function () {
Deluge.preferences.Network.superclass.initComponent.call(this);
var optMan = deluge.preferences.getOptionsManager();
@ -71,7 +71,7 @@ Deluge.preferences.Network = Ext.extend(Ext.form.FormPanel, {
height: 22,
listeners: {
check: {
fn: function(e, checked) {
fn: function (e, checked) {
this.listenPort.setDisabled(checked);
},
scope: this,
@ -133,7 +133,7 @@ Deluge.preferences.Network = Ext.extend(Ext.form.FormPanel, {
height: 22,
listeners: {
check: {
fn: function(e, checked) {
fn: function (e, checked) {
this.outgoingPorts.setDisabled(checked);
},
scope: this,

View File

@ -14,7 +14,7 @@ Ext.namespace('Deluge.preferences');
* @extends Ext.form.FormPanel
*/
Deluge.preferences.Other = Ext.extend(Ext.form.FormPanel, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
border: false,
@ -27,7 +27,7 @@ Deluge.preferences.Other = Ext.extend(Ext.form.FormPanel, {
Deluge.preferences.Other.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.preferences.Other.superclass.initComponent.call(this);
var optMan = deluge.preferences.getOptionsManager();

View File

@ -40,7 +40,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
'</dl>'
),
initComponent: function() {
initComponent: function () {
Deluge.preferences.Plugins.superclass.initComponent.call(this);
this.defaultValues = {
version: '',
@ -50,7 +50,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
};
this.pluginTemplate.compile();
var checkboxRenderer = function(v, p, record) {
var checkboxRenderer = function (v, p, record) {
p.css += ' x-grid3-check-col-td';
return (
'<div class="x-grid3-check-col' + (v ? '-on' : '') + '"> </div>'
@ -72,7 +72,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
width: 0.2,
sortable: true,
tpl: new Ext.XTemplate('{enabled:this.getCheckbox}', {
getCheckbox: function(v) {
getCheckbox: function (v) {
return (
'<div class="x-grid3-check-col' +
(v ? '-on' : '') +
@ -141,23 +141,23 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
deluge.events.on('PluginEnabledEvent', this.onPluginEnabled, this);
},
disablePlugin: function(plugin) {
disablePlugin: function (plugin) {
deluge.client.core.disable_plugin(plugin);
},
enablePlugin: function(plugin) {
enablePlugin: function (plugin) {
deluge.client.core.enable_plugin(plugin);
},
setInfo: function(plugin) {
setInfo: function (plugin) {
if (!this.pluginInfo.rendered) return;
var values = plugin || this.defaultValues;
this.pluginInfo.body.dom.innerHTML = this.pluginTemplate.apply(values);
},
updatePlugins: function() {
var onGotAvailablePlugins = function(plugins) {
this.availablePlugins = plugins.sort(function(a, b) {
updatePlugins: function () {
var onGotAvailablePlugins = function (plugins) {
this.availablePlugins = plugins.sort(function (a, b) {
return a.toLowerCase().localeCompare(b.toLowerCase());
});
@ -167,7 +167,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
});
};
var onGotEnabledPlugins = function(plugins) {
var onGotEnabledPlugins = function (plugins) {
this.enabledPlugins = plugins;
this.onGotPlugins();
};
@ -178,11 +178,11 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
});
},
updatePluginsGrid: function() {
updatePluginsGrid: function () {
var plugins = [];
Ext.each(
this.availablePlugins,
function(plugin) {
function (plugin) {
if (this.enabledPlugins.indexOf(plugin) > -1) {
plugins.push([true, plugin]);
} else {
@ -194,7 +194,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
this.list.getStore().loadData(plugins);
},
onNodeClick: function(dv, index, node, e) {
onNodeClick: function (dv, index, node, e) {
var el = new Ext.Element(e.target);
if (el.getAttribute('rel') != 'chkbox') return;
@ -209,16 +209,16 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
}
},
onFindMorePlugins: function() {
onFindMorePlugins: function () {
window.open('http://dev.deluge-torrent.org/wiki/Plugins');
},
onGotPlugins: function() {
onGotPlugins: function () {
this.setInfo();
this.updatePluginsGrid();
},
onGotPluginInfo: function(info) {
onGotPluginInfo: function (info) {
var values = {
author: info['Author'],
version: info['Version'],
@ -230,7 +230,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
delete info;
},
onInstallPluginWindow: function() {
onInstallPluginWindow: function () {
if (!this.installWindow) {
this.installWindow = new Deluge.preferences.InstallPluginWindow();
this.installWindow.on('pluginadded', this.onPluginInstall, this);
@ -238,7 +238,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
this.installWindow.show();
},
onPluginEnabled: function(pluginName) {
onPluginEnabled: function (pluginName) {
var index = this.list.getStore().find('plugin', pluginName);
if (index == -1) return;
var plugin = this.list.getStore().getAt(index);
@ -246,7 +246,7 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
plugin.commit();
},
onPluginDisabled: function(pluginName) {
onPluginDisabled: function (pluginName) {
var index = this.list.getStore().find('plugin', pluginName);
if (index == -1) return;
var plugin = this.list.getStore().getAt(index);
@ -254,11 +254,11 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
plugin.commit();
},
onPluginInstall: function() {
onPluginInstall: function () {
this.updatePlugins();
},
onPluginSelect: function(dv, selections) {
onPluginSelect: function (dv, selections) {
if (selections.length == 0) return;
var r = dv.getRecords(selections)[0];
deluge.client.web.get_plugin_info(r.get('plugin'), {
@ -267,11 +267,11 @@ Deluge.preferences.Plugins = Ext.extend(Ext.Panel, {
});
},
onPreferencesShow: function() {
onPreferencesShow: function () {
this.updatePlugins();
},
onPluginInfoRender: function(ct, position) {
onPluginInfoRender: function (ct, position) {
this.setInfo();
},
});

View File

@ -36,7 +36,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
pages: {},
initComponent: function() {
initComponent: function () {
Deluge.preferences.PreferencesWindow.superclass.initComponent.call(
this
);
@ -94,7 +94,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
this.initPages();
},
initPages: function() {
initPages: function () {
deluge.preferences = this;
this.addPage(new Deluge.preferences.Downloads());
this.addPage(new Deluge.preferences.Network());
@ -109,7 +109,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
this.addPage(new Deluge.preferences.Plugins());
},
onApply: function(e) {
onApply: function (e) {
var changed = this.optionsManager.getDirty();
if (!Ext.isObjectEmpty(changed)) {
// Workaround for only displaying single listen port but still pass array to core.
@ -134,7 +134,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
* Return the options manager for the preferences window.
* @returns {Deluge.OptionsManager} the options manager
*/
getOptionsManager: function() {
getOptionsManager: function () {
return this.optionsManager;
},
@ -142,7 +142,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
* Adds a page to the preferences window.
* @param {Mixed} page
*/
addPage: function(page) {
addPage: function (page) {
var store = this.list.getStore();
var name = page.title;
store.add([new PreferencesRecord({ name: name })]);
@ -157,7 +157,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
* Removes a preferences page from the window.
* @param {mixed} name
*/
removePage: function(page) {
removePage: function (page) {
var name = page.title;
var store = this.list.getStore();
store.removeAt(store.find('name', name));
@ -169,7 +169,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
* Select which preferences page is displayed.
* @param {String} page The page name to change to
*/
selectPage: function(page) {
selectPage: function (page) {
if (this.pages[page].index < 0) {
this.pages[page].index = this.configPanel.items.indexOf(
this.pages[page]
@ -179,7 +179,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
},
// private
doSelectPage: function(page) {
doSelectPage: function (page) {
if (this.pages[page].index < 0) {
this.pages[page].index = this.configPanel.items.indexOf(
this.pages[page]
@ -190,23 +190,23 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
},
// private
onGotConfig: function(config) {
onGotConfig: function (config) {
this.getOptionsManager().set(config);
},
// private
onPageSelect: function(list, selections) {
onPageSelect: function (list, selections) {
var r = list.getRecord(selections[0]);
this.doSelectPage(r.get('name'));
},
// private
onSetConfig: function() {
onSetConfig: function () {
this.getOptionsManager().commit();
},
// private
onAfterRender: function() {
onAfterRender: function () {
if (!this.list.getSelectionCount()) {
this.list.select(0);
}
@ -214,7 +214,7 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
},
// private
onShow: function() {
onShow: function () {
if (!deluge.client.core) return;
deluge.client.core.get_config({
success: this.onGotConfig,
@ -223,12 +223,12 @@ Deluge.preferences.PreferencesWindow = Ext.extend(Ext.Window, {
},
// private
onClose: function() {
onClose: function () {
this.hide();
},
// private
onOk: function() {
onOk: function () {
var changed = this.optionsManager.getDirty();
if (!Ext.isObjectEmpty(changed)) {
deluge.client.core.set_config(changed, {

View File

@ -18,7 +18,7 @@ Deluge.preferences.ProxyField = Ext.extend(Ext.form.FieldSet, {
autoHeight: true,
labelWidth: 70,
initComponent: function() {
initComponent: function () {
Deluge.preferences.ProxyField.superclass.initComponent.call(this);
this.proxyType = this.add({
xtype: 'combo',
@ -145,11 +145,11 @@ Deluge.preferences.ProxyField = Ext.extend(Ext.form.FieldSet, {
this.setting = false;
},
getName: function() {
getName: function () {
return this.initialConfig.name;
},
getValue: function() {
getValue: function () {
return {
type: this.proxyType.getValue(),
hostname: this.hostname.getValue(),
@ -165,7 +165,7 @@ Deluge.preferences.ProxyField = Ext.extend(Ext.form.FieldSet, {
},
// Set the values of the proxies
setValue: function(value) {
setValue: function (value) {
this.setting = true;
this.proxyType.setValue(value['type']);
var index = this.proxyType.getStore().find('id', value['type']);
@ -185,7 +185,7 @@ Deluge.preferences.ProxyField = Ext.extend(Ext.form.FieldSet, {
this.setting = false;
},
onFieldChange: function(field, newValue, oldValue) {
onFieldChange: function (field, newValue, oldValue) {
if (this.setting) return;
var newValues = this.getValue();
var oldValues = Ext.apply({}, newValues);
@ -194,7 +194,7 @@ Deluge.preferences.ProxyField = Ext.extend(Ext.form.FieldSet, {
this.fireEvent('change', this, newValues, oldValues);
},
onTypeSelect: function(combo, record, index) {
onTypeSelect: function (combo, record, index) {
var typeId = record.get('id');
if (typeId > 0) {
this.hostname.show();

View File

@ -14,7 +14,7 @@ Ext.namespace('Deluge.preferences');
* @extends Ext.form.FormPanel
*/
Deluge.preferences.Proxy = Ext.extend(Ext.form.FormPanel, {
constructor: function(config) {
constructor: function (config) {
config = Ext.apply(
{
border: false,
@ -28,7 +28,7 @@ Deluge.preferences.Proxy = Ext.extend(Ext.form.FormPanel, {
Deluge.preferences.Proxy.superclass.constructor.call(this, config);
},
initComponent: function() {
initComponent: function () {
Deluge.preferences.Proxy.superclass.initComponent.call(this);
this.proxy = this.add(
new Deluge.preferences.ProxyField({
@ -40,19 +40,19 @@ Deluge.preferences.Proxy = Ext.extend(Ext.form.FormPanel, {
deluge.preferences.getOptionsManager().bind('proxy', this.proxy);
},
getValue: function() {
getValue: function () {
return {
proxy: this.proxy.getValue(),
};
},
setValue: function(value) {
setValue: function (value) {
for (var proxy in value) {
this[proxy].setValue(value[proxy]);
}
},
onProxyChange: function(field, newValue, oldValue) {
onProxyChange: function (field, newValue, oldValue) {
var newValues = this.getValue();
var oldValues = Ext.apply({}, newValues);
oldValues[field.getName()] = oldValue;

View File

@ -19,7 +19,7 @@ Deluge.preferences.Queue = Ext.extend(Ext.form.FormPanel, {
header: false,
layout: 'form',
initComponent: function() {
initComponent: function () {
Deluge.preferences.Queue.superclass.initComponent.call(this);
var om = deluge.preferences.getOptionsManager();
@ -227,7 +227,7 @@ Deluge.preferences.Queue = Ext.extend(Ext.form.FormPanel, {
om.bind('remove_seed_at_ratio', this.removeAtRatio);
},
onStopRatioCheck: function(e, checked) {
onStopRatioCheck: function (e, checked) {
this.stopRatio.setDisabled(!checked);
this.removeAtRatio.setDisabled(!checked);
},

View File

@ -1,4 +1,4 @@
Ext.ux.JSLoader = function(options) {
Ext.ux.JSLoader = function (options) {
Ext.ux.JSLoader.scripts[++Ext.ux.JSLoader.index] = {
url: options.url,
success: true,
@ -12,7 +12,7 @@ Ext.ux.JSLoader = function(options) {
Ext.Ajax.request({
url: options.url,
scriptIndex: Ext.ux.JSLoader.index,
success: function(response, options) {
success: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
try {
eval(response.responseText);
@ -24,7 +24,7 @@ Ext.ux.JSLoader = function(options) {
script.onLoad.call(script.scope, script.options);
}
},
failure: function(response, options) {
failure: function (response, options) {
var script = Ext.ux.JSLoader.scripts[options.scriptIndex];
script.success = false;
script.onError(script.options, response.status);
@ -33,7 +33,7 @@ Ext.ux.JSLoader = function(options) {
};
Ext.ux.JSLoader.index = 0;
Ext.ux.JSLoader.scripts = [];
Ext.ux.JSLoader.stdError = function(options, e) {
Ext.ux.JSLoader.stdError = function (options, e) {
window.alert(
'Error loading script:\n\n' + options.url + '\n\nstatus: ' + e
);

View File

@ -18,13 +18,13 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
defaultValue: 0,
accelerate: false,
constructor: function(config) {
constructor: function (config) {
Ext.ux.Spinner.superclass.constructor.call(this, config);
Ext.apply(this, config);
this.mimicing = false;
},
init: function(field) {
init: function (field) {
this.field = field;
field.afterMethod('onRender', this.doRender, this);
@ -36,7 +36,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
field.beforeMethod('onDestroy', this.doDestroy, this);
},
doRender: function(ct, position) {
doRender: function (ct, position) {
var el = (this.el = this.field.getEl());
var f = this.field;
@ -81,7 +81,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.initSpinner();
},
doAfterRender: function() {
doAfterRender: function () {
var y;
if (Ext.isIE && this.el.getY() != (y = this.trigger.getY())) {
this.el.position();
@ -89,14 +89,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
doEnable: function() {
doEnable: function () {
if (this.wrap) {
this.disabled = false;
this.wrap.removeClass(this.field.disabledClass);
}
},
doDisable: function() {
doDisable: function () {
if (this.wrap) {
this.disabled = true;
this.wrap.addClass(this.field.disabledClass);
@ -104,14 +104,14 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
}
},
doResize: function(w, h) {
doResize: function (w, h) {
if (typeof w == 'number') {
this.el.setWidth(w - this.trigger.getWidth());
}
this.wrap.setWidth(this.el.getWidth() + this.trigger.getWidth());
},
doFocus: function() {
doFocus: function () {
if (!this.mimicing) {
this.wrap.addClass('x-trigger-wrap-focus');
this.mimicing = true;
@ -128,21 +128,21 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
checkTab: function(e) {
checkTab: function (e) {
if (e.getKey() == e.TAB) {
this.triggerBlur();
}
},
// private
mimicBlur: function(e) {
mimicBlur: function (e) {
if (!this.wrap.contains(e.target) && this.field.validateBlur(e)) {
this.triggerBlur();
}
},
// private
triggerBlur: function() {
triggerBlur: function () {
this.mimicing = false;
Ext.get(Ext.isIE ? document.body : document).un(
'mousedown',
@ -155,12 +155,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.onBlur.call(this.field);
},
initTrigger: function() {
initTrigger: function () {
this.trigger.addClassOnOver('x-form-trigger-over');
this.trigger.addClassOnClick('x-form-trigger-click');
},
initSpinner: function() {
initSpinner: function () {
this.field.addEvents({
spin: true,
spinup: true,
@ -168,22 +168,22 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
});
this.keyNav = new Ext.KeyNav(this.el, {
up: function(e) {
up: function (e) {
e.preventDefault();
this.onSpinUp();
},
down: function(e) {
down: function (e) {
e.preventDefault();
this.onSpinDown();
},
pageUp: function(e) {
pageUp: function (e) {
e.preventDefault();
this.onSpinUpAlternate();
},
pageDown: function(e) {
pageDown: function (e) {
e.preventDefault();
this.onSpinDownAlternate();
},
@ -217,7 +217,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.dd.onDrag = this.onDrag.createDelegate(this);
},
onMouseOver: function() {
onMouseOver: function () {
if (this.disabled) {
return;
}
@ -230,12 +230,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onMouseOut: function() {
onMouseOut: function () {
this.trigger.removeClass(this.tmpHoverClass);
},
//private
onMouseMove: function() {
onMouseMove: function () {
if (this.disabled) {
return;
}
@ -250,7 +250,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onMouseDown: function() {
onMouseDown: function () {
if (this.disabled) {
return;
}
@ -263,12 +263,12 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onMouseUp: function() {
onMouseUp: function () {
this.trigger.removeClass(this.tmpClickClass);
},
//private
onTriggerClick: function() {
onTriggerClick: function () {
if (this.disabled || this.el.dom.readOnly) {
return;
}
@ -278,7 +278,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
getMiddle: function() {
getMiddle: function () {
var t = this.trigger.getTop();
var h = this.trigger.getHeight();
var middle = t + h / 2;
@ -287,7 +287,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
//private
//checks if control is allowed to spin
isSpinnable: function() {
isSpinnable: function () {
if (this.disabled || this.el.dom.readOnly) {
Ext.EventObject.preventDefault(); //prevent scrolling when disabled/readonly
return false;
@ -295,7 +295,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
return true;
},
handleMouseWheel: function(e) {
handleMouseWheel: function (e) {
//disable scrolling when not focused
if (this.wrap.hasClass('x-trigger-wrap-focus') == false) {
return;
@ -312,18 +312,18 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
startDrag: function() {
startDrag: function () {
this.proxy.show();
this._previousY = Ext.fly(this.dd.getDragEl()).getTop();
},
//private
endDrag: function() {
endDrag: function () {
this.proxy.hide();
},
//private
onDrag: function() {
onDrag: function () {
if (this.disabled) {
return;
}
@ -344,7 +344,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onSpinUp: function() {
onSpinUp: function () {
if (this.isSpinnable() == false) {
return;
}
@ -359,7 +359,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onSpinDown: function() {
onSpinDown: function () {
if (this.isSpinnable() == false) {
return;
}
@ -374,7 +374,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onSpinUpAlternate: function() {
onSpinUpAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@ -384,7 +384,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
//private
onSpinDownAlternate: function() {
onSpinDownAlternate: function () {
if (this.isSpinnable() == false) {
return;
}
@ -393,7 +393,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.fireEvent('spindown', this);
},
spin: function(down, alternate) {
spin: function (down, alternate) {
var v = parseFloat(this.field.getValue());
var incr =
alternate == true
@ -406,7 +406,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
this.field.setRawValue(v);
},
fixBoundries: function(value) {
fixBoundries: function (value) {
var v = value;
if (this.field.minValue != undefined && v < this.field.minValue) {
@ -420,7 +420,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
},
// private
fixPrecision: function(value) {
fixPrecision: function (value) {
var nan = isNaN(value);
if (
!this.field.allowDecimals ||
@ -435,7 +435,7 @@ Ext.ux.Spinner = Ext.extend(Ext.util.Observable, {
);
},
doDestroy: function() {
doDestroy: function () {
if (this.trigger) {
this.trigger.remove();
}

View File

@ -183,7 +183,7 @@ sb.setStatus({
activeThreadId: 0,
// private
initComponent: function() {
initComponent: function () {
if (this.statusAlign == 'right') {
this.cls += ' x-status-right';
}
@ -191,7 +191,7 @@ sb.setStatus({
},
// private
afterRender: function() {
afterRender: function () {
Ext.ux.StatusBar.superclass.afterRender.call(this);
var right = this.statusAlign == 'right';
@ -260,7 +260,7 @@ statusBar.setStatus({
</code></pre>
* @return {Ext.ux.StatusBar} this
*/
setStatus: function(o) {
setStatus: function (o) {
o = o || {};
if (typeof o == 'string') {
@ -307,7 +307,7 @@ statusBar.setStatus({
* </ul>
* @return {Ext.ux.StatusBar} this
*/
clearStatus: function(o) {
clearStatus: function (o) {
o = o || {};
if (o.threadId && o.threadId !== this.activeThreadId) {
@ -330,7 +330,7 @@ statusBar.setStatus({
remove: false,
useDisplay: true,
scope: this,
callback: function() {
callback: function () {
this.setStatus({
text: text,
iconCls: iconCls,
@ -356,7 +356,7 @@ statusBar.setStatus({
* @param {String} text (optional) The text to set (defaults to '')
* @return {Ext.ux.StatusBar} this
*/
setText: function(text) {
setText: function (text) {
this.activeThreadId++;
this.text = text || '';
if (this.rendered) {
@ -369,7 +369,7 @@ statusBar.setStatus({
* Returns the current status text.
* @return {String} The status text
*/
getText: function() {
getText: function () {
return this.text;
},
@ -379,7 +379,7 @@ statusBar.setStatus({
* @param {String} iconCls (optional) The icon class to set (defaults to '', and any current icon class is removed)
* @return {Ext.ux.StatusBar} this
*/
setIcon: function(cls) {
setIcon: function (cls) {
this.activeThreadId++;
cls = cls || '';
@ -408,7 +408,7 @@ statusBar.setStatus({
* {@link #busyIconCls} will be used in conjunction with all of the default options for {@link #setStatus}.
* @return {Ext.ux.StatusBar} this
*/
showBusy: function(o) {
showBusy: function (o) {
if (typeof o == 'string') {
o = { text: o };
}

View File

@ -50,7 +50,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
autoSize: Ext.emptyFn,
// private
initComponent: function() {
initComponent: function () {
Ext.ux.form.FileUploadField.superclass.initComponent.call(this);
this.addEvents(
@ -66,7 +66,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
onRender: function(ct, position) {
onRender: function (ct, position) {
Ext.ux.form.FileUploadField.superclass.onRender.call(
this,
ct,
@ -97,30 +97,30 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.resizeEl = this.positionEl = this.wrap;
},
bindListeners: function() {
bindListeners: function () {
this.fileInput.on({
scope: this,
mouseenter: function() {
mouseenter: function () {
this.button.addClass(['x-btn-over', 'x-btn-focus']);
},
mouseleave: function() {
mouseleave: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
mousedown: function() {
mousedown: function () {
this.button.addClass('x-btn-click');
},
mouseup: function() {
mouseup: function () {
this.button.removeClass([
'x-btn-over',
'x-btn-focus',
'x-btn-click',
]);
},
change: function() {
change: function () {
var value = this.fileInput.dom.files;
// Fallback to value.
if (!value) value = this.fileInput.dom.value;
@ -130,7 +130,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
});
},
createFileInput: function() {
createFileInput: function () {
this.fileInput = this.wrap.createChild({
id: this.getFileInputId(),
name: this.name || this.getId(),
@ -142,7 +142,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
this.fileInput.dom.multiple = this.multiple;
},
reset: function() {
reset: function () {
if (this.rendered) {
this.fileInput.remove();
this.createFileInput();
@ -152,12 +152,12 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
getFileInputId: function() {
getFileInputId: function () {
return this.id + '-file';
},
// private
onResize: function(w, h) {
onResize: function (w, h) {
Ext.ux.form.FileUploadField.superclass.onResize.call(this, w, h);
this.wrap.setWidth(w);
@ -172,23 +172,23 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
},
// private
onDestroy: function() {
onDestroy: function () {
Ext.ux.form.FileUploadField.superclass.onDestroy.call(this);
Ext.destroy(this.fileInput, this.button, this.wrap);
},
onDisable: function() {
onDisable: function () {
Ext.ux.form.FileUploadField.superclass.onDisable.call(this);
this.doDisable(true);
},
onEnable: function() {
onEnable: function () {
Ext.ux.form.FileUploadField.superclass.onEnable.call(this);
this.doDisable(false);
},
// private
doDisable: function(disabled) {
doDisable: function (disabled) {
this.fileInput.dom.disabled = disabled;
this.button.setDisabled(disabled);
},
@ -197,7 +197,7 @@ Ext.ux.form.FileUploadField = Ext.extend(Ext.form.TextField, {
preFocus: Ext.emptyFn,
// private
alignErrorIcon: function() {
alignErrorIcon: function () {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
},
});

View File

@ -10,8 +10,8 @@
// Allow radiogroups to be treated as a single form element.
Ext.override(Ext.form.RadioGroup, {
afterRender: function() {
this.items.each(function(i) {
afterRender: function () {
this.items.each(function (i) {
this.relayEvents(i, ['check']);
}, this);
if (this.lazyValue) {
@ -22,21 +22,21 @@ Ext.override(Ext.form.RadioGroup, {
Ext.form.RadioGroup.superclass.afterRender.call(this);
},
getName: function() {
getName: function () {
return this.items.first().getName();
},
getValue: function() {
getValue: function () {
return this.items.first().getGroupValue();
},
setValue: function(v) {
setValue: function (v) {
if (!this.items.each) {
this.value = v;
this.lazyValue = true;
return;
}
this.items.each(function(item) {
this.items.each(function (item) {
if (item.rendered) {
var checked = item.el.getValue() == String(v);
item.el.dom.checked = checked;

View File

@ -19,7 +19,7 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
onBlur: Ext.emptyFn,
adjustSize: Ext.BoxComponent.prototype.adjustSize,
constructor: function(config) {
constructor: function (config) {
var spinnerConfig = Ext.copyTo(
{},
config,
@ -41,23 +41,23 @@ Ext.ux.form.SpinnerField = Ext.extend(Ext.form.NumberField, {
},
// private
getResizeEl: function() {
getResizeEl: function () {
return this.wrap;
},
// private
getPositionEl: function() {
getPositionEl: function () {
return this.wrap;
},
// private
alignErrorIcon: function() {
alignErrorIcon: function () {
if (this.wrap) {
this.errorIcon.alignTo(this.wrap, 'tl-tr', [2, 0]);
}
},
validateBlur: function() {
validateBlur: function () {
return true;
},
});

View File

@ -23,7 +23,7 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
colCfg: {},
// private
onRender: function(ct, position) {
onRender: function (ct, position) {
if (!this.el) {
var panelCfg = {
cls: this.groupCls,
@ -131,14 +131,14 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
}
}
var fields = this.panel.findBy(function(c) {
var fields = this.panel.findBy(function (c) {
return c.isFormField;
}, this);
this.items = new Ext.util.MixedCollection();
this.items.addAll(fields);
this.items.each(function(field) {
this.items.each(function (field) {
field.on('spin', this.onFieldChange, this);
field.on('change', this.onFieldChange, this);
}, this);
@ -159,45 +159,45 @@ Ext.ux.form.SpinnerGroup = Ext.extend(Ext.form.CheckboxGroup, {
Ext.ux.form.SpinnerGroup.superclass.onRender.call(this, ct, position);
},
onFieldChange: function(spinner) {
onFieldChange: function (spinner) {
this.fireEvent('change', this, this.getValue());
},
initValue: Ext.emptyFn,
getValue: function() {
getValue: function () {
var value = [this.items.getCount()];
this.items.each(function(item, i) {
this.items.each(function (item, i) {
value[i] = Number(item.getValue());
});
return value;
},
getRawValue: function() {
getRawValue: function () {
var value = [this.items.getCount()];
this.items.each(function(item, i) {
this.items.each(function (item, i) {
value[i] = Number(item.getRawValue());
});
return value;
},
setValue: function(value) {
setValue: function (value) {
if (!this.rendered) {
this.value = value;
this.lazyValueSet = true;
} else {
this.items.each(function(item, i) {
this.items.each(function (item, i) {
item.setValue(value[i]);
});
}
},
setRawValue: function(value) {
setRawValue: function (value) {
if (!this.rendered) {
this.rawValue = value;
this.lazyRawValueSet = true;
} else {
this.items.each(function(item, i) {
this.items.each(function (item, i) {
item.setRawValue(value[i]);
});
}

View File

@ -21,7 +21,7 @@ Ext.namespace('Ext.ux.form');
Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
cls: 'x-toggle-field',
initComponent: function() {
initComponent: function () {
Ext.ux.form.ToggleField.superclass.initComponent.call(this);
this.toggle = new Ext.form.Checkbox();
@ -32,7 +32,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
});
},
onRender: function(ct, position) {
onRender: function (ct, position) {
if (!this.el) {
this.panel = new Ext.Panel({
cls: this.groupCls,
@ -50,16 +50,13 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.panel.add(this.input);
this.panel.doLayout();
this.toggle
.getEl()
.parent()
.setStyle('padding-right', '10px');
this.toggle.getEl().parent().setStyle('padding-right', '10px');
}
Ext.ux.form.ToggleField.superclass.onRender.call(this, ct, position);
},
// private
onResize: function(w, h) {
onResize: function (w, h) {
this.panel.setSize(w, h);
this.panel.doLayout();
@ -68,7 +65,7 @@ Ext.ux.form.ToggleField = Ext.extend(Ext.form.Field, {
this.input.setSize(inputWidth, h);
},
onToggleCheck: function(toggle, checked) {
onToggleCheck: function (toggle, checked) {
this.input.setDisabled(!checked);
},
});

Some files were not shown because too many files have changed in this diff Show More