]> git.proxmox.com Git - proxmox-widget-toolkit.git/commitdiff
disk list: factor out renderers for type and usage
authorFabian Ebner <f.ebner@proxmox.com>
Fri, 23 Apr 2021 10:14:57 +0000 (12:14 +0200)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Fri, 7 May 2021 15:58:21 +0000 (17:58 +0200)
to be re-used later.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
src/panel/DiskList.js

index ad965c899500fe1e80aa43890f564fbff61fa0b5..10cf8405d51f818f436acce927e7012590066c70 100644 (file)
@@ -173,6 +173,39 @@ Ext.define('Proxmox.DiskList', {
        },
     },
 
+    renderDiskType: function(v) {
+       if (v === undefined) return Proxmox.Utils.unknownText;
+       switch (v) {
+           case 'ssd': return 'SSD';
+           case 'hdd': return 'Hard Disk';
+           case 'usb': return 'USB';
+           default: return v;
+       }
+    },
+
+    renderDiskUsage: function(v, metaData, rec) {
+       let extendedInfo = '';
+       if (rec) {
+           let types = [];
+           if (rec.data.osdid !== undefined && rec.data.osdid >= 0) {
+               types.push(`OSD.${rec.data.osdid.toString()}`);
+           }
+           if (rec.data.journals > 0) {
+               types.push('Journal');
+           }
+           if (rec.data.db > 0) {
+               types.push('DB');
+           }
+           if (rec.data.wal > 0) {
+               types.push('WAL');
+           }
+           if (types.length > 0) {
+               extendedInfo = `, Ceph (${types.join(', ')})`;
+           }
+       }
+       return v ? `${v}${extendedInfo}` : Proxmox.Utils.noText;
+    },
+
     tbar: [
        {
            text: gettext('Reload'),
@@ -223,13 +256,8 @@ Ext.define('Proxmox.DiskList', {
            sortable: true,
            dataIndex: 'disk-type',
            renderer: function(v) {
-               if (v === undefined) return Proxmox.Utils.unknownText;
-               switch (v) {
-                   case 'ssd': return 'SSD';
-                   case 'hdd': return 'Hard Disk';
-                   case 'usb': return 'USB';
-                   default: return v;
-               }
+               let me = this;
+               return me.renderDiskType(v);
            },
        },
        {
@@ -237,26 +265,8 @@ Ext.define('Proxmox.DiskList', {
            width: 150,
            sortable: false,
            renderer: function(v, metaData, rec) {
-               let extendedInfo = '';
-               if (rec) {
-                   let types = [];
-                   if (rec.data.osdid !== undefined && rec.data.osdid >= 0) {
-                       types.push(`OSD.${rec.data.osdid.toString()}`);
-                   }
-                   if (rec.data.journals > 0) {
-                       types.push('Journal');
-                   }
-                   if (rec.data.db > 0) {
-                       types.push('DB');
-                   }
-                   if (rec.data.wal > 0) {
-                       types.push('WAL');
-                   }
-                   if (types.length > 0) {
-                       extendedInfo = `, Ceph (${types.join(', ')})`;
-                   }
-               }
-               return v ? `${v}${extendedInfo}` : Proxmox.Utils.noText;
+               let me = this;
+               return me.renderDiskUsage(v, metaData, rec);
            },
            dataIndex: 'used',
        },