diff options
Diffstat (limited to 'app/views/stats/index.phtml')
| -rw-r--r-- | app/views/stats/index.phtml | 132 |
1 files changed, 43 insertions, 89 deletions
diff --git a/app/views/stats/index.phtml b/app/views/stats/index.phtml index ba4258b71..a36f812a8 100644 --- a/app/views/stats/index.phtml +++ b/app/views/stats/index.phtml @@ -1,139 +1,93 @@ <?php $this->partial('aside_stats'); ?> <div class="post"> - <a href="<?php echo _url('index', 'index'); ?>"><?php echo _t('back_to_rss_feeds'); ?></a> + <a href="<?php echo _url('index', 'index'); ?>"><?php echo _t('gen.action.back_to_rss_feeds'); ?></a> - <h1><?php echo _t('stats_main'); ?></h1> + <h1><?php echo _t('admin.stats.main'); ?></h1> <div class="stat half"> - <h2><?php echo _t('stats_entry_repartition'); ?></h2> + <h2><?php echo _t('admin.stats.entry_repartition'); ?></h2> <table> <thead> <tr> <th> </th> - <th><?php echo _t('main_stream'); ?></th> - <th><?php echo _t('all_feeds'); ?></th> + <th><?php echo _t('admin.stats.main_stream'); ?></th> + <th><?php echo _t('admin.stats.all_feeds'); ?></th> </tr> </thead> <tbody> <tr> - <th><?php echo _t('status_total'); ?></th> - <td class="numeric"><?php echo formatNumber($this->repartition['main_stream']['total']); ?></td> - <td class="numeric"><?php echo formatNumber($this->repartition['all_feeds']['total']); ?></td> + <th><?php echo _t('admin.stats.status_total'); ?></th> + <td class="numeric"><?php echo format_number($this->repartition['main_stream']['total']); ?></td> + <td class="numeric"><?php echo format_number($this->repartition['all_feeds']['total']); ?></td> </tr> <tr> - <th><?php echo _t('status_read'); ?></th> - <td class="numeric"><?php echo formatNumber($this->repartition['main_stream']['read']); ?></td> - <td class="numeric"><?php echo formatNumber($this->repartition['all_feeds']['read']); ?></td> + <th><?php echo _t('admin.stats.status_read'); ?></th> + <td class="numeric"><?php echo format_number($this->repartition['main_stream']['count_reads']); ?></td> + <td class="numeric"><?php echo format_number($this->repartition['all_feeds']['count_reads']); ?></td> </tr> <tr> - <th><?php echo _t('status_unread'); ?></th> - <td class="numeric"><?php echo formatNumber($this->repartition['main_stream']['unread']); ?></td> - <td class="numeric"><?php echo formatNumber($this->repartition['all_feeds']['unread']); ?></td> + <th><?php echo _t('admin.stats.status_unread'); ?></th> + <td class="numeric"><?php echo format_number($this->repartition['main_stream']['count_unreads']); ?></td> + <td class="numeric"><?php echo format_number($this->repartition['all_feeds']['count_unreads']); ?></td> </tr> <tr> - <th><?php echo _t('status_favorites'); ?></th> - <td class="numeric"><?php echo formatNumber($this->repartition['main_stream']['favorite']); ?></td> - <td class="numeric"><?php echo formatNumber($this->repartition['all_feeds']['favorite']); ?></td> + <th><?php echo _t('admin.stats.status_favorites'); ?></th> + <td class="numeric"><?php echo format_number($this->repartition['main_stream']['count_favorites']); ?></td> + <td class="numeric"><?php echo format_number($this->repartition['all_feeds']['count_favorites']); ?></td> </tr> </tbody> </table> </div><!-- --><div class="stat half"> - <h2><?php echo _t('stats_top_feed'); ?></h2> + <h2><?php echo _t('admin.stats.top_feed'); ?></h2> <table> <thead> <tr> - <th><?php echo _t('feed'); ?></th> - <th><?php echo _t('category'); ?></th> - <th><?php echo _t('stats_entry_count'); ?></th> - <th><?php echo _t('stats_percent_of_total'); ?></th> + <th><?php echo _t('admin.stats.feed'); ?></th> + <th><?php echo _t('admin.stats.category'); ?></th> + <th><?php echo _t('admin.stats.entry_count'); ?></th> + <th><?php echo _t('admin.stats.percent_of_total'); ?></th> </tr> </thead> <tbody> - <?php foreach ($this->topFeed as $feed): ?> + <?php foreach ($this->topFeed as $feed) { ?> <tr> <td><a href="<?php echo _url('stats', 'repartition', 'id', $feed['id']); ?>"><?php echo $feed['name']; ?></a></td> <td><?php echo $feed['category']; ?></td> - <td class="numeric"><?php echo formatNumber($feed['count']); ?></td> - <td class="numeric"><?php echo formatNumber($feed['count'] / $this->repartition['all_feeds']['total'] * 100, 1);?></td> + <td class="numeric"><?php echo format_number($feed['count']); ?></td> + <td class="numeric"><?php echo format_number($feed['count'] / $this->repartition['all_feeds']['total'] * 100, 1);?></td> </tr> - <?php endforeach;?> + <?php } ?> </tbody> </table> </div> <div class="stat"> - <h2><?php echo _t('stats_entry_per_day'); ?></h2> - <div id="statsEntryPerDay" style="height: 300px"></div> + <h2><?php echo _t('admin.stats.entry_per_day'); ?></h2> + <div id="statsEntryPerDay" class="statGraph"></div> </div> <div class="stat half"> - <h2><?php echo _t('stats_feed_per_category'); ?></h2> - <div id="statsFeedPerCategory" style="height: 300px"></div> + <h2><?php echo _t('admin.stats.feed_per_category'); ?></h2> + <div id="statsFeedPerCategory" class="statGraph"></div> <div id="statsFeedPerCategoryLegend"></div> - </div><!-- + </div> - --><div class="stat half"> - <h2><?php echo _t('stats_entry_per_category'); ?></h2> - <div id="statsEntryPerCategory" style="height: 300px"></div> + <div class="stat half"> + <h2><?php echo _t('admin.stats.entry_per_category'); ?></h2> + <div id="statsEntryPerCategory" class="statGraph"></div> <div id="statsEntryPerCategoryLegend"></div> </div> </div> -<script> -"use strict"; -function initStats() { - if (!window.Flotr) { - if (window.console) { - console.log('FreshRSS waiting for Flotr…'); - } - window.setTimeout(initStats, 50); - return; - } - // Entry per day - var avg = []; - for (var i = -31; i <= 0; i++) { - avg.push([i, <?php echo $this->average?>]); - } - Flotr.draw(document.getElementById('statsEntryPerDay'), - [{ - data: <?php echo $this->count ?>, - bars: {horizontal: false, show: true} - },{ - data: avg, - lines: {show: true}, - label: "<?php echo $this->average?>" - }], - { - grid: {verticalLines: false}, - xaxis: {noTicks: 6, showLabels: false, tickDecimals: 0, min: -30.75, max: -0.25}, - yaxis: {min: 0}, - mouse: {relative: true, track: true, trackDecimals: 0, trackFormatter: function(obj) {return numberFormat(obj.y);}} - }); - // Feed per category - Flotr.draw(document.getElementById('statsFeedPerCategory'), - <?php echo $this->feedByCategory ?>, - { - grid: {verticalLines: false, horizontalLines: false}, - pie: {explode: 10, show: true, labelFormatter: function(){return '';}}, - xaxis: {showLabels: false}, - yaxis: {showLabels: false}, - mouse: {relative: true, track: true, trackDecimals: 0, trackFormatter: function(obj) {return obj.series.label + ' - '+ numberFormat(obj.y) + ' ('+ (obj.fraction * 100).toFixed(1) + '%)';}}, - legend: {container: document.getElementById('statsFeedPerCategoryLegend'), noColumns: 3} - }); - // Entry per category - Flotr.draw(document.getElementById('statsEntryPerCategory'), - <?php echo $this->entryByCategory ?>, - { - grid: {verticalLines: false, horizontalLines: false}, - pie: {explode: 10, show: true, labelFormatter: function(){return '';}}, - xaxis: {showLabels: false}, - yaxis: {showLabels: false}, - mouse: {relative: true, track: true, trackDecimals: 0, trackFormatter: function(obj) {return obj.series.label + ' - '+ numberFormat(obj.y) + ' ('+ (obj.fraction * 100).toFixed(1) + '%)';}}, - legend: {container: document.getElementById('statsEntryPerCategoryLegend'), noColumns: 3} - }); -} -initStats(); -</script> +<script id="jsonStats" type="application/json"><?php +echo htmlspecialchars(json_encode(array( + 'average' => $this->average, + 'dataCount' => $this->count, + 'feedByCategory' => $this->feedByCategory, + 'entryByCategory' => $this->entryByCategory, +), JSON_UNESCAPED_UNICODE), ENT_NOQUOTES); +?></script> +<script src="../scripts/stats.js?<?php echo @filemtime(PUBLIC_PATH . '/scripts/stats.js'); ?>"></script> |
