summaryrefslogtreecommitdiffstats
path: root/modules-available/systemstatus/page.inc.php
diff options
context:
space:
mode:
Diffstat (limited to 'modules-available/systemstatus/page.inc.php')
-rw-r--r--modules-available/systemstatus/page.inc.php21
1 files changed, 18 insertions, 3 deletions
diff --git a/modules-available/systemstatus/page.inc.php b/modules-available/systemstatus/page.inc.php
index 8a0e5f87..04423eaf 100644
--- a/modules-available/systemstatus/page.inc.php
+++ b/modules-available/systemstatus/page.inc.php
@@ -15,8 +15,10 @@ class Page_SystemStatus extends Page
}
if (Request::post('action') === 'reboot') {
+ User::assertPermission("serverreboot");
$this->rebootTask = Taskmanager::submit('Reboot');
}
+ User::assertPermission('*');
}
protected function doRender()
@@ -30,9 +32,11 @@ class Page_SystemStatus extends Page
foreach ($tabs as $tab) {
$data['tabs'][] = array(
'type' => $tab,
- 'name' => Dictionary::translate('tab_' . $tab)
+ 'name' => Dictionary::translate('tab_' . $tab),
+ 'enabled' => User::hasPermission('tab.' . $tab),
);
}
+ Permission::addGlobalTags($data['perms'], null, ['serverreboot']);
Render::addTemplate('_page', $data);
}
@@ -54,6 +58,7 @@ class Page_SystemStatus extends Page
protected function ajaxDmsdUsers()
{
+ User::assertPermission("show.overview.dmsdusers");
$ret = Download::asStringPost('http://127.0.0.1:9080/status/fileserver', false, 2, $code);
$args = array();
if ($code != 200) {
@@ -75,6 +80,7 @@ class Page_SystemStatus extends Page
protected function ajaxDiskStat()
{
+ User::assertPermission("show.overview.diskstat");
$task = Taskmanager::submit('DiskStat');
if ($task === false)
return;
@@ -136,6 +142,7 @@ class Page_SystemStatus extends Page
protected function ajaxAddressList()
{
+ User::assertPermission("show.overview.addresses");
$task = Taskmanager::submit('LocalAddressesList');
if ($task === false)
return;
@@ -178,6 +185,7 @@ class Page_SystemStatus extends Page
protected function ajaxSystemInfo()
{
+ User::assertPermission("show.overview.systeminfo");
$cpuInfo = file_get_contents('/proc/cpuinfo');
$uptime = file_get_contents('/proc/uptime');
$cpuCount = preg_match_all('/\bprocessor\s/', $cpuInfo, $out);
@@ -201,7 +209,7 @@ class Page_SystemStatus extends Page
$data['swapTotal'] = Util::readableFileSize($info['SwapTotal'] * 1024);
$data['swapUsed'] = Util::readableFileSize(($info['SwapTotal'] - $info['SwapFree']) * 1024);
$data['swapPercent'] = 100 - round(($info['SwapFree'] / $info['SwapTotal']) * 100);
- $data['swapWarning'] = ($data['swapPercent'] > 50 || ($info['SwapTotal'] - $info['SwapFree']) > 200000);
+ $data['swapWarning'] = ($data['swapPercent'] > 50 || $info['SwapFree'] < 400000);
}
if (isset($info['CpuIdle']) && isset($info['CpuSystem']) && isset($info['CpuTotal'])) {
$data['cpuLoad'] = 100 - round(($info['CpuIdle'] / $info['CpuTotal']) * 100);
@@ -215,6 +223,7 @@ class Page_SystemStatus extends Page
protected function ajaxSysPoll()
{
+ User::assertPermission("show.overview.systeminfo");
$info = $this->sysInfo();
$data = array(
'CpuTotal' => $info['CpuTotal'],
@@ -228,10 +237,11 @@ class Page_SystemStatus extends Page
protected function ajaxServices()
{
+ User::assertPermission("show.overview.services");
$data = array('services' => array());
$tasks = array();
- $todo = ['dmsd', 'atftpd'];
+ $todo = ['dmsd', 'tftpd-hpa'];
if (Module::isAvailable('dnbd3') && Dnbd3::isEnabled()) {
$todo[] = 'dnbd3-server';
}
@@ -275,6 +285,7 @@ class Page_SystemStatus extends Page
protected function ajaxDmsdLog()
{
+ User::assertPermission("tab.dmsdlog");
$fh = @fopen('/var/log/dmsd.log', 'r');
if ($fh === false) {
echo 'Error opening log file';
@@ -307,6 +318,7 @@ class Page_SystemStatus extends Page
protected function ajaxLighttpdLog()
{
+ User::assertPermission("tab.lighttpdlog");
$fh = @fopen('/var/log/lighttpd/error.log', 'r');
if ($fh === false) {
echo 'Error opening log file';
@@ -339,6 +351,7 @@ class Page_SystemStatus extends Page
protected function ajaxLdadpLog()
{
+ User::assertPermission("tab.ldadplog");
$haveSysconfig = Module::isAvailable('sysconfig');
$files = glob('/var/log/ldadp/*.log', GLOB_NOSORT);
if ($files === false || empty($files)) echo('No logs found');
@@ -377,6 +390,7 @@ class Page_SystemStatus extends Page
protected function ajaxNetstat()
{
+ User::assertPermission("tab.netstat");
$taskId = Taskmanager::submit('Netstat');
if ($taskId === false)
return;
@@ -392,6 +406,7 @@ class Page_SystemStatus extends Page
protected function ajaxPsList()
{
+ User::assertPermission("tab.pslist");
$taskId = Taskmanager::submit('PsList');
if ($taskId === false)
return;