diff --git a/defaulttrackers/core.py b/defaulttrackers/core.py index 8f41691..e077aba 100644 --- a/defaulttrackers/core.py +++ b/defaulttrackers/core.py @@ -143,3 +143,11 @@ def get_config(self): """Returns the config dictionary""" return self.config.config + @export + def apply_existing(self): + """Apply trackerlist to existings torrents""" + + for torrent_id in component.get("TorrentManager").torrents: + self.on_torrent_added(torrent_id) + return True + diff --git a/defaulttrackers/data/defaulttrackers.js b/defaulttrackers/data/defaulttrackers.js index 0df6ce6..3ab7587 100644 --- a/defaulttrackers/data/defaulttrackers.js +++ b/defaulttrackers/data/defaulttrackers.js @@ -85,6 +85,19 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { autoWidth: true, })); + var applyExisting = this.add({ + fieldLabel: _(''), + name: 'trackers_apply', + xtype: 'container', + layout: 'hbox', + items: [{ + xtype: 'button', + text: 'Apply Existing Torrents', + }] + }); + + applyExisting.getComponent(0).setHandler(this.onApplyExisting, this); + deluge.preferences.on('show', this.onPreferencesShow, this); }, @@ -119,6 +132,14 @@ DefaultTrackersPanel = Ext.extend(Ext.form.FormPanel, { onSetConfig: function() { this.opts.commit(); }, + onApplyExisting: function() { + deluge.client.defaulttrackers.apply_existing({ + success: function() { + Ext.Msg.alert('Success', 'Default trackers applied to existing torrents'); + }, + scope: this, + }); + } }); DefaultTrackersPlugin = Ext.extend(Deluge.Plugin, { diff --git a/egg/DefaultTrackers-0.6-py3.12.egg b/egg/DefaultTrackers-0.6-py3.12.egg new file mode 100644 index 0000000..928c8bf Binary files /dev/null and b/egg/DefaultTrackers-0.6-py3.12.egg differ