MediaWiki:Common.js: различия между версиями
Kerisar (обсуждение | вклад) м Отмена версии 102926, сделанной Kerisar (обсуждение) Метка: отмена |
Kerisar (обсуждение | вклад) м пробуем через fetch |
||
| Строка 34: | Строка 34: | ||
const serversStatus = [{ | const serversStatus = [{ | ||
name: "server-main", | name: "server-main", | ||
connect: " | connect: "https://game2.station14.ru/main/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/main/server" | serverconnect: "ss14s://game2.station14.ru/main/server" | ||
}, { | }, { | ||
name: "server-nova", | name: "server-nova", | ||
connect: " | connect: "https://game2.station14.ru/nova/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/nova/server" | serverconnect: "ss14s://game2.station14.ru/nova/server" | ||
}, { | }, { | ||
name: "server-athara", | name: "server-athara", | ||
connect: " | connect: "https://game2.station14.ru/athara/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/athara/server" | serverconnect: "ss14s://game2.station14.ru/athara/server" | ||
}, { | }, { | ||
name: "server-solaris", | name: "server-solaris", | ||
connect: " | connect: "https://game2.station14.ru/solaris/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/solaris/server" | serverconnect: "ss14s://game2.station14.ru/solaris/server" | ||
}, { | }, { | ||
name: "server-echo", | name: "server-echo", | ||
connect: " | connect: "https://game2.station14.ru/echo/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/echo/server" | serverconnect: "ss14s://game2.station14.ru/echo/server" | ||
}, { | }, { | ||
name: "server-elysium", | name: "server-elysium", | ||
connect: " | connect: "https://game2.station14.ru/elysium/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/elysium/server" | serverconnect: "ss14s://game2.station14.ru/elysium/server" | ||
}, { | }, { | ||
name: "server-nebula", | name: "server-nebula", | ||
connect: " | connect: "https://game2.station14.ru/nebula/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/nebula/server" | serverconnect: "ss14s://game2.station14.ru/nebula/server" | ||
}, { | }, { | ||
name: "server-wl", | name: "server-wl", | ||
connect: " | connect: "https://game2.station14.ru/wl/server/status", | ||
serverconnect: "ss14s://game2.station14.ru/wl/server" | serverconnect: "ss14s://game2.station14.ru/wl/server" | ||
}, { | }, { | ||
name: "server-frontier", | name: "server-frontier", | ||
connect: " | connect: "corvaxforge.ru/server/frontier/status", | ||
serverconnect: "ss14s://corvaxforge.ru/server/frontier" | serverconnect: "ss14s://corvaxforge.ru/server/frontier" | ||
}, { | }, { | ||
name: "server-fallout", | name: "server-fallout", | ||
connect: " | connect: "corvaxforge.ru/server/fallout/status", | ||
serverconnect: "ss14s://corvaxforge.ru/server/fallout" | serverconnect: "ss14s://corvaxforge.ru/server/fallout" | ||
}, { | }, { | ||
name: "server-marines", | name: "server-marines", | ||
connect: " | connect: "https://game1.station14.ru/marines-main/server/status", | ||
serverconnect: "ss14s://game1.station14.ru/marines-main/server" | serverconnect: "ss14s://game1.station14.ru/marines-main/server" | ||
}, { | }, { | ||
name: "server-wega", | name: "server-wega", | ||
connect: " | connect: "https://arles.station14.ru/wega-main/server/status", | ||
serverconnect: "ss14s://arles.station14.ru/wega-main/server" | serverconnect: "ss14s://arles.station14.ru/wega-main/server" | ||
} | } | ||
]; | ]; | ||
function | function fetchServerInfo(url) { | ||
return fetch(url, { | |||
credentials: 'omit' // 'include' если нужны куки | |||
}) | |||
.then(response => { | |||
if (!response.ok) throw new Error(`HTTP error ${response.status}`); | |||
return response.json(); | |||
}); | |||
} | } | ||
function updateServerInfoByConnect(connect, name) { | function updateServerInfoByConnect(connect, name) { | ||
getServerTime().then(function(currentUnixTime) { | getServerTime().then(function(currentUnixTime) { | ||
return | return fetchServerInfo(connect).then(function(serverData) { | ||
var unixStartRound = getUnixTime(serverData.round_start_time); | var unixStartRound = getUnixTime(serverData.round_start_time); | ||
var timeDisplay = unixStartRound ? secondsToDHM(currentUnixTime - unixStartRound) : "–"; | var timeDisplay = unixStartRound ? secondsToDHM(currentUnixTime - unixStartRound) : "–"; | ||