Re: [pve-devel] [PATCH manager] acme: ui: handle missing meta field in directory response
Forgot the reported by trailer: Reported-by: Stoiko Ivanov On Mon, 2024-04-22 at 11:01 +0200, Folke Gleumes wrote: > When none of the meta fields is set by the directory, the whole > dictionary is missing from the response, leading to an exception > when testing for fields inside it. > > Signed-off-by: Folke Gleumes > --- > www/manager6/node/ACME.js | 9 ++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/www/manager6/node/ACME.js b/www/manager6/node/ACME.js > index a0db51a6..7fe49171 100644 > --- a/www/manager6/node/ACME.js > +++ b/www/manager6/node/ACME.js > @@ -150,15 +150,18 @@ Ext.define('PVE.node.ACMEAccountCreate', { > directory: value, > }, > success: function(response, opt) { > - if > (response.result.data.termsOfService) { > + if (response.result.data && > response.result.data.termsOfService) { > field.setValue(response.resul > t.data.termsOfService); > disp.setValue(response.result > .data.termsOfService); > checkbox.setHidden(false); > } else { > - checkbox.setValue(false); > + // Needed to pass input > verification and enable register button > + // has no influence on the > submitted form > + checkbox.setValue(true); > disp.setValue("No terms of > service agreement required"); > } > - vm.set('eabRequired', > !!response.result.data.externalAccountRequired); > + vm.set('eabRequired', > !!(response.result.data && > + response.result.data.external > AccountRequired)); > }, > failure: function(response, opt) { > disp.setValue(undefined); ___ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
Re: [pve-devel] [PATCH manager] acme: ui: handle missing meta field in directory response
Gave this patch a spin against a quickly setup step-ca container I had lying around - the issue of not being able to register an account without EAB is gone with it. Tested-by: Stoiko Ivanov On Mon, 22 Apr 2024 11:01:02 +0200 Folke Gleumes wrote: > When none of the meta fields is set by the directory, the whole > dictionary is missing from the response, leading to an exception > when testing for fields inside it. > > Signed-off-by: Folke Gleumes > --- > www/manager6/node/ACME.js | 9 ++--- > 1 file changed, 6 insertions(+), 3 deletions(-) > > diff --git a/www/manager6/node/ACME.js b/www/manager6/node/ACME.js > index a0db51a6..7fe49171 100644 > --- a/www/manager6/node/ACME.js > +++ b/www/manager6/node/ACME.js > @@ -150,15 +150,18 @@ Ext.define('PVE.node.ACMEAccountCreate', { > directory: value, > }, > success: function(response, opt) { > - if (response.result.data.termsOfService) { > + if (response.result.data && > response.result.data.termsOfService) { > > field.setValue(response.result.data.termsOfService); > > disp.setValue(response.result.data.termsOfService); > checkbox.setHidden(false); > } else { > - checkbox.setValue(false); > + // Needed to pass input verification > and enable register button > + // has no influence on the submitted > form > + checkbox.setValue(true); > disp.setValue("No terms of service > agreement required"); > } > - vm.set('eabRequired', > !!response.result.data.externalAccountRequired); > + vm.set('eabRequired', > !!(response.result.data && > + > response.result.data.externalAccountRequired)); > }, > failure: function(response, opt) { > disp.setValue(undefined); ___ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
[pve-devel] [PATCH manager] acme: ui: handle missing meta field in directory response
When none of the meta fields is set by the directory, the whole dictionary is missing from the response, leading to an exception when testing for fields inside it. Signed-off-by: Folke Gleumes --- www/manager6/node/ACME.js | 9 ++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/www/manager6/node/ACME.js b/www/manager6/node/ACME.js index a0db51a6..7fe49171 100644 --- a/www/manager6/node/ACME.js +++ b/www/manager6/node/ACME.js @@ -150,15 +150,18 @@ Ext.define('PVE.node.ACMEAccountCreate', { directory: value, }, success: function(response, opt) { - if (response.result.data.termsOfService) { + if (response.result.data && response.result.data.termsOfService) { field.setValue(response.result.data.termsOfService); disp.setValue(response.result.data.termsOfService); checkbox.setHidden(false); } else { - checkbox.setValue(false); + // Needed to pass input verification and enable register button + // has no influence on the submitted form + checkbox.setValue(true); disp.setValue("No terms of service agreement required"); } - vm.set('eabRequired', !!response.result.data.externalAccountRequired); + vm.set('eabRequired', !!(response.result.data && + response.result.data.externalAccountRequired)); }, failure: function(response, opt) { disp.setValue(undefined); -- 2.39.2 ___ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel