Jump to content

MediaWiki:Common.js: Difference between revisions

From Pack.png Beta 1.7.3 Wiki
No edit summary
No edit summary
Line 1: Line 1:
console.log("asd")
document.addEventListener('DOMContentLoaded', function () {
document.addEventListener('DOMContentLoaded', function () {
     var container = document.getElementById('maxPlayerChart');
     const script = document.createElement('script');
    console.log("Hello", container);
 
    var canvas = document.createElement('canvas');
    canvas.id = 'maxPlayerChartCanvas';
    canvas.width = 600;
    canvas.height = 400;
    container.appendChild(canvas);
 
    var script = document.createElement('script');
     script.src = 'https://cdn.jsdelivr.net/npm/chart.js';
     script.src = 'https://cdn.jsdelivr.net/npm/chart.js';
    script.onload = () => {
        const ctx1 = document.getElementById("maxPlayerChart");
        console.log("a")
       
        if (!ctx1) return;


    script.onload = function () {
        const init1 = async () => {
        var ctx1 = document.getElementById("maxPlayerChartCanvas");
            const response = await fetch("https://goldenage.keii.dev/api/servers/1/statistics/max-player-count");
        if (!ctx1) return;
             const result = await response.json();
 
            const data = result["data"];
        // Use XMLHttpRequest instead of fetch
        var xhr = new XMLHttpRequest();
        xhr.open("GET", "https://goldenage.keii.dev/api/servers/1/statistics/max-player-count", true);
        xhr.onreadystatechange = function () {
             if (xhr.readyState === 4 && xhr.status === 200) {
                var result = JSON.parse(xhr.responseText);
                var data = result["data"];


                new Chart(ctx1, {
            new Chart(ctx1, {
                    type: "line",
                type: "line",
                    data: {
                data: {
                        labels: data.map(function (row) {
                    labels: data.map((row) => new Date(row.Date).toDateString()),
                            return new Date(row.Date).toDateString();
                    datasets: [
                        }),
                        {
                        datasets: [{
                             label: "Max Player Count",
                             label: "Max Player Count",
                             data: data.map(function (row) {
                             data: data.map((row) => row.MaxPlayerCount),
                                return row.MaxPlayerCount;
                             borderWidth: 1,
                            }),
                         },
                             borderWidth: 1
                    ],
                         }]
                },
                options: {
                    scales: {
                        y: {
                            beginAtZero: true,
                        },
                     },
                     },
                    options: {
                },
                        scales: {
            });
                            y: {
                                beginAtZero: true
                            }
                        }
                    }
                });
            }
         };
         };
         xhr.send();
 
         init1();
     };
     };


     document.head.appendChild(script);
     document.head.appendChild(script);
});
});

Revision as of 11:19, 31 July 2025

console.log("asd")
document.addEventListener('DOMContentLoaded', function () {
    const script = document.createElement('script');
    script.src = 'https://cdn.jsdelivr.net/npm/chart.js';
    script.onload = () => {
        const ctx1 = document.getElementById("maxPlayerChart");
        console.log("a")
        
        if (!ctx1) return; 

        const init1 = async () => {
            const response = await fetch("https://goldenage.keii.dev/api/servers/1/statistics/max-player-count");
            const result = await response.json();
            const data = result["data"];

            new Chart(ctx1, {
                type: "line",
                data: {
                    labels: data.map((row) => new Date(row.Date).toDateString()),
                    datasets: [
                        {
                            label: "Max Player Count",
                            data: data.map((row) => row.MaxPlayerCount),
                            borderWidth: 1,
                        },
                    ],
                },
                options: {
                    scales: {
                        y: {
                            beginAtZero: true,
                        },
                    },
                },
            });
        };

        init1();
    };

    document.head.appendChild(script);
});