$(async function() { RequestAPI(); CheckProfile(); }); let servers_active = `

Где сейчас играют карлики

` let servers_inactive = `

Пустуют без дела

` let servers_dead = `

Временно выключены

` let invalid_captcha = `

ДЯДЯ ТЫ ДУРАЧЕК, КАПЧА НЕПРАВИЛЬНАЯ, ЖМИ СНОВА НА КНОПКУ

` function generate_working_server_div(data) { let workshop = `` let direct_url = `` let connect_url = `` ///////////////////// let w_disabled = `` let d_disabled = `` let c_disabled = `` if (data.status == true) { if ("workshop" in data && data.workshop != "") { workshop = data.workshop } else { w_disabled = `disabled` } ///////////////////////////// if ("direct_url" in data && data.direct_url != "") { direct_url = data.direct_url } else { d_disabled = `disabled` } ///////////////////////////// if ("address" in data && data.address != "") { connect_url = data.address } else { c_disabled = `disabled` } } else { w_disabled = `disabled` d_disabled = `disabled` c_disabled = `disabled` } workshop = `
Workshop
` direct_url = `
Скачать карту
` connect_url = `
Подключиться
` return `

${data.name}

${data.player_count}/${data.max_players} ${data.human_name}

${connect_url} ${workshop} ${direct_url}
`; } async function RequestAPI() { //, {headers: {'Cache-Control':'no-cache'}} await fetch("https://tf2.pblr-nyk.pro/api/stats", {headers: {'Cache-Control':'no-cache'}}) .then(res => res.json()) .then(res => { console.log(res.servers.statistic); document.getElementById("current_players").innerHTML = res.servers.statistic.player_now; document.getElementById("max_per_day").innerHTML = res.servers.statistic.player_max; document.getElementById("servers_works").innerHTML = res.servers.statistic.working_servers + '/' + res.servers.statistic.total_servers; document.getElementById("uniq_day_players").innerHTML = res.uniq.day; document.getElementById("uniq_month_players").innerHTML = res.uniq.month; document.getElementById("uniq_year_players").innerHTML = res.uniq.year; let active = false; let inactive = false; let dead = false; let insert_type = "beforeend"; //active servers let sorted_servers = Object.keys(res.servers).sort((a, b) => { return res.servers[b].player_count - res.servers[a].player_count; }); console.log(sorted_servers); for (let sort_id in sorted_servers) { let server = sorted_servers[sort_id]; if (server == `statistic`) {continue;} if(res.servers[server].status == true && res.servers[server].player_count > 0) { if(!active) { document.getElementById("servers_list").insertAdjacentHTML(insert_type,servers_active) active = true; } document.getElementById("servers_list").insertAdjacentHTML(insert_type,generate_working_server_div(res.servers[server])); } } //inactive server for (const server in res.servers) { if (server == `statistic`) {continue;} if(res.servers[server].status == true && res.servers[server].player_count == 0) { if(!inactive) { document.getElementById("servers_list").insertAdjacentHTML(insert_type,servers_inactive) inactive = true; } document.getElementById("servers_list").insertAdjacentHTML(insert_type,generate_working_server_div(res.servers[server])); } } //dead server for (const server in res.servers) { if (server == `statistic`) {continue;} if(res.servers[server].status == false) { if(!dead) { document.getElementById("servers_list").insertAdjacentHTML(insert_type,servers_dead) dead = true; } document.getElementById("servers_list").insertAdjacentHTML(insert_type,generate_working_server_div(res.servers[server])); } } }); } function UNIX2TIMESTAMP(unix) { return new Date(unix * 1000); }