EngineGP/system/engine/control.php

72 lines
2.7 KiB
PHP
Raw Normal View History

2023-03-04 23:45:46 +00:00
<?php
2023-03-05 13:59:34 +00:00
if(!DEFINED('EGP'))
exit(header('Refresh: 0; URL=http://'.$_SERVER['SERVER_NAME'].'/404'));
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
// Проверка на авторизацию
sys::noauth();
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$title = 'Список подключенных серверов';
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
include(LIB.'control/control.php');
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
if($id)
{
if($user['group'] == 'admin')
$sql->query('SELECT `id`, `user`, `status`, `time` FROM `control` WHERE `id`="'.$id.'" LIMIT 1');
else
$sql->query('SELECT `id`, `user`, `status`, `time` FROM `control` WHERE `id`="'.$id.' AND `user`="'.$user['id'].'" LIMIT 1');
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
if(!$sql->num())
{
if($go)
sys::outjs(array('e' => 'Сервер #'.$id.' не найден'));
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
sys::back($cfg['http'].'control');
}
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$ctrl = $sql->get();
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
if(in_array($ctrl['status'], array('install', 'overdue', 'blocked', 'reboot')) && !in_array($section, array('extend', 'scan')))
include(SEC.'control/noaccess.php');
else{
if(!$section)
$section = 'index';
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$sid = array_key_exists('server', $url) ? sys::int($url['server']) : false;
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
if($sid)
include(SEC.'control/servers/'.$section.'.php');
else
include(SEC.'control/'.$section.'.php');
}
}else{
$html->nav($title);
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$js = '';
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$ctrls = $sql->query('SELECT `id`, `address`, `passwd`, `time`, `date`, `status` FROM `control` WHERE `user`="'.$user['id'].'"');
while($ctrl = $sql->get($ctrls))
{
$time_end = $ctrl['status'] == 'overdue' ? 'Удаление через: '.sys::date('min', $ctrl['overdue']+$cfg['control_delete']*86400) : 'Осталось: '.sys::date('min', $ctrl['time']);
$btn = ctrl::buttons($ctrl['id'], $ctrl['status']);
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$html->get('control', 'sections/control');
$html->set('id', $ctrl['id']);
$html->set('address', $ctrl['address']);
$html->set('passwd', $ctrl['passwd']);
$html->set('time', sys::today($ctrl['time']));
$html->set('date', sys::today($ctrl['date']));
$html->set('time_end', $time_end);
$html->set('status', ctrl::status($ctrl['status']));
$html->set('btn', $btn);
$html->pack('list');
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$js .= 'update_resources('.$ctrl['id'].', true);';
}
2023-03-04 23:45:46 +00:00
2023-03-05 13:59:34 +00:00
$html->get('controls', 'sections/control');
$html->set('list', isset($html->arr['list']) ? $html->arr['list'] : 'У вас нет подключенных серверов', true);
$html->set('updates_control', $js);
$html->pack('main');
}
2023-03-04 23:45:46 +00:00
?>