You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
2.1 KiB
59 lines
2.1 KiB
"use strict"; |
|
/* globals Flotr, numberFormat */ |
|
/* jshint globalstrict: true */ |
|
|
|
function initStats() { |
|
if (!window.Flotr) { |
|
if (window.console) { |
|
console.log('FreshRSS waiting for Flotr…'); |
|
} |
|
window.setTimeout(initStats, 50); |
|
return; |
|
} |
|
var jsonStats = document.getElementById('jsonStats'), |
|
stats = JSON.parse(jsonStats.innerHTML); |
|
jsonStats.outerHTML = ''; |
|
// Entry per day |
|
var avg = []; |
|
for (var i = -31; i <= 0; i++) { |
|
avg.push([i, stats.average]); |
|
} |
|
Flotr.draw(document.getElementById('statsEntryPerDay'), |
|
[{ |
|
data: stats.dataCount, |
|
bars: {horizontal: false, show: true} |
|
},{ |
|
data: avg, |
|
lines: {show: true}, |
|
label: stats.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'), |
|
stats.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'), |
|
stats.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();
|
|
|