diff options
author | Udo Walter | 2017-12-28 15:57:15 +0100 |
---|---|---|
committer | Udo Walter | 2017-12-28 15:57:15 +0100 |
commit | 5490ff0691472f08ae56fa46c36cb293771dc25f (patch) | |
tree | 43c55dcd4c7b5387f31b9c1672a3e5c15a13df47 /modules-available/vmstore/page.inc.php | |
parent | [serversetup-bwlp] added permissions to edit boot address and menu and (diff) | |
download | slx-admin-5490ff0691472f08ae56fa46c36cb293771dc25f.tar.gz slx-admin-5490ff0691472f08ae56fa46c36cb293771dc25f.tar.xz slx-admin-5490ff0691472f08ae56fa46c36cb293771dc25f.zip |
[vmstore] added permissions to choose internal, nfs or cifs vm storage
Diffstat (limited to 'modules-available/vmstore/page.inc.php')
-rw-r--r-- | modules-available/vmstore/page.inc.php | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/modules-available/vmstore/page.inc.php b/modules-available/vmstore/page.inc.php index 3314bfe2..c3d5da77 100644 --- a/modules-available/vmstore/page.inc.php +++ b/modules-available/vmstore/page.inc.php @@ -8,7 +8,7 @@ class Page_VmStore extends Page { User::load(); - if (!User::hasPermission('superadmin')) { + if (!User::isLoggedIn()) { Message::addError('main.no-permission'); Util::redirect('?do=Main'); } @@ -33,6 +33,10 @@ class Page_VmStore extends Page if (isset($vmstore['storetype'])) { $vmstore['pre-' . $vmstore['storetype']] = 'checked'; } + $vmstore['internalAllowed'] = User::hasPermission("choose.internal"); + $vmstore['nfsAllowed'] = User::hasPermission("choose.nfs"); + $vmstore['cifsAllowed'] = User::hasPermission("choose.cifs"); + $vmstore['saveAllowed'] = $vmstore['internalAllowed'] || $vmstore['nfsAllowed'] || $vmstore['cifsAllowed']; Render::addTemplate('page-vmstore', $vmstore); } @@ -47,6 +51,12 @@ class Page_VmStore extends Page Message::addError('main.value-invalid', 'type', $storetype); Util::redirect('?do=VmStore'); } + if (($storetype === 'internal' && !User::hasPermission("choose.internal")) || + ($storetype === 'nfs' && !User::hasPermission("choose.nfs")) || + ($storetype === 'cifs' && !User::hasPermission("choose.cifs"))) { + Message::addError('main.no-permission'); + Util::redirect('?do=VmStore'); + } // Validate syntax of nfs/cifs if ($storetype === 'nfs' && !preg_match('#^\S+:\S+$#is', $vmstore['nfsaddr'])) { Message::addError('main.value-invalid', 'nfsaddr', $vmstore['nfsaddr']); |