]> git.proxmox.com Git - pve-manager.git/blobdiff - www/manager6/ceph/Pool.js
use windowEdit from widget toolkit
[pve-manager.git] / www / manager6 / ceph / Pool.js
index bf8cf8a9a1e85ffc48fb7cb39eea5dd27d50e00f..d02eedde99faad45eaf6d863dc38cb5ddb308cf8 100644 (file)
@@ -1,6 +1,9 @@
 Ext.define('PVE.CephCreatePool', {
-    extend: 'PVE.window.Edit',
-    alias: ['widget.pveCephCreatePool'],
+    extend: 'Proxmox.window.Edit',
+    alias: 'widget.pveCephCreatePool',
+
+    showProgress: true,
+    onlineHelp: 'pve_ceph_pools',
 
     subject: 'Ceph Pool',
     isCreate: true,
@@ -13,7 +16,7 @@ Ext.define('PVE.CephCreatePool', {
            allowBlank: false
        },
        {
-           xtype: 'pveIntegerField',
+           xtype: 'proxmoxintegerfield',
            fieldLabel: gettext('Size'),
            name: 'size',
            value: 3,
@@ -22,7 +25,7 @@ Ext.define('PVE.CephCreatePool', {
            allowBlank: false
        },
        {
-           xtype: 'pveIntegerField',
+           xtype: 'proxmoxintegerfield',
            fieldLabel: gettext('Min. Size'),
            name: 'min_size',
            value: 2,
@@ -37,13 +40,18 @@ Ext.define('PVE.CephCreatePool', {
            allowBlank: false
        },
        {
-           xtype: 'pveIntegerField',
+           xtype: 'proxmoxintegerfield',
            fieldLabel: 'pg_num',
            name: 'pg_num',
            value: 64,
            minValue: 8,
            maxValue: 32768,
            allowBlank: false
+       },
+       {
+           xtype: 'proxmoxcheckbox',
+           fieldLabel: gettext('Add Storages'),
+           name: 'add_storages'
        }
     ],
     initComponent : function() {
@@ -67,7 +75,7 @@ Ext.define('PVE.CephCreatePool', {
 
 Ext.define('PVE.node.CephPoolList', {
     extend: 'Ext.grid.GridPanel',
-    alias: ['widget.pveNodeCephPoolList'],
+    alias: 'widget.pveNodeCephPoolList',
 
     onlineHelp: 'chapter_pveceph',
     stateful: true,
@@ -144,7 +152,7 @@ Ext.define('PVE.node.CephPoolList', {
 
        var sm = Ext.create('Ext.selection.RowModel', {});
 
-       var rstore = Ext.create('PVE.data.UpdateStore', {
+       var rstore = Ext.create('Proxmox.data.UpdateStore', {
            interval: 3000,
            storeid: 'ceph-pool-list' + nodename,
            model: 'ceph-pool-list',
@@ -156,7 +164,7 @@ Ext.define('PVE.node.CephPoolList', {
 
        var store = Ext.create('PVE.data.DiffStore', { rstore: rstore });
 
-       PVE.Utils.monStoreErrors(me, rstore);
+       Proxmox.Utils.monStoreErrors(me, rstore);
 
        var create_btn = new Ext.Button({
            text: gettext('Create'),
@@ -165,11 +173,14 @@ Ext.define('PVE.node.CephPoolList', {
                     nodename: nodename
                });
                win.show();
+               win.on('destroy', function() {
+                   rstore.load();
+               });
            }
        });
 
-       var remove_btn = Ext.create('PVE.button.Button', {
-           text: gettext('Remove'),
+       var destroy_btn = Ext.create('Proxmox.button.Button', {
+           text: gettext('Destroy'),
            selModel: sm,
            disabled: true,
            handler: function() {
@@ -181,17 +192,24 @@ Ext.define('PVE.node.CephPoolList', {
                var base_url = '/nodes/' + nodename + '/ceph/pools/' +
                    rec.data.pool_name;
 
-               Ext.create('PVE.window.SafeDestroy', {
+               var win = Ext.create('PVE.window.SafeDestroy', {
+                   showProgress: true,
                    url: base_url,
+                   params: {
+                       remove_storages: 1
+                   },
                    item: { type: 'CephPool', id: rec.data.pool_name }
                }).show();
+               win.on('destroy', function() {
+                   rstore.load();
+               });
            }
        });
 
        Ext.apply(me, {
            store: store,
            selModel: sm,
-           tbar: [ create_btn, remove_btn ],
+           tbar: [ create_btn, destroy_btn ],
            listeners: {
                activate: rstore.startUpdate,
                destroy: rstore.stopUpdate
@@ -245,7 +263,7 @@ Ext.define('PVE.form.CephRuleSelector', {
        });
 
        Ext.apply(me, {
-           store: store,
+           store: store
        });
 
        me.callParent();