Enable multiple graphs to be created
This commit is contained in:
@ -1,7 +1,9 @@
|
|||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
if ($.isController('statistics') && $('.graph#user-activity').isPresent()) {
|
if ($.isController('statistics') && $('.graph#user-activity').isPresent()) {
|
||||||
|
|
||||||
|
function manageGraph(containerId, url, refreshAfter) {
|
||||||
var CHART_START = window.vis ? vis.moment().add(-1, 'minute') : undefined;
|
var CHART_START = window.vis ? vis.moment().add(-1, 'minute') : undefined;
|
||||||
var DEFAULT_REFRESH_INTERVAL = 10000;
|
var DEFAULT_REFRESH_INTERVAL = refreshAfter * 1000 || 10000;
|
||||||
|
|
||||||
var refreshInterval;
|
var refreshInterval;
|
||||||
|
|
||||||
@ -27,7 +29,7 @@ $(document).ready(function () {
|
|||||||
var initializeChart = function() {
|
var initializeChart = function() {
|
||||||
dataset = new vis.DataSet();
|
dataset = new vis.DataSet();
|
||||||
groups = new vis.DataSet(buildChartGroups());
|
groups = new vis.DataSet(buildChartGroups());
|
||||||
graph = new vis.Graph2d(document.getElementById('user-activity'), dataset, groups, {
|
graph = new vis.Graph2d(document.getElementById(containerId), dataset, groups, {
|
||||||
dataAxis: {
|
dataAxis: {
|
||||||
customRange: {
|
customRange: {
|
||||||
left: {
|
left: {
|
||||||
@ -57,10 +59,10 @@ $(document).ready(function () {
|
|||||||
};
|
};
|
||||||
|
|
||||||
var refreshData = function(callback) {
|
var refreshData = function(callback) {
|
||||||
if (! ($.isController('statistics') && $('#user-activity').isPresent())) {
|
if (! ($.isController('statistics') && $('#' + containerId).isPresent())) {
|
||||||
clearInterval(refreshInterval);
|
clearInterval(refreshInterval);
|
||||||
} else {
|
} else {
|
||||||
var jqxhr = $.ajax('graphs/user-activity', {
|
var jqxhr = $.ajax(url, {
|
||||||
dataType: 'json',
|
dataType: 'json',
|
||||||
method: 'GET'
|
method: 'GET'
|
||||||
});
|
});
|
||||||
@ -94,11 +96,15 @@ $(document).ready(function () {
|
|||||||
|
|
||||||
refreshData(function (data) {
|
refreshData(function (data) {
|
||||||
initialData = data;
|
initialData = data;
|
||||||
$('#user-activity').parent().find('.spinner').hide();
|
$('#' + containerId).parent().find('.spinner').hide();
|
||||||
initializeChart();
|
initializeChart();
|
||||||
|
|
||||||
var refresh_interval = location.search.match(/interval=(\d+)/) ? parseInt(RegExp.$1) : DEFAULT_REFRESH_INTERVAL;
|
var refresh_interval = location.search.match(/interval=(\d+)/) ? parseInt(RegExp.$1) : DEFAULT_REFRESH_INTERVAL;
|
||||||
refreshInterval = setInterval(refreshData, refresh_interval);
|
refreshInterval = setInterval(refreshData, refresh_interval);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
manageGraph('user-activity', 'graphs/user-activity', 10);
|
||||||
|
manageGraph('rfc-activity', 'graphs/rfc-activity', 30);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user