Signed-off-by: Thomas Lamprecht <t.lampre...@proxmox.com>
---

changes v1 -> v2:
* add 'allowBlank: false' to cluster name field, it's required by the API
  (Dominik)

 www/manager6/Makefile          |  1 +
 www/manager6/dc/Cluster.js     | 23 +++++++++++++++++++++++
 www/manager6/dc/ClusterEdit.js | 32 ++++++++++++++++++++++++++++++++
 3 files changed, 56 insertions(+)
 create mode 100644 www/manager6/dc/ClusterEdit.js

diff --git a/www/manager6/Makefile b/www/manager6/Makefile
index 0796aa2c..6daa259f 100644
--- a/www/manager6/Makefile
+++ b/www/manager6/Makefile
@@ -194,6 +194,7 @@ JSSRC=                                                      
\
        dc/Config.js                                    \
        dc/NodeView.js                                  \
        dc/Cluster.js                                   \
+       dc/ClusterEdit.js                               \
        Workspace.js
 
 lint: ${JSSRC}
diff --git a/www/manager6/dc/Cluster.js b/www/manager6/dc/Cluster.js
index 10e25bf0..c38a2da5 100644
--- a/www/manager6/dc/Cluster.js
+++ b/www/manager6/dc/Cluster.js
@@ -90,7 +90,30 @@ Ext.define('PVE.ClusterAdministration', {
                        fp: nodeinfo.pve_fp
                    });
                },
+
+               onCreate: function() {
+                   var view = this.getView();
+                   view.store.stopUpdate();
+                   var win = Ext.create('PVE.ClusterCreateWindow', {
+                       autoShow: true,
+                       listeners: {
+                           destroy: function() {
+                               view.store.startUpdate();
+                           }
+                       }
+                   });
+               }
            },
+           tbar: [
+               {
+                   text: gettext('Create Cluster'),
+                   reference: 'createButton',
+                   handler: 'onCreate',
+                   bind: {
+                       disabled: '{isInCluster}'
+                   }
+               }
+           ],
            layout: 'hbox',
            bodyPadding: 5,
            items: [
diff --git a/www/manager6/dc/ClusterEdit.js b/www/manager6/dc/ClusterEdit.js
new file mode 100644
index 00000000..cef35f7c
--- /dev/null
+++ b/www/manager6/dc/ClusterEdit.js
@@ -0,0 +1,32 @@
+/*jslint confusion: true*/
+Ext.define('PVE.ClusterCreateWindow', {
+    extend: 'Proxmox.window.Edit',
+    xtype: 'pveClusterCreateWindow',
+
+    title: gettext('Create Cluster'),
+    width: 600,
+
+    method: 'POST',
+    url: '/cluster/config',
+
+    isCreate: true,
+    subject: gettext('Cluster'),
+    showTaskViewer: true,
+
+    items: [
+       {
+           xtype: 'textfield',
+           fieldLabel: gettext('Cluster Name'),
+           allowBlank: false,
+           name: 'clustername'
+       },
+       {
+           xtype: 'proxmoxtextfield',
+           fieldLabel: gettext('Ring 0 Address'),
+           emptyText: gettext("Optional, defaults to IP resolved by node's 
hostname"),
+           name: 'ring0_addr',
+           skipEmptyText: true
+       }
+       // TODO: for advanced options: ring1_addr
+    ]
+});
-- 
2.14.2


_______________________________________________
pve-devel mailing list
pve-devel@pve.proxmox.com
https://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel

Reply via email to