piecharts ftw, also started re-arranging the dashboard

v1.18.x
psychobunny 11 years ago
parent e012479ab5
commit 744c55e776

@ -1,3 +1,8 @@
.dashboard {
.panel {
max-width: 100% !important;
}
.graph-container {
padding-right: 50px;
position: relative;
@ -53,3 +58,4 @@
.motd textarea {
width: 100%;
}
}

@ -124,6 +124,8 @@ define('forum/admin/general/dashboard', ['semver'], function(semver) {
'<div>Connections</div>' +
'</div>';
updateRegisteredGraph(data.onlineRegisteredCount, data.onlineGuestCount);
$('#active-users').html(html);
};
@ -144,12 +146,14 @@ define('forum/admin/general/dashboard', ['semver'], function(semver) {
}
function setupGraphs() {
var canvas = document.getElementById('analytics-traffic'),
ctx = canvas.getContext('2d'),
labels = getHoursArray();
var trafficCanvas = document.getElementById('analytics-traffic'),
registeredCanvas = document.getElementById('analytics-registered'),
trafficCtx = trafficCanvas.getContext('2d'),
registeredCtx = registeredCanvas.getContext('2d'),
trafficLabels = getHoursArray();
var data = {
labels: labels,
labels: trafficLabels,
datasets: [
{
label: "Page Views",
@ -174,11 +178,24 @@ define('forum/admin/general/dashboard', ['semver'], function(semver) {
]
};
canvas.width = $(canvas).parent().width();
graphs.traffic = new Chart(ctx).Line(data, {
trafficCanvas.width = $(trafficCanvas).parent().width();
graphs.traffic = new Chart(trafficCtx).Line(data, {
responsive: true
});
graphs.registered = new Chart(registeredCtx).Doughnut([{
value: 1,
color:"#F7464A",
highlight: "#FF5A5E",
label: "Registered Users"
},
{
value: 1,
color: "#46BFBD",
highlight: "#5AD3D1",
label: "Anonymous Users"
}], {});
setInterval(updateTrafficGraph, 15000);
updateTrafficGraph();
}
@ -197,5 +214,11 @@ define('forum/admin/general/dashboard', ['semver'], function(semver) {
});
}
function updateRegisteredGraph(registered, anonymous) {
graphs.registered.segments[0].value = registered;
graphs.registered.segments[1].value = anonymous;
graphs.registered.update();
}
return Admin;
});

@ -1,4 +1,4 @@
<div class="row">
<div class="row dashboard">
<div class="col-lg-9">
<div class="panel panel-default">
<div class="panel-heading">Forum Traffic</div>
@ -13,48 +13,6 @@
</div>
</div>
<div class="row">
<div class="col-lg-9">
<!-- BEGIN stats -->
<div class="col-lg-4 col-md-6">
<div class="panel panel-default">
<div class="panel-heading">{stats.name}</div>
<div class="panel-body">
<div id="unique-visitors">
<div class="text-center pull-left">
<div>{stats.day}</div>
<div>Day</div>
</div>
<div class="text-center pull-left">
<div>{stats.week}</div>
<div>Week</div>
</div>
<div class="text-center pull-left">
<div>{stats.month}</div>
<div>Month</div>
</div>
<div class="text-center pull-left">
<div>{stats.alltime}</div>
<div>All Time</div>
</div>
</div>
</div>
</div>
</div>
<!-- END stats -->
<div class="col-lg-4 col-md-6">
<div class="panel panel-default">
<div class="panel-heading">Active Users</div>
<div class="panel-body">
<div id="active-users"></div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-lg-3">
<div class="panel panel-default">
<div class="panel-heading">Welcome to NodeBB</div>
<div class="panel-body">
@ -98,4 +56,47 @@
</div>
</div>
</div>
<div class="col-lg-3">
<div class="panel panel-default">
<div class="panel-heading">Anonymous vs Registered Users</div>
<div class="panel-body">
<div class="graph-container">
<canvas id="analytics-registered"></canvas>
</div>
</div>
</div>
<!-- BEGIN stats -->
<div class="panel panel-default">
<div class="panel-heading">{stats.name}</div>
<div class="panel-body">
<div id="unique-visitors">
<div class="text-center pull-left">
<div>{stats.day}</div>
<div>Day</div>
</div>
<div class="text-center pull-left">
<div>{stats.week}</div>
<div>Week</div>
</div>
<div class="text-center pull-left">
<div>{stats.month}</div>
<div>Month</div>
</div>
<div class="text-center pull-left">
<div>{stats.alltime}</div>
<div>All Time</div>
</div>
</div>
</div>
</div>
<!-- END stats -->
<div class="panel panel-default">
<div class="panel-heading">Active Users</div>
<div class="panel-body">
<div id="active-users"></div>
</div>
</div>
</div>
</div>
Loading…
Cancel
Save