diff --git a/deluge/ui/web/js/deluge-all/Menus.js b/deluge/ui/web/js/deluge-all/Menus.js index 6951633e7..37041e5fc 100644 --- a/deluge/ui/web/js/deluge-all/Menus.js +++ b/deluge/ui/web/js/deluge-all/Menus.js @@ -32,11 +32,7 @@ deluge.menus = { onTorrentAction: function(item, e) { - var selection = deluge.torrents.getSelections(); - var ids = []; - Ext.each(selection, function(record) { - ids.push(record.id); - }); + var ids = deluge.torrents.getSelectedIds(); var action = item.initialConfig.torrentAction; switch (action) { diff --git a/deluge/ui/web/js/deluge-all/Torrents.js b/deluge/ui/web/js/deluge-all/Torrents.js index 70e57d66a..14d797694 100644 --- a/deluge/ui/web/js/deluge-all/Torrents.js +++ b/deluge/ui/web/js/deluge-all/Torrents.js @@ -243,7 +243,7 @@ * @ return {Array/Ext.data.Record} The record(s) representing the rows */ getSelected: function() { - return this.getSelectionModel().getSelected(); + return this.getSelectionModel().getSelected(); }, /** @@ -253,6 +253,26 @@ return this.getSelectionModel().getSelections(); }, + /** + * Return the currently selected torrent id. + * @return {String} The currently selected id. + */ + getSelectedId: function() { + return this.getSelectionModel().getSelected().id + }, + + /** + * Return the currently selected torrent ids. + * @return {Array} The currently selected ids. + */ + getSelectedIds: function() { + var ids = []; + Ext.each(this.getSelectionModel().getSelections(), function(r) { + ids.push(r.id); + }); + return ids; + }, + update: function(torrents) { var store = this.getStore(); var newTorrents = [];