From c01f06214ea8b76f1ad888fe32e3c71699aefa01 Mon Sep 17 00:00:00 2001 From: psychobunny Date: Wed, 8 Jul 2015 16:54:39 -0400 Subject: [PATCH] don't re-render graph if data is stale --- public/src/admin/general/dashboard.js | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/public/src/admin/general/dashboard.js b/public/src/admin/general/dashboard.js index ea3c9527f7..303ea35460 100644 --- a/public/src/admin/general/dashboard.js +++ b/public/src/admin/general/dashboard.js @@ -7,7 +7,11 @@ define('admin/general/dashboard', ['semver'], function(semver) { rooms: false, graphs: false }, - isMobile = false; + isMobile = false, + graphData = { + rooms: {}, + traffic: {} + }; var DEFAULTS = { roomInterval: 10000, @@ -69,6 +73,12 @@ define('admin/general/dashboard', ['semver'], function(semver) { return app.alertError(err.message); } + if (JSON.stringify(graphData.rooms) === JSON.stringify(data)) { + return; + } + + graphData.rooms = data; + var html = '
' + '
'+ data.onlineRegisteredCount +'
' + '
Users
' + @@ -265,6 +275,12 @@ define('admin/general/dashboard', ['semver'], function(semver) { } socket.emit('admin.analytics.get', {graph: "traffic"}, function (err, data) { + if (JSON.stringify(graphData.traffic) === JSON.stringify(data)) { + return; + } + + graphData.traffic = data; + for (var i = 0, ii = data.pageviews.length; i < ii; i++) { graphs.traffic.datasets[0].points[i].value = data.pageviews[i]; graphs.traffic.datasets[1].points[i].value = data.uniqueVisitors[i];