Changeset 10061
- Timestamp:
- Feb 1, 2010, 1:08:17 AM (12 years ago)
- Location:
- trunk/web
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/web/javascript/torrent.js
r10050 r10061 27 27 Torrent._ErrTrackerError = 2; 28 28 Torrent._ErrLocalError = 3; 29 30 Torrent._TrackerInactive = 0; 31 Torrent._TrackerWaiting = 1; 32 Torrent._TrackerQueued = 2; 33 Torrent._TrackerActive = 3; 34 29 35 30 36 Torrent._StaticFields = [ 'addedDate', 'comment', 'creator', 'dateCreated', … … 160 166 tier[tier.length] = { 161 167 'host': tracker.host, 168 'announce': tracker.announce, 169 'hasAnnounced': tracker.hasAnnounced, 170 'lastAnnounceTime': tracker.lastAnnounceTime, 171 'lastAnnounceSucceeded': tracker.lastAnnounceSucceeded, 172 'lastAnnounceResult': tracker.lastAnnounceResult, 173 'lastAnnouncePeerCount': tracker.lastAnnouncePeerCount, 174 'announceState': tracker.announceState, 175 'nextAnnounceTime': tracker.nextAnnounceTime, 176 'isBackup': tracker.isBackup, 177 'hasScraped': tracker.hasScraped, 178 'lastScrapeTime': tracker.lastScrapeTime, 179 'lastScrapeSucceeded': tracker.lastScrapeSucceeded, 180 'lastScrapeResult': tracker.lastScrapeResult, 162 181 'seederCount': tracker.seederCount, 163 182 'leecherCount': tracker.leecherCount, -
trunk/web/javascript/transmission.js
r10050 r10061 1191 1191 // By building up the HTML as as string, then have the browser 1192 1192 // turn this into a DOM tree, this is a fast operation. 1193 var tr = this; 1193 1194 var html = ''; 1194 1195 var na = 'N/A'; … … 1199 1200 html += 'Tier ' + (i + 1) + '</div><ul class="tier_list">'; 1200 1201 for( var j=0, tracker; tracker=tier[j]; ++j ) { 1202 var lastAnnounceStatusHash = tr.lastAnnounceStatus(tracker); 1203 var announceState = tr.announceState(tracker); 1204 var lastScrapeStatusHash = tr.lastScrapeStatus(tracker); 1205 1206 // Display construction 1201 1207 var parity = ((j+1) % 2 == 0 ? 'even' : 'odd'); 1202 html += '<li class="inspector_tracker_entry ' + parity + '"><div class="tracker_host">' 1203 html += tracker.host + '</div><table class="tracker_stats">'; 1208 html += '<li class="inspector_tracker_entry ' + parity + '"><div class="tracker_host" title="' + tracker.announce + '">'; 1209 html += tracker.host + '</div>'; 1210 html += '<div class="tracker_activity">'; 1211 html += '<div>' + lastAnnounceStatusHash['label'] + ': ' + lastAnnounceStatusHash['value'] + '</div>'; 1212 html += '<div>' + announceState + '</div>'; 1213 html += '<div>' + lastScrapeStatusHash['label'] + ': ' + lastScrapeStatusHash['value'] + '</div>'; 1214 html += '</div><table class="tracker_stats">'; 1204 1215 html += '<tr><th>Seeders:</th><td>' + (tracker.seederCount > -1 ? tracker.seederCount : na) + '</td></tr>'; 1205 1216 html += '<tr><th>Leechers:</th><td>' + (tracker.leecherCount > -1 ? tracker.leecherCount : na) + '</td></tr>'; … … 1211 1222 } 1212 1223 setInnerHTML(this._inspector_trackers_list, html); 1224 }, 1225 1226 lastAnnounceStatus: function(tracker){ 1227 var lastAnnounceLabel = 'Last Announce'; 1228 var lastAnnounce = 'N/A'; 1229 if (tracker.hasAnnounced) { 1230 var lastAnnounceTime = Math.formatTimestamp(tracker.lastAnnounceTime); 1231 if (tracker.lastAnnounceSucceeded) { 1232 lastAnnounce = lastAnnounceTime; 1233 lastAnnounce += ' (got ' + tracker.lastAnnouncePeerCount + ' peer'; 1234 if (tracker.lastAnnouncePeerCount != 1){ lastAnnounce += 's'; } 1235 lastAnnounce += ')'; 1236 } else { 1237 lastAnnounceLabel = 'Announce error'; 1238 lastAnnounce = (tracker.lastAnnounceResult ? tracker.lastAnnounceResult + ' - ' : '') + lastAnnounceTime; 1239 } 1240 } 1241 return {'label':lastAnnounceLabel, 'value':lastAnnounce}; 1242 }, 1243 1244 announceState: function(tracker){ 1245 var announceState = ''; 1246 switch (tracker.announceState) { 1247 case Torrent._TrackerActive: 1248 announceState = 'Announce in progress'; 1249 break; 1250 case Torrent._TrackerWaiting: 1251 var timeUntilAnnounce = tracker.nextAnnounceTime - ((new Date()).getTime() / 1000); 1252 if(timeUntilAnnounce < 0){ 1253 timeUntilAnnounce = 0; 1254 } 1255 announceState = 'Next announce in ' + Math.formatSeconds(timeUntilAnnounce); 1256 break; 1257 case Torrent._TrackerQueued: 1258 announceState = 'Announce is queued'; 1259 break; 1260 case Torrent._TrackerInactive: 1261 announceState = tracker.isBackup ? 1262 'Tracker will be used as a backup' : 1263 'Announce not scheduled'; 1264 break; 1265 default: 1266 announceState = 'unknown announce state: ' + tracker.announceState; 1267 } 1268 return announceState; 1269 }, 1270 1271 lastScrapeStatus: function(tracker){ 1272 var lastScrapeLabel = 'Last Scrape'; 1273 var lastScrape = 'N/A'; 1274 if (tracker.hasScraped) { 1275 var lastScrapeTime = Math.formatTimestamp(tracker.lastScrapeTime); 1276 if (tracker.lastScrapeSucceeded) { 1277 lastScrape = lastScrapeTime; 1278 } else { 1279 lastScrapeLabel = 'Scrape error'; 1280 lastScrape = (tracker.lastScrapeResult ? tracker.lastScrapeResult + ' - ' : '') + lastScrapeTime; 1281 } 1282 } 1283 return {'label':lastScrapeLabel, 'value':lastScrape} 1213 1284 }, 1214 1285 -
trunk/web/stylesheets/common.css
r10050 r10061 620 620 clear: both; 621 621 } 622 .tier_list li{ 623 overflow: hidden; 624 } 625 .tier_list .tracker_activity{ 626 float: left; 627 color: #666; 628 width: 200px; 629 display: table; 630 margin-top: 1px; 631 } 632 .tier_list .tracker_activity div{ 633 padding: 2px; 634 } 622 635 .tier_list table{ 623 margin-left: 15px;624 636 float: right; 637 color: #666; 625 638 } 626 639 .tier_list th{ 627 640 text-align: right; 628 641 } 629 642 -
trunk/web/stylesheets/iphone.css
r10050 r10061 643 643 overflow: hidden; 644 644 } 645 645 646 #inspector_trackers_list > div.inspector_group { 646 647 padding-bottom: 0; 647 648 margin-bottom: 0; 648 649 } 650 649 651 ul.tier_list { 650 652 width: 100%; … … 659 661 clear: both; 660 662 } 663 .tier_list li{ 664 overflow: hidden; 665 } 666 .tier_list .tracker_activity{ 667 float: left; 668 color: #666; 669 width: 200px; 670 display: table; 671 margin-top: 1px; 672 } 673 .tier_list .tracker_activity div{ 674 padding: 2px; 675 } 661 676 .tier_list table{ 662 margin-left: 15px;663 677 float: right; 678 color: #666; 664 679 } 665 680 .tier_list th{ 666 text-align: right; 667 } 681 text-align: right; 682 } 683 668 684 li.inspector_tracker_entry { 669 685 padding: 3px 0 3px 2px; 670 686 display: block; 671 687 } 688 672 689 li.inspector_tracker_entry.odd { 673 690 background-color: #EEEEEE;
Note: See TracChangeset
for help on using the changeset viewer.