diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 21:38:38 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-10 21:38:38 +0000 |
commit | 2e2851dc13d73352530dd4495c7e05603b2e520d (patch) | |
tree | 622b9cd8e5d32091c9aa9e4937b533975a40356c /deluge/plugins/Extractor/deluge_extractor/data/extractor.js | |
parent | Initial commit. (diff) | |
download | deluge-2e2851dc13d73352530dd4495c7e05603b2e520d.tar.xz deluge-2e2851dc13d73352530dd4495c7e05603b2e520d.zip |
Adding upstream version 2.1.2~dev0+20240219.upstream/2.1.2_dev0+20240219upstream
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'deluge/plugins/Extractor/deluge_extractor/data/extractor.js')
-rw-r--r-- | deluge/plugins/Extractor/deluge_extractor/data/extractor.js | 100 |
1 files changed, 100 insertions, 0 deletions
diff --git a/deluge/plugins/Extractor/deluge_extractor/data/extractor.js b/deluge/plugins/Extractor/deluge_extractor/data/extractor.js new file mode 100644 index 0000000..952b645 --- /dev/null +++ b/deluge/plugins/Extractor/deluge_extractor/data/extractor.js @@ -0,0 +1,100 @@ +/** + * extractor.js + * + * Copyright (C) Calum Lind 2014 <calumlind@gmail.com> + * + * 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.ux.preferences'); + +/** + * @class Deluge.ux.preferences.ExtractorPage + * @extends Ext.Panel + */ +Deluge.ux.preferences.ExtractorPage = Ext.extend(Ext.Panel, { + title: _('Extractor'), + header: false, + layout: 'fit', + border: false, + + initComponent: function () { + Deluge.ux.preferences.ExtractorPage.superclass.initComponent.call(this); + + this.form = this.add({ + xtype: 'form', + layout: 'form', + border: false, + autoHeight: true, + }); + + fieldset = this.form.add({ + xtype: 'fieldset', + border: false, + title: '', + autoHeight: true, + labelAlign: 'top', + labelWidth: 80, + defaultType: 'textfield', + }); + + this.extract_path = fieldset.add({ + fieldLabel: _('Extract to:'), + labelSeparator: '', + name: 'extract_path', + width: '97%', + }); + + this.use_name_folder = fieldset.add({ + xtype: 'checkbox', + name: 'use_name_folder', + height: 22, + hideLabel: true, + boxLabel: _('Create torrent name sub-folder'), + }); + + this.on('show', this.updateConfig, this); + }, + + onApply: function () { + // build settings object + var config = {}; + + config['extract_path'] = this.extract_path.getValue(); + config['use_name_folder'] = this.use_name_folder.getValue(); + + deluge.client.extractor.set_config(config); + }, + + onOk: function () { + this.onApply(); + }, + + updateConfig: function () { + deluge.client.extractor.get_config({ + success: function (config) { + this.extract_path.setValue(config['extract_path']); + this.use_name_folder.setValue(config['use_name_folder']); + }, + scope: this, + }); + }, +}); + +Deluge.plugins.ExtractorPlugin = Ext.extend(Deluge.Plugin, { + name: 'Extractor', + + onDisable: function () { + deluge.preferences.removePage(this.prefsPage); + }, + + onEnable: function () { + this.prefsPage = deluge.preferences.addPage( + new Deluge.ux.preferences.ExtractorPage() + ); + }, +}); +Deluge.registerPlugin('Extractor', Deluge.plugins.ExtractorPlugin); |