]> git.proxmox.com Git - pmg-gui.git/commitdiff
object groups: consistent add/edit/remove button
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 27 Feb 2024 11:36:22 +0000 (12:36 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 27 Feb 2024 11:56:06 +0000 (12:56 +0100)
Group and separate the actions that create or add new elements from
the ones that edit or remove exiting ones.

Throw in some slight refactoring and code modernization while at it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
js/ObjectGroup.js
js/ObjectGroupList.js

index 4fc74edfbbba47172e2e1c14562ca1eddfb1581a..3c8de64c0884a23508aedade4ccd255fa29aeb62 100644 (file)
@@ -201,6 +201,7 @@ Ext.define('PMG.ObjectGroup', {
                        items: menu_items,
                    },
                },
+               '-',
                {
                    xtype: 'proxmoxButton',
                    text: gettext('Edit'),
index 80dedc922ed1ba83084b8e1590334dcbf13511ad..ab66e92c36b1f6fa4ae62d8c4bfeeb3751b5ff9a 100644 (file)
@@ -94,42 +94,41 @@ Ext.define('PMG.ObjectGroupList', {
 
        me.selModel = Ext.create('Ext.selection.RowModel', {});
 
-       var remove_btn = Ext.createWidget('proxmoxStdRemoveButton', {
-           selModel: me.selModel,
-           baseurl: me.baseurl,
-           callback: function() { me.reload(); },
-           getRecordName: function(rec) { return rec.data.name; },
-           waitMsgTarget: me,
-       });
-
        var tbar = [
-            {
-               xtype: 'proxmoxButton',
-               text: gettext('Edit'),
-               disabled: true,
-               selModel: me.selModel,
-               handler: function() { me.run_editor(); },
-            },
             {
                text: gettext('Create'),
                handler: function() {
-                   var config = {
+                   Ext.createWidget('proxmoxWindowEdit', {
                        method: 'POST',
-                       url: "/api2/extjs" + me.baseurl,
+                       url: `/api2/extjs${me.baseurl}`,
                        onlineHelp: 'chapter_mailfilter',
                        isCreate: true,
                        width: 400,
                        subject: me.subject,
                        items: me.inputItems,
-                   };
-
-                   var win = Ext.createWidget('proxmoxWindowEdit', config);
-
-                   win.on('destroy', me.reload, me);
-                   win.show();
+                       autoShow: true,
+                       listeners: {
+                           destroy: () => me.reload(),
+                       },
+                   });
                },
             },
-           remove_btn,
+           '-',
+            {
+               xtype: 'proxmoxButton',
+               text: gettext('Edit'),
+               disabled: true,
+               selModel: me.selModel,
+               handler: () => me.run_editor(),
+            },
+           {
+               xtype: 'proxmoxStdRemoveButton',
+               selModel: me.selModel,
+               baseurl: me.baseurl,
+               callback: () => me.reload(),
+               getRecordName: rec => rec.data.name,
+               waitMsgTarget: me,
+           },
         ];
 
        Proxmox.Utils.monStoreErrors(me, me.store, true);