You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

80 lines
3.1 KiB

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')}]
];
}
}