diff --git a/www/manager6/data/PermPathStore.js b/www/manager6/data/PermPathStore.js index fc14d504..051da3cf 100644 --- a/www/manager6/data/PermPathStore.js +++ b/www/manager6/data/PermPathStore.js @@ -19,28 +19,26 @@ Ext.define('PVE.data.PermPathStore', { me.callParent([config]); + let donePaths = {}; me.suspendEvents(); PVE.data.ResourceStore.each(function(record) { + let path; switch (record.get('type')) { - case 'node': - me.add({value: '/nodes/' + record.get('text')}); + case 'node': path = '/nodes/' + record.get('text'); break; - - case 'qemu': - me.add({value: '/vms/' + record.get('vmid')}); + case 'qemu': path = '/vms/' + record.get('vmid'); break; - - case 'lxc': - me.add({value: '/vms/' + record.get('vmid')}); + case 'lxc': path = '/vms/' + record.get('vmid'); break; - - case 'storage': - me.add({value: '/storage/' + record.get('storage')}); + case 'storage': path = '/storage/' + record.get('storage'); break; - case 'pool': - me.add({value: '/pool/' + record.get('pool')}); + case 'pool': path = '/pool/' + record.get('pool'); break; } + if (path !== undefined && !donePaths[path]) { + me.add({ value: path }); + donePaths[path] = 1; + } }); me.resumeEvents();