Перейти к содержанию

MediaWiki:Common.js: различия между версиями

Материал из GravityWiki
Нет описания правки
Нет описания правки
Строка 2: Строка 2:
$(function() {
$(function() {
     mw.hook('wikipage.content').add(function() {
     mw.hook('wikipage.content').add(function() {
        let personalTools = $('.vector-sticky-pinned-container');
          
          
         let xhr = new XMLHttpRequest();
         let xhr = new XMLHttpRequest();
Строка 10: Строка 9:
          
          
         xhr.onload = function() {
         xhr.onload = function() {
        let personalTools = $('.vector-sticky-pinned-container');
       
let responseObj = xhr.response;
let responseObj = xhr.response;
console.log(responseObj)
console.log(responseObj)
        let sidebarWrapper = $('<div class="sidebar__wrapper"></div>');
        let sidebarWrapper = $('<div class="sidebar__wrapper" style="display: none;"></div>');
       
        let monitoringWrapper = $('<div class="monitoring__wrapper"></div>');
       
        for (version in responseObj.monitoring.servers) {
        for (serverObj of responseObj.monitoring.servers[version]) {
        monitoringWrapper.append(`
        <div class="server__wrapper">
        <img src="${serverObj.icon}" alt="serverIcon" />
        <div class="server__info">
        <div class="server__info-title">${serverObj.name}</div>
        <div class="server__info-version">${serverObj.version}</div>
        </div>
        <div class="server__online">
        ${serverObj.online}
        </div>
        </div>
        `);
        }
        }
       
        personalTools.last().append(customTools);
        personalTools.last().append(customTools);
};
};

Версия от 21:35, 15 октября 2025

/* Размещённый здесь код JavaScript будет загружаться пользователям при обращении к каждой странице */
$(function() {
    mw.hook('wikipage.content').add(function() {
        
        let xhr = new XMLHttpRequest();
        xhr.open("GET", "https://gravitycraft.ru/api/external/v1/sidebar-info", true);
        xhr.responseType = 'json';
        xhr.send();
        
        xhr.onload = function() {
        	let personalTools = $('.vector-sticky-pinned-container');
        	
			let responseObj = xhr.response;
			console.log(responseObj)
	        let sidebarWrapper = $('<div class="sidebar__wrapper" style="display: none;"></div>');
	        
	        let monitoringWrapper = $('<div class="monitoring__wrapper"></div>');
	        
	        for (version in responseObj.monitoring.servers) {
	        	for (serverObj of responseObj.monitoring.servers[version]) {
		        	monitoringWrapper.append(`
		        		<div class="server__wrapper">
		        			<img src="${serverObj.icon}" alt="serverIcon" />
		        			<div class="server__info">
		        				<div class="server__info-title">${serverObj.name}</div>
		        				<div class="server__info-version">${serverObj.version}</div>
		        			</div>
		        			<div class="server__online">
		        				${serverObj.online}
		        			</div>
		        		</div>
		        	`);
	        	}
	        }
	        
	        personalTools.last().append(customTools);
		};
        
        
            
    });
});