From 2e2851dc13d73352530dd4495c7e05603b2e520d Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 10 Apr 2024 23:38:38 +0200 Subject: Adding upstream version 2.1.2~dev0+20240219. Signed-off-by: Daniel Baumann --- deluge/ui/web/js/deluge-all/AddConnectionWindow.js | 117 +++++++++++++++++++++ 1 file changed, 117 insertions(+) create mode 100644 deluge/ui/web/js/deluge-all/AddConnectionWindow.js (limited to 'deluge/ui/web/js/deluge-all/AddConnectionWindow.js') diff --git a/deluge/ui/web/js/deluge-all/AddConnectionWindow.js b/deluge/ui/web/js/deluge-all/AddConnectionWindow.js new file mode 100644 index 0000000..4d821f2 --- /dev/null +++ b/deluge/ui/web/js/deluge-all/AddConnectionWindow.js @@ -0,0 +1,117 @@ +/** + * Deluge.AddConnectionWindow.js + * + * Copyright (c) Damien Churchill 2009-2010 + * + * This file is part of Deluge and is licensed under GNU General Public License 3.0, or later, with + * the additional special exception to link portions of this program with the OpenSSL library. + * See LICENSE for more details. + */ +Ext.ns('Deluge'); + +/** + * @class Deluge.AddConnectionWindow + * @extends Ext.Window + */ +Deluge.AddConnectionWindow = Ext.extend(Ext.Window, { + title: _('Add Connection'), + iconCls: 'x-deluge-add-window-icon', + + layout: 'fit', + width: 300, + height: 195, + constrainHeader: true, + bodyStyle: 'padding: 10px 5px;', + closeAction: 'hide', + + initComponent: function () { + Deluge.AddConnectionWindow.superclass.initComponent.call(this); + + this.addEvents('hostadded'); + + this.addButton(_('Close'), this.hide, this); + this.addButton(_('Add'), this.onAddClick, this); + + this.on('hide', this.onHide, this); + + this.form = this.add({ + xtype: 'form', + defaultType: 'textfield', + baseCls: 'x-plain', + labelWidth: 60, + items: [ + { + fieldLabel: _('Host:'), + labelSeparator: '', + name: 'host', + anchor: '75%', + value: '', + }, + { + xtype: 'spinnerfield', + fieldLabel: _('Port:'), + labelSeparator: '', + name: 'port', + strategy: { + xtype: 'number', + decimalPrecision: 0, + minValue: -1, + maxValue: 65535, + }, + value: '58846', + anchor: '40%', + }, + { + fieldLabel: _('Username:'), + labelSeparator: '', + name: 'username', + anchor: '75%', + value: '', + }, + { + fieldLabel: _('Password:'), + labelSeparator: '', + anchor: '75%', + name: 'password', + inputType: 'password', + value: '', + }, + ], + }); + }, + + onAddClick: function () { + var values = this.form.getForm().getValues(); + deluge.client.web.add_host( + values.host, + Number(values.port), + values.username, + values.password, + { + success: function (result) { + if (!result[0]) { + Ext.MessageBox.show({ + title: _('Error'), + msg: String.format( + _('Unable to add host: {0}'), + result[1] + ), + buttons: Ext.MessageBox.OK, + modal: false, + icon: Ext.MessageBox.ERROR, + iconCls: 'x-deluge-icon-error', + }); + } else { + this.fireEvent('hostadded'); + } + this.hide(); + }, + scope: this, + } + ); + }, + + onHide: function () { + this.form.getForm().reset(); + }, +}); -- cgit v1.2.3