all lists on lists.proxmox.com
 help / color / mirror / Atom feed
* [pve-devel] [PATCH manager 1/4] ui: hide 'no tags' field and edit icon without VM.Config.Options
@ 2022-11-18 11:59 Dominik Csapak
  2022-11-18 11:59 ` [pve-devel] [PATCH manager 2/4] ui: tags: shortcut accept&cancel with keypresses Dominik Csapak
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Dominik Csapak @ 2022-11-18 11:59 UTC (permalink / raw)
  To: pve-devel

they cannot edit them anyway, so no point in showing them that
there is no tag

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
 www/manager6/form/TagEdit.js | 12 ++++++++++--
 www/manager6/lxc/Config.js   |  1 +
 www/manager6/qemu/Config.js  |  1 +
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/www/manager6/form/TagEdit.js b/www/manager6/form/TagEdit.js
index d4428e029..23b75acc7 100644
--- a/www/manager6/form/TagEdit.js
+++ b/www/manager6/form/TagEdit.js
@@ -7,6 +7,9 @@ Ext.define('PVE.panel.TagEditContainer', {
 	align: 'middle',
     },
 
+    // set to false to hide the 'no tags' field and the edit button
+    canEdit: true,
+
     controller: {
 	xclass: 'Ext.app.ViewController',
 
@@ -241,6 +244,7 @@ Ext.define('PVE.panel.TagEditContainer', {
 	    if (view.tags) {
 		me.loadTags(view.tags);
 	    }
+	    me.getViewModel().set('canEdit', view.canEdit);
 
 	    me.mon(Ext.GlobalEvents, 'loadedUiOptions', () => {
 		view.toggleCls('hide-handles', PVE.Utils.shouldSortTags());
@@ -253,11 +257,15 @@ Ext.define('PVE.panel.TagEditContainer', {
 	data: {
 	    tagCount: 0,
 	    editMode: false,
+	    canEdit: true,
 	},
 
 	formulas: {
 	    hideNoTags: function(get) {
-		return get('tagCount') !== 0;
+		return get('tagCount') !== 0 || !get('canEdit');
+	    },
+	    hideEditBtn: function(get) {
+		return get('editMode') || !get('canEdit');
 	    },
 	},
     },
@@ -326,7 +334,7 @@ Ext.define('PVE.panel.TagEditContainer', {
 	    cls: 'pve-tag-inline-button',
 	    html: `<i data-qtip="${gettext('Edit Tags')}" class="fa fa-pencil"></i>`,
 	    bind: {
-		hidden: '{editMode}',
+		hidden: '{hideEditBtn}',
 	    },
 	    listeners: {
 		click: 'editClick',
diff --git a/www/manager6/lxc/Config.js b/www/manager6/lxc/Config.js
index f33390513..23c17d2ea 100644
--- a/www/manager6/lxc/Config.js
+++ b/www/manager6/lxc/Config.js
@@ -186,6 +186,7 @@ Ext.define('PVE.lxc.Config', {
 
 	let tagsContainer = Ext.create('PVE.panel.TagEditContainer', {
 	    tags: vm.tags,
+	    canEdit: !!caps.vms['VM.Config.Options'],
 	    listeners: {
 		change: function(tags) {
 		    Proxmox.Utils.API2Request({
diff --git a/www/manager6/qemu/Config.js b/www/manager6/qemu/Config.js
index 5c8fa620d..94c540c59 100644
--- a/www/manager6/qemu/Config.js
+++ b/www/manager6/qemu/Config.js
@@ -222,6 +222,7 @@ Ext.define('PVE.qemu.Config', {
 
 	let tagsContainer = Ext.create('PVE.panel.TagEditContainer', {
 	    tags: vm.tags,
+	    canEdit: !!caps.vms['VM.Config.Options'],
 	    listeners: {
 		change: function(tags) {
 		    Proxmox.Utils.API2Request({
-- 
2.30.2





^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2022-11-18 15:40 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-11-18 11:59 [pve-devel] [PATCH manager 1/4] ui: hide 'no tags' field and edit icon without VM.Config.Options Dominik Csapak
2022-11-18 11:59 ` [pve-devel] [PATCH manager 2/4] ui: tags: shortcut accept&cancel with keypresses Dominik Csapak
2022-11-18 11:59 ` [pve-devel] [PATCH manager 3/4] ui: tags: implement dirty tracking for inline editing Dominik Csapak
2022-11-18 11:59 ` [pve-devel] [PATCH manager 4/4] ui: tags: highlight finish inline editing button Dominik Csapak
2022-11-18 15:40 ` [pve-devel] applied-series: [PATCH manager 1/4] ui: hide 'no tags' field and edit icon without VM.Config.Options Thomas Lamprecht

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal