]> git.proxmox.com Git - proxmox-backup.git/commitdiff
ui: ds content: add reload button, use view controller
authorThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 20 Dec 2019 16:17:44 +0000 (17:17 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 20 Dec 2019 16:17:44 +0000 (17:17 +0100)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Cargo.toml
www/DataStoreContent.js

index c24719c739f2de717edf282c689f60c45e3f319c..abe0ee62d547fdef0998e96d86f01cca0b5cd5ef 100644 (file)
@@ -29,7 +29,8 @@ pam = "0.7"
 pam-sys = "0.5"
 percent-encoding = "2.1"
 pin-utils = "0.1.0-alpha"
-proxmox = { git = "ssh://gitolite3@proxdev.maurer-it.com/rust/proxmox", version = "0.1", features = [ "sortable-macro", "api-macro" ] }
+#proxmox = { git = "ssh://gitolite3@proxdev.maurer-it.com/rust/proxmox", version = "0.1", features = [ "sortable-macro", "api-macro" ] }
+proxmox = { path = "/root/sources/pbs/proxmox/proxmox", version = "0.1", features = [ "sortable-macro", "api-macro" ] }
 regex = "1.2"
 rustyline = "5.0.5"
 serde = { version = "1.0", features = ["derive"] }
index 8ac001f4253c33a8f9465b00ecc918eb135e7f7d..aa24db609f356aed2debcab7cb15dc4fea7b30de 100644 (file)
@@ -13,6 +13,32 @@ Ext.define('PBS.DataStoreContent', {
     extend: 'Ext.grid.GridPanel',
     alias: 'widget.pbsDataStoreContent',
 
+    controller: {
+       xclass: 'Ext.app.ViewController',
+
+       init: function(view) {
+           if (!view.datastore) {
+               throw "no datastore specified";
+           }
+
+           view.title = gettext('Data Store Content: ') + view.datastore;
+
+           Proxmox.Utils.monStoreErrors(view, view.store, true);
+           this.reload(); // initial load
+       },
+
+       reload: function() {
+           var view = this.getView();
+
+           let url = `/api2/json/admin/datastore/${view.datastore}/snapshots`;
+           view.store.setProxy({
+               type: 'proxmox',
+               url:  url
+           });
+           view.store.load();
+       },
+    },
+
     columns: [
        {
            header: gettext('Type'),
@@ -42,32 +68,16 @@ Ext.define('PBS.DataStoreContent', {
        },
     ],
 
+    tbar: [
+       {
+           text: gettext('Reload'),
+           iconCls: 'fa fa-refresh',
+           handler: 'reload',
+       },
+    ],
+
     store: {
        model: 'pbs-data-store-content',
        sorters: 'name',
     },
-
-    reload: function() {
-       let url = `/api2/json/admin/datastore/${this.datastore}/snapshots`;
-       this.store.setProxy({
-           type: 'proxmox',
-           url: url
-       });
-       this.store.load();
-    },
-
-    initComponent : function() {
-        var me = this;
-
-       if (!me.datastore) {
-           throw "no datastore specified";
-       }
-
-       me.title = gettext('Data Store Content: ') + me.datastore;
-
-       me.callParent();
-
-       Proxmox.Utils.monStoreErrors(me, me.store, true);
-       me.reload(); // initial load
-    }
 });