3
* EngineGP (https://enginegp.ru or https://enginegp.com)
5
* @copyright Copyright (c) 2018-present Solovev Sergei <inbox@seansolovev.ru>
7
* @link https://github.com/EngineGPDev/EngineGP for the canonical source repository
9
* @license https://github.com/EngineGPDev/EngineGP/blob/main/LICENSE MIT License
13
exit(header('Refresh: 0; URL=http://' . $_SERVER['HTTP_HOST'] . '/404'));
16
$key = $url['key'] ?? exit;
18
if (sys::valid($key, 'md5')) {
22
$sql->query('SELECT `id`, `server`, `time` FROM `graph` WHERE `key`="' . $key . '" LIMIT 1');
30
if (isset($url['type'])) {
31
include(DATA . 'graph.php');
33
include(LIB . 'games/graph.php');
35
$style = $url['style'] ?? 'default';
37
if (!array_key_exists($style, $aStyle)) {
41
$type = $url['type'] ?? 'first';
43
if (!in_array($type, ['first', 'second'])) {
48
if (file_exists(TEMP . (md5($key . $style . $type)) . '.png') and $graph['time'] + 300 > $start_point) {
49
header('Content-type: image/png');
50
exit(file_get_contents(TEMP . (md5($key . $style . $type)) . '.png'));
53
$sql->query('SELECT `address`, `port`, `game`, `slots_start`, `online`, `status`, `name`, `map` FROM `servers` WHERE `id`="' . $graph['server'] . '" LIMIT 1');
58
$server = $sql->get();
60
$aPoints = graph::online_day($graph['server'], $server['slots_start']);
62
// Обновление баннеров
63
foreach ($aStyle as $name => $styles) {
64
graph::first($server, $aPoints, $aStyle, $name, $key);
65
graph::second($server, $aPoints, $aStyle, $name, $key);
69
$sql->query('UPDATE `graph` set `time`="' . $start_point . '" WHERE `id`="' . $graph['id'] . '" LIMIT 1');
71
header('Content-type: image/png');
72
exit(file_get_contents(TEMP . (md5($key . $style . $type)) . '.png'));