]> git.proxmox.com Git - pve-manager.git/commitdiff
fix #1814: do not enable disk related buttons for audit user
authorDominik Csapak <d.csapak@proxmox.com>
Tue, 9 Apr 2019 11:56:56 +0000 (13:56 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Wed, 10 Apr 2019 07:50:05 +0000 (09:50 +0200)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
www/manager6/lxc/Resources.js
www/manager6/qemu/HardwareView.js

index 65e4f641dc93a23db6360d0a532ee3d7d155f89c..f2c8d05d7ee9985fb87847d3d63962743638df0b 100644 (file)
@@ -31,6 +31,7 @@ Ext.define('PVE.lxc.RessourceView', {
        }
 
        var caps = Ext.state.Manager.get('GuiCap');
+       var diskCap = caps.vms['VM.Config.Disk'];
 
        var mpeditor = caps.vms['VM.Config.Disk'] ? 'PVE.lxc.MountPointEdit' : undefined;
 
@@ -238,9 +239,9 @@ Ext.define('PVE.lxc.RessourceView', {
            }
            edit_btn.setDisabled(noedit);
 
-           remove_btn.setDisabled(!isDisk || rec.data.key === 'rootfs');
-           resize_btn.setDisabled(!isDisk);
-           move_btn.setDisabled(!isDisk);
+           remove_btn.setDisabled(!isDisk || rec.data.key === 'rootfs' || !diskCap);
+           resize_btn.setDisabled(!isDisk || !diskCap);
+           move_btn.setDisabled(!isDisk || !diskCap);
 
        };
        
@@ -277,6 +278,7 @@ Ext.define('PVE.lxc.RessourceView', {
            tbar: [
                {
                    text: gettext('Add'),
+                   disabled: !diskCap,
                    menu: new Ext.menu.Menu({
                        items: [
                            {
index ba588e3751d3040a09f0e98ab569835baf72ae5d..f60ac7e3a0f9983e2443faa65cf9cf3cb2c80386 100644 (file)
@@ -51,6 +51,7 @@ Ext.define('PVE.qemu.HardwareView', {
        }
 
        var caps = Ext.state.Manager.get('GuiCap');
+       var diskCap = caps.vms['VM.Config.Disk'];
 
        /*jslint confusion: true */
        var rows = {
@@ -325,6 +326,9 @@ Ext.define('PVE.qemu.HardwareView', {
 
            var editor = rowdef.editor;
            if (rowdef.tdCls == 'pve-itype-icon-storage') {
+               if (!diskCap) {
+                   return;
+               }
                var value = me.getObjectValue(rec.data.key, '', true); 
                if (value.match(/vm-.*-cloudinit/)) {
                    return;
@@ -581,15 +585,15 @@ Ext.define('PVE.qemu.HardwareView', {
 
            var isEfi = (key === 'efidisk0');
 
-           remove_btn.setDisabled(rec.data['delete'] || (rowdef.never_delete === true));
+           remove_btn.setDisabled(rec.data['delete'] || (rowdef.never_delete === true) || (isUnusedDisk && !diskCap));
            remove_btn.setText((isUsedDisk && !isCloudInit) ? remove_btn.altText : remove_btn.defaultText);
            remove_btn.RESTMethod = isUnusedDisk ? 'POST':'PUT';
 
-           edit_btn.setDisabled(rec.data['delete'] || !rowdef.editor || isCloudInit);
+           edit_btn.setDisabled(rec.data['delete'] || !rowdef.editor || isCloudInit || !diskCap);
 
-           resize_btn.setDisabled(pending || !isUsedDisk);
+           resize_btn.setDisabled(pending || !isUsedDisk || !diskCap);
 
-           move_btn.setDisabled(pending || !isUsedDisk);
+           move_btn.setDisabled(pending || !isUsedDisk || !diskCap);
 
            revert_btn.setDisabled(!pending);