Changeset 12870


Ignore:
Timestamp:
Sep 14, 2011, 4:29:24 PM (12 years ago)
Author:
jordan
Message:

(trunk web) #4481 "preference window no longer provides version info" -- add server version information to the server statistics dialog.

Location:
trunk/web
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/web/index.html

    r12866 r12870  
    332332                </div>
    333333
    334                 <div class="dialog_container" id="stats_container" style="display:none;">
    335                         <div class="dialog_top_bar"></div>
    336                         <div class="dialog_window">
    337                                 <h2 class="dialog_heading">Statistics</h2>
    338                                 <div id="stats_error"></div>
    339                                 <div id="stats_info_container" class="stats_info_container">
    340                                         <div class="stats_group">
    341                                                 <label class="category">Current Session:</label>
    342                                                 <div class="stats_row">
    343                                                         <div class="item">Uploaded:</div>
    344                                                         <div id="stats_session_uploaded"></div>
    345                                                 </div>
    346                                                 <div class="stats_row">
    347                                                         <div class="item">Downloaded:</div>
    348                                                         <div id="stats_session_downloaded"></div>
    349                                                 </div>
    350                                                 <div class="stats_row">
    351                                                         <div class="item">Ratio:</div>
    352                                                         <div id="stats_session_ratio"></div>
    353                                                 </div>
    354                                                 <div class="stats_row">
    355                                                         <div class="item">Running Time:</div>
    356                                                         <div id="stats_session_duration"></div>
    357                                                 </div>
    358                                         </div>
    359                                         <div class="stats_group">
    360                                                 <label class="category">Total:</label>
    361                                                 <div class="stats_row">
    362                                                         <div class="item">Started:</div>
    363                                                         <div id="stats_total_count"></div>
    364                                                 </div>
    365                                                 <div class="stats_row">
    366                                                         <div class="item">Uploaded:</div>
    367                                                         <div id="stats_total_uploaded"></div>
    368                                                 </div>
    369                                                 <div class="stats_row">
    370                                                         <div class="item">Downloaded:</div>
    371                                                         <div id="stats_total_downloaded"></div>
    372                                                 </div>
    373                                                 <div class="stats_row">
    374                                                         <div class="item">Ratio:</div>
    375                                                         <div id="stats_total_ratio"></div>
    376                                                 </div>
    377                                                 <div class="stats_row">
    378                                                         <div class="item">Running Time:</div>
    379                                                         <div id="stats_total_duration"></div>
    380                                                 </div>
    381                                         </div>
    382                                 </div>
    383                                 <a href="#close" id="stats_close_button">Close</a>
     334                <div id="stats-dialog" style="display:none;">
     335                        <div class="prefs-section">
     336                                <div class="title">Current Session</div>
     337                                <div class="row"><div class="key">Uploaded:</div><div class="value" id='stats-session-uploaded'>&nbsp;</div></div>
     338                                <div class="row"><div class="key">Downloaded:</div><div class="value" id='stats-session-downloaded'>&nbsp;</div></div>
     339                                <div class="row"><div class="key">Ratio:</div><div class="value" id='stats-session-ratio'>&nbsp;</div></div>
     340                                <div class="row"><div class="key">Running Time:</div><div class="value" id='stats-session-duration'>&nbsp;</div></div>
     341                        </div>
     342                        <div class="prefs-section">
     343                                <div class="title">Total</div>
     344                                <div class="row"><div class="key">Started:</div><div class="value" id='stats-total-count'>&nbsp;</div></div>
     345                                <div class="row"><div class="key">Uploaded:</div><div class="value" id='stats-total-uploaded'>&nbsp;</div></div>
     346                                <div class="row"><div class="key">Downloaded:</div><div class="value" id='stats-total-downloaded'>&nbsp;</div></div>
     347                                <div class="row"><div class="key">Ratio:</div><div class="value" id='stats-total-ratio'>&nbsp;</div></div>
     348                                <div class="row"><div class="key">Running Time:</div><div class="value" id='stats-total-duration'>&nbsp;</div></div>
    384349                        </div>
    385350                </div>
  • trunk/web/javascript/transmission.js

    r12867 r12870  
    4747                $('#resume_selected_link').click($.proxy(this.startSelectedClicked,this));
    4848                $('#remove_link').click($.proxy(this.removeClicked,this));
    49                 $('#stats_close_button').click($.proxy(this.hideStatsDialog,this));
    5049                $('#open_link').click($.proxy(this.openTorrentClicked,this));
    5150
     
    116115                        Prefs.getClutchPrefs(o);
    117116                        this.updateGuiFromSession(o);
    118                 }, this, async);
    119         },
    120 
    121         loadDaemonStats: function(async) {
    122                 this.remote.loadDaemonStats(function(data) {
    123                         this.updateStats(data['arguments']);
    124117                }, this, async);
    125118        },
     
    590583        },
    591584
    592         // turn the periodic ajax stats refresh on & off
    593         togglePeriodicStatsRefresh: function(enabled) {
    594                 clearInterval(this.statsInterval);
    595                 delete this.statsInterval;
    596                 if (enabled) {
    597                         var callback = $.proxy(this.loadDaemonStats,this),
    598                             msec = 5000;
    599                         this.statsInterval = setInterval(callback, msec);
    600                 }
    601         },
    602 
    603585        toggleTurtleClicked: function()
    604586        {
     
    619601        },
    620602
    621         showStatsDialog: function() {
    622                 this.loadDaemonStats();
    623                 $('#stats_container').fadeIn();
    624                 this.hideMobileAddressbar();
    625                 this.togglePeriodicStatsRefresh(true);
    626         },
    627 
    628         hideStatsDialog: function() {
    629                 $('#stats_container').fadeOut();
    630                 this.hideMobileAddressbar();
    631                 this.togglePeriodicStatsRefresh(false);
    632         },
    633 
    634         // Process new session stats from the server
    635         updateStats: function(stats)
    636         {
    637                 var s, ratio,
    638                     fmt = Transmission.fmt;
    639 
    640                 s = stats["current-stats"];
    641                 ratio = Math.ratio(s.uploadedBytes,s.downloadedBytes);
    642                 $('#stats_session_uploaded').html(fmt.size(s.uploadedBytes));
    643                 $('#stats_session_downloaded').html(fmt.size(s.downloadedBytes));
    644                 $('#stats_session_ratio').html(fmt.ratioString(ratio));
    645                 $('#stats_session_duration').html(fmt.timeInterval(s.secondsActive));
    646 
    647                 s = stats["cumulative-stats"];
    648                 ratio = Math.ratio(s.uploadedBytes,s.downloadedBytes);
    649                 $('#stats_total_count').html(s.sessionCount + " times");
    650                 $('#stats_total_uploaded').html(fmt.size(s.uploadedBytes));
    651                 $('#stats_total_downloaded').html(fmt.size(s.downloadedBytes));
    652                 $('#stats_total_ratio').html(fmt.ratioString(ratio));
    653                 $('#stats_total_duration').html(fmt.timeInterval(s.secondsActive));
    654         },
    655 
    656603        setFilterText: function(search) {
    657604                this.filterText = search ? search.trim() : null;
     
    674621                    fmt = Transmission.fmt,
    675622                    menu = $('#settings_menu');
     623
     624                this.serverVersion = o.version;
    676625
    677626                this.prefsDialog.set(o);
     
    756705
    757706                        case 'statistics':
    758                                 $('div#stats_container div#stats_error').hide();
    759                                 $('div#stats_container h2.dialog_heading').show();
    760707                                this.showStatsDialog();
    761708                                break;
     
    16621609                                               : new TorrentRendererFull();
    16631610                this.refilter(true);
     1611        },
     1612
     1613        /***
     1614        ****
     1615        ****  Statistics
     1616        ****
     1617        ***/
     1618
     1619        // turn the periodic ajax stats refresh on & off
     1620        togglePeriodicStatsRefresh: function(enabled) {
     1621                clearInterval(this.statsInterval);
     1622                delete this.statsInterval;
     1623                if (enabled) {
     1624                        var callback = $.proxy(this.loadDaemonStats,this),
     1625                            msec = 5000;
     1626                        this.statsInterval = setInterval(callback, msec);
     1627                }
     1628        },
     1629
     1630        loadDaemonStats: function(async) {
     1631                this.remote.loadDaemonStats(function(data) {
     1632                        this.updateStats(data['arguments']);
     1633                }, this, async);
     1634        },
     1635
     1636        // Process new session stats from the server
     1637        updateStats: function(stats)
     1638        {
     1639                var s, ratio,
     1640                    fmt = Transmission.fmt;
     1641
     1642                s = stats["current-stats"];
     1643                ratio = Math.ratio(s.uploadedBytes,s.downloadedBytes);
     1644                $('#stats-session-uploaded').html(fmt.size(s.uploadedBytes));
     1645                $('#stats-session-downloaded').html(fmt.size(s.downloadedBytes));
     1646                $('#stats-session-ratio').html(fmt.ratioString(ratio));
     1647                $('#stats-session-duration').html(fmt.timeInterval(s.secondsActive));
     1648
     1649                s = stats["cumulative-stats"];
     1650                ratio = Math.ratio(s.uploadedBytes,s.downloadedBytes);
     1651                $('#stats-total-count').html(s.sessionCount + " times");
     1652                $('#stats-total-uploaded').html(fmt.size(s.uploadedBytes));
     1653                $('#stats-total-downloaded').html(fmt.size(s.downloadedBytes));
     1654                $('#stats-total-ratio').html(fmt.ratioString(ratio));
     1655                $('#stats-total-duration').html(fmt.timeInterval(s.secondsActive));
     1656        },
     1657
     1658
     1659        showStatsDialog: function() {
     1660                this.loadDaemonStats();
     1661                this.hideMobileAddressbar();
     1662                this.togglePeriodicStatsRefresh(true);
     1663                $('#stats-dialog').dialog({
     1664                        'close': $.proxy(this.onStatsDialogClosed,this),
     1665                        'show': 'fade',
     1666                        'hide': 'fade',
     1667                        'title': 'Transmission ' + this.serverVersion
     1668                });
     1669        },
     1670
     1671        onStatsDialogClosed: function() {
     1672                this.hideMobileAddressbar();
     1673                this.togglePeriodicStatsRefresh(false);
    16641674        }
    16651675};
  • trunk/web/stylesheets/common.css

    r12865 r12870  
    10141014}
    10151015
    1016 div#prefs_container div.dialog_window {
    1017         width: 410px;
    1018         padding: 0 15px;
    1019 }
    1020 
    1021 div#stats_container div.dialog_window {
    1022         width: 255px;
    1023         padding: 0 15px;
    1024 }
    1025 
    10261016div.dialog_container div.dialog_window img {
    10271017        margin: 20px 20px 0 20px;
     
    11121102}
    11131103
    1114 div#stats_container h2.dialog_heading {
    1115         display: none;
    1116 }
    1117 div#stats_container div#stats_error {
    1118         display: none;
    1119         width: 395px;
    1120         margin: 6px auto 6px auto;
    1121         padding: 3px 0 3px 0;
    1122         border: 2px solid #cc3333;
    1123         color: #cc3333;
    1124         font-size: 1.2em;
    1125         vertical-align: middle;
    1126         text-align: center;
    1127         height: 20px;
    1128         line-height: 20px;
    1129         background-color: #FFEFEF;
    1130 }
    1131 .stats_info_container {
    1132         clear: both;
    1133         padding: 0px 7px 0px 7px;
    1134 }
    1135 .stats_group {
    1136         display: table;
    1137         margin: 5px 0px 0px 0px;
    1138         padding: 5px 0px 0px 0px;
    1139         width: 100%;
    1140 }
    1141 .stats_row {
    1142         display: table-row;
    1143 }
    1144 .stats_row > div {
    1145         padding-top: 4px;
    1146 }
    1147 div#stats_container label.category {
    1148         clear: both;
    1149         font-size: 1.2em;
    1150         margin: 5px 0px;
    1151 }
    1152 div#stats_container div.item {
    1153         font-size: 11px !important;
    1154         margin: 0 5px 0 20px;
    1155         float: left;
    1156         width: 100px;
    1157 }
    1158 div#stats_container div.item2 {
    1159         font-size: 11px !important;
    1160         margin: 0 5px 0 20px;
    1161         float: left;
    1162 }
    1163 div#stats_container a {
    1164         clear: left;
    1165         margin: 10px 5px 10px 7px;
    1166 }
    1167 
    11681104/****
    11691105*****
  • trunk/web/stylesheets/mobile.css

    r12865 r12870  
    4343
    4444body.inspector_showing #torrent_filter_bar, body.inspector_showing #torrent_container,
    45 body.dialog_showing #torrent_filter_bar, body.dialog_showing #torrent_container, body.dialog_showing #torrent_inspector, body.dialog_showing #prefs_container,
     45body.dialog_showing #torrent_filter_bar, body.dialog_showing #torrent_container, body.dialog_showing #torrent_inspector,
    4646body.prefs_showing #torrent_inspector, body.prefs_showing #torrent_filter_bar, body.prefs_showing #torrent_container,
    4747body.open_showing #torrent_filter_bar, body.open_showing #torrent_container {
Note: See TracChangeset for help on using the changeset viewer.