From d3f755957cdfbad69477741316661071624d3c45 Mon Sep 17 00:00:00 2001 From: Charles Kerr Date: Fri, 3 Sep 2010 00:20:40 +0000 Subject: [PATCH] (trunk web) part 2 of reverting the web client changes: adding Longinus00's filter-by-finished patch back in. I've learned my lesson -- no more hacking in clutch. http://github.com/charlesk/gearbox --- web/javascript/common.js | 1 + web/javascript/torrent.js | 6 +++++- web/javascript/transmission.js | 7 ++++++- 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/web/javascript/common.js b/web/javascript/common.js index 1775c897c..9d924f998 100644 --- a/web/javascript/common.js +++ b/web/javascript/common.js @@ -213,6 +213,7 @@ Prefs._FilterActive = 'active'; Prefs._FilterSeeding = 'seeding'; Prefs._FilterDownloading = 'downloading'; Prefs._FilterPaused = 'paused'; +Prefs._FilterFinished = 'finished'; Prefs._SortDirection = 'sort_direction'; Prefs._SortAscending = 'ascending'; diff --git a/web/javascript/torrent.js b/web/javascript/torrent.js index 6b56b9308..3d18cae12 100644 --- a/web/javascript/torrent.js +++ b/web/javascript/torrent.js @@ -235,6 +235,7 @@ Torrent.prototype = || this.state() == Torrent._StatusChecking; }, isActive: function() { return this.state() != Torrent._StatusPaused; }, isDownloading: function() { return this.state() == Torrent._StatusDownloading; }, + isFinished: function() { return this._isFinishedSeeding; }, isSeeding: function() { return this.state() == Torrent._StatusSeeding; }, name: function() { return this._name; }, peersSendingToUs: function() { return this._peers_sending_to_us; }, @@ -254,7 +255,7 @@ Torrent.prototype = switch( this.state() ) { case Torrent._StatusSeeding: return 'Seeding'; case Torrent._StatusDownloading: return 'Downloading'; - case Torrent._StatusPaused: return this._isFinishedSeeding ? 'Seeding complete' : 'Paused'; + case Torrent._StatusPaused: return this.isFinished() ? 'Seeding complete' : 'Paused'; case Torrent._StatusChecking: return 'Verifying local data'; case Torrent._StatusWaitingToCheck: return 'Waiting to verify'; default: return 'error'; @@ -741,6 +742,9 @@ Torrent.prototype = case Prefs._FilterPaused: pass = !this.isActive(); break; + case Prefs._FilterFinished: + pass = this.isFinished(); + break; default: pass = true; break; diff --git a/web/javascript/transmission.js b/web/javascript/transmission.js index c240e77be..acd6a2cfd 100644 --- a/web/javascript/transmission.js +++ b/web/javascript/transmission.js @@ -45,6 +45,7 @@ Transmission.prototype = $('#filter_downloading_link').parent().bind('click', function(e){ tr.showDownloadingClicked(e); }); $('#filter_seeding_link').parent().bind('click', function(e){ tr.showSeedingClicked(e); }); $('#filter_paused_link').parent().bind('click', function(e){ tr.showPausedClicked(e); }); + $('#filter_finished_link').parent().bind('click', function(e){ tr.showFinishedClicked(e); }); $('#prefs_save_button').bind('click', function(e) { tr.savePrefsClicked(e); return false;}); $('#prefs_cancel_button').bind('click', function(e){ tr.cancelPrefsClicked(e); return false; }); $('#stats_close_button').bind('click', function(e){ tr.closeStatsClicked(e); return false; }); @@ -780,6 +781,7 @@ Transmission.prototype = case Prefs._FilterSeeding: c = '#filter_seeding_link'; break; case Prefs._FilterDownloading: c = '#filter_downloading_link'; break; case Prefs._FilterPaused: c = '#filter_paused_link'; break; + case Prefs._FilterFinished: c = '#filter_finished_link'; break; } $(c).parent().siblings().removeClass('selected'); $(c).parent().addClass('selected'); @@ -803,6 +805,9 @@ Transmission.prototype = showPausedClicked: function(event) { this.setFilter( Prefs._FilterPaused ); }, + showFinishedClicked: function(event) { + this.setFilter( Prefs._FilterFinished ); + }, /* * 'Clutch Preferences' was clicked (iPhone only) @@ -1392,7 +1397,7 @@ Transmission.prototype = html += '' + Math.floor(peer.progress*100) + '%' + ''; html += '' + peer.flagStr + ''; html += '' + peer.address + ''; - html += '' + peer.clientName + ''; + html += '' + peer.clientName + ''; html += ''; } html += '';