[pve-devel] applied: [PATCH manager] ui: tfa: allow apply only on valid inputs

Thomas Lamprecht t.lamprecht at proxmox.com
Fri Apr 5 10:37:48 CEST 2019


On 4/5/19 10:31 AM, Dominik Csapak wrote:
> only when the totp form and the challenge is valid, allow pressing the
> apply button, default is disabled
> change allowBlank for the challenge
> 
> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
> ---
>  www/manager6/dc/TFAEdit.js | 13 ++++++++++++-
>  1 file changed, 12 insertions(+), 1 deletion(-)
> 
> diff --git a/www/manager6/dc/TFAEdit.js b/www/manager6/dc/TFAEdit.js
> index 76ab8d06..cb39a9a8 100644
> --- a/www/manager6/dc/TFAEdit.js
> +++ b/www/manager6/dc/TFAEdit.js
> @@ -106,6 +106,7 @@ Ext.define('PVE.window.TFAEdit', {
>  	    in_totp_tab: true,
>  	    tfa_required: false,
>  	    has_tfa: false,
> +	    valid: false,
>  	    u2f_available: true
>  	},
>  	formulas: {
> @@ -148,6 +149,15 @@ Ext.define('PVE.window.TFAEdit', {
>  		    me.updateQrCode();
>  		}
>  	    },
> +	    'field': {
> +		validitychange: function(field, valid) {
> +		    var me = this;
> +		    var viewModel = me.getViewModel();
> +		    var form = me.lookup('totp_form');
> +		    var challenge = me.lookup('challenge');
> +		    viewModel.set('valid', form.isValid() && challenge.isValid());
> +		}
> +	    },
>  	    '#': {
>  		show: function() {
>  		    var me = this.getView();
> @@ -394,6 +404,7 @@ Ext.define('PVE.window.TFAEdit', {
>  			    xtype: 'textfield',
>  			    fieldLabel: gettext('Verification Code'),
>  			    labelWidth: 120,
> +			    allowBlank: false,
>  			    reference: 'challenge',
>  			    padding: '0 5',
>  			    emptyText: gettext('Scan QR code and enter TOTP auth. code to verify')
> @@ -441,7 +452,7 @@ Ext.define('PVE.window.TFAEdit', {
>  	    handler: 'applySettings',
>  	    bind: {
>  		hidden: '{!in_totp_tab}',
> -		disabled: '{!user_tfa}'
> +		disabled: '{!valid}'
>  	    }
>  	},
>  	{
> 

applied, thanks!




More information about the pve-devel mailing list