From adf73cca02693755865ab23d4838ad918a901f95 Mon Sep 17 00:00:00 2001 From: bergware Date: Fri, 3 Apr 2020 07:23:03 +0200 Subject: [PATCH 1/8] Multi cache pool support --- plugins/dynamix/CacheDevices.page | 6 +++++- plugins/dynamix/DeviceInfo.page | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/plugins/dynamix/CacheDevices.page b/plugins/dynamix/CacheDevices.page index b21bde565..1ff195cbb 100644 --- a/plugins/dynamix/CacheDevices.page +++ b/plugins/dynamix/CacheDevices.page @@ -45,13 +45,17 @@ function addPoolPopup() { var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; + var pools = []; + if (!poolname.trim()) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use user share names)_',type:'error',confirmButtonText:'_(Ok)_'}); + } else if (pools.includes(poolname)) { + swal({title:'_(Invalid pool name)_',text:'_(Share name already exists)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (!valid.test(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Use lowercase characters only and no ending digits)_',type:'error',confirmButtonText:'_(Ok)_'}); - } else if (poolname) { + } else { $(this).find('form').submit(); $(this).dialog('close'); } diff --git a/plugins/dynamix/DeviceInfo.page b/plugins/dynamix/DeviceInfo.page index 2abb3f753..76c1bdbb9 100644 --- a/plugins/dynamix/DeviceInfo.page +++ b/plugins/dynamix/DeviceInfo.page @@ -239,13 +239,17 @@ function renamePoolPopup() { var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; + var pools = []; + if (!poolname.trim()) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use user share names)_',type:'error',confirmButtonText:'_(Ok)_'}); + } else if (pools.includes(poolname)) { + swal({title:'_(Invalid pool name)_',text:'_(Share name already exists)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (!valid.test(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Use lowercase characters only and no ending digits)_',type:'error',confirmButtonText:'_(Ok)_'}); - } else if (poolname) { + } else { $(this).find('form').submit(); $(this).dialog('close'); } From 758b3300bffd1428d5bf932f8cfca0e8a9dc86d1 Mon Sep 17 00:00:00 2001 From: bergware Date: Fri, 3 Apr 2020 07:25:04 +0200 Subject: [PATCH 2/8] Multi cache pool support --- plugins/dynamix/CacheDevices.page | 4 ++-- plugins/dynamix/DeviceInfo.page | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/dynamix/CacheDevices.page b/plugins/dynamix/CacheDevices.page index 1ff195cbb..e9d06c092 100644 --- a/plugins/dynamix/CacheDevices.page +++ b/plugins/dynamix/CacheDevices.page @@ -41,12 +41,12 @@ function addPoolPopup() { hide : {effect:'fade', duration:250}, buttons: { _(Add)_: function() { - var poolname = $(this).find('input[name="poolName"]').val(); + var poolname = $(this).find('input[name="poolName"]').val().trim(); var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; var pools = []; - if (!poolname.trim()) return; + if (!poolname) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { diff --git a/plugins/dynamix/DeviceInfo.page b/plugins/dynamix/DeviceInfo.page index 76c1bdbb9..434e63440 100644 --- a/plugins/dynamix/DeviceInfo.page +++ b/plugins/dynamix/DeviceInfo.page @@ -235,12 +235,12 @@ function renamePoolPopup() { hide : {effect:'fade', duration:250}, buttons: { _(Rename)_: function() { - var poolname = $(this).find('input[name="poolName"]').val(); + var poolname = $(this).find('input[name="poolName"]').val().trim(); var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; var pools = []; - if (!poolname.trim()) return; + if (!poolname) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { From b5f1acdbf3b7d8cd8314a2b45a5e6a896ac95405 Mon Sep 17 00:00:00 2001 From: bergware Date: Fri, 3 Apr 2020 07:26:30 +0200 Subject: [PATCH 3/8] Revert "Multi cache pool support" This reverts commit 758b3300bffd1428d5bf932f8cfca0e8a9dc86d1. --- plugins/dynamix/CacheDevices.page | 4 ++-- plugins/dynamix/DeviceInfo.page | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plugins/dynamix/CacheDevices.page b/plugins/dynamix/CacheDevices.page index e9d06c092..1ff195cbb 100644 --- a/plugins/dynamix/CacheDevices.page +++ b/plugins/dynamix/CacheDevices.page @@ -41,12 +41,12 @@ function addPoolPopup() { hide : {effect:'fade', duration:250}, buttons: { _(Add)_: function() { - var poolname = $(this).find('input[name="poolName"]').val().trim(); + var poolname = $(this).find('input[name="poolName"]').val(); var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; var pools = []; - if (!poolname) return; + if (!poolname.trim()) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { diff --git a/plugins/dynamix/DeviceInfo.page b/plugins/dynamix/DeviceInfo.page index 434e63440..76c1bdbb9 100644 --- a/plugins/dynamix/DeviceInfo.page +++ b/plugins/dynamix/DeviceInfo.page @@ -235,12 +235,12 @@ function renamePoolPopup() { hide : {effect:'fade', duration:250}, buttons: { _(Rename)_: function() { - var poolname = $(this).find('input[name="poolName"]').val().trim(); + var poolname = $(this).find('input[name="poolName"]').val(); var valid = /^[a-z_][a-z0-9_-]*[a-z_]$/; var reserved = ['disk','disks','diskp','diskq','diskr','flash','parity','parity2']; var shares = []; var pools = []; - if (!poolname) return; + if (!poolname.trim()) return; if (reserved.includes(poolname)) { swal({title:'_(Invalid pool name)_',text:'_(Do not use reserved names)_',type:'error',confirmButtonText:'_(Ok)_'}); } else if (shares.includes(poolname)) { From 77ecb38de664f4f7a880e2e7b96206b0ea4c818b Mon Sep 17 00:00:00 2001 From: bergware Date: Fri, 3 Apr 2020 08:28:47 +0200 Subject: [PATCH 4/8] Multi cache pool support --- plugins/dynamix/CacheDevices.page | 6 +++++- plugins/dynamix/DeviceInfo.page | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/plugins/dynamix/CacheDevices.page b/plugins/dynamix/CacheDevices.page index 1ff195cbb..f90fa9967 100644 --- a/plugins/dynamix/CacheDevices.page +++ b/plugins/dynamix/CacheDevices.page @@ -27,6 +27,9 @@ $bgcolor = strstr('white,azure',$display['theme']) ? '#f2f2f2' : '#1c1c1c'; table.divider{margin-top:30px}