mirror of
https://github.com/RaidMax/IW4M-Admin.git
synced 2025-06-10 15:20:48 -05:00
migrated to ASP.Net Core
This commit is contained in:
84
WebfrontCore/wwwroot/js/server.js
Normal file
84
WebfrontCore/wwwroot/js/server.js
Normal file
@ -0,0 +1,84 @@
|
||||
function getPlayerHistoryChart(playerHistory, i, width) {
|
||||
///////////////////////////////////////
|
||||
// thanks to canvasjs :(
|
||||
playerHistory.forEach(function (item, i) {
|
||||
playerHistory[i].x = new Date(playerHistory[i].x);
|
||||
});
|
||||
|
||||
return new CanvasJS.Chart(`server_history_${i}`, {
|
||||
backgroundColor: "#191919",
|
||||
height: 100,
|
||||
width: width,
|
||||
animationEnabled: true,
|
||||
toolTip: {
|
||||
contentFormatter: function (e) {
|
||||
var date = new Date(e.entries[0].dataPoint.x);
|
||||
return date.toLocaleTimeString('en-US', { timeZone: 'America/New_York', hour12: true }) + " - " + e.entries[0].dataPoint.y + " players";
|
||||
}
|
||||
},
|
||||
axisX: {
|
||||
interval: 1,
|
||||
gridThickness: 0,
|
||||
lineThickness: 0,
|
||||
tickThickness: 0,
|
||||
margin: 0,
|
||||
valueFormatString: " ",
|
||||
},
|
||||
axisY: {
|
||||
gridThickness: 0,
|
||||
lineThickness: 0,
|
||||
tickThickness: 0,
|
||||
minimum: 0,
|
||||
margin: 0,
|
||||
valueFormatString: " ",
|
||||
labelMaxWidth: 0,
|
||||
},
|
||||
legend: {
|
||||
maxWidth: 0,
|
||||
maxHeight: 0,
|
||||
dockInsidePlotArea: true,
|
||||
},
|
||||
data: [{
|
||||
showInLegend: false,
|
||||
type: "splineArea",
|
||||
color: "rgba(0, 122, 204, 0.432)",
|
||||
markerSize: 0,
|
||||
dataPoints: playerHistory,
|
||||
}]
|
||||
});
|
||||
//////////////////////////////////////
|
||||
}
|
||||
var charts = {};
|
||||
|
||||
$('.server-history-row').each(function (index, element) {
|
||||
let clientHistory = $(this).data('clienthistory');
|
||||
let serverId = $(this).data('serverid');
|
||||
let width = $('.server-header').first().width();
|
||||
let historyChart = getPlayerHistoryChart(clientHistory, serverId, width);
|
||||
historyChart.render();
|
||||
charts[serverId] = historyChart;
|
||||
});
|
||||
|
||||
$(window).resize(function () {
|
||||
$('.server-history-row').each(function (index) {
|
||||
let serverId = $(this).data('serverid');
|
||||
charts[serverId].options.width = $('.server-header').first().width();
|
||||
charts[serverId].render()
|
||||
});
|
||||
})
|
||||
|
||||
function refreshClientActivity() {
|
||||
$('.server-history-row').each(function (index) {
|
||||
let serverId = $(this).data("serverid");
|
||||
|
||||
$.get("/server/clientactivity/" + serverId)
|
||||
.done(function (response) {
|
||||
$('#server_clientactivity_' + serverId).html(response);
|
||||
})
|
||||
.fail(function (jqxhr, textStatus, error) {
|
||||
$('#server_clientactivity_' + serverId).html("Could not load client activity - " + error);
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
setInterval(refreshClientActivity, 2000);
|
Reference in New Issue
Block a user