import axios from "axios"; import AdminApi from "@/api/AdminApi"; export default class GlobalApi { stats = { 'statistic':null, 'servers': null, 'uniq': null } loading = false; admin = new AdminApi() constructor() { } async fillThis(value) { console.log(`[API] load: ${value}`); return await axios.get(`/api/stats?filter=${value}`) .then(response => response.data) .then(response => { this.stats[value] = response[value]; }) .catch(err => { console.log(`[API] cannot request ${value}, err: ${err}`); }) } async fillServers() { console.log(`[API] load: servers`); return axios.get("/api/stats?filter=servers") .then(response => response.data['servers']) .then(response => { let srvs = { 'w':[], "e":[], 'n':[] }; for (let srv in response) { if (response[srv]['status'] == false) srvs.n.push(response[srv]); else if (response[srv]['player_count'] > 0) srvs.w.push(response[srv]); else srvs.e.push(response[srv]); } this.stats['servers'] = srvs; }) .catch(err => { console.log(`[API] cannot request servers, err: ${err}`); }); } async load() { this.loading = true; await this.fillThis('statistic'); await this.fillThis('uniq'); await this.fillServers(); await this.admin.load(); this.loading = false; } getRandomBackground() { const backgrounds = [ require('../assets/images/backgrounds/1.png'), require('../assets/images/backgrounds/2.png'), require('../assets/images/backgrounds/3.png'), require('../assets/images/backgrounds/4.png') ]; return backgrounds[Math.floor(Math.random() * backgrounds.length)]; } getRules(){ return [ [{"name":"Читы", "about":"Бан навсегда сука", "image": require('@/assets/images/rules/cheats.jpg')}, {"name":"Реклама серверов", "about":"Кроме мге, бан навсегда сука", "image": require('@/assets/images/rules/ads.jpg')}, {"name":"Багоюз", "about":"Пиздец тебе, бан навсегда", "image": require('@/assets/images/rules/bug_use.jpg')}], [{"name":"Абуз команды !mir", "about":"Блокировка дверей, открытие спавна и т.д", "image":require('@/assets/images/rules/abuse.jpg')}, {"name":"Абуз випки на сервере", "about":"Модеры сам решат как и за что", "image":require('@/assets/images/rules/abuse_vip.jpg')}, {"name":"Делай короче чё хочешь", "about":":troll_face:", "image":require('@/assets/images/rules/make_everyone.jpg')}] ]; } }