コード例 #1
0
ファイル: forms.py プロジェクト: rosscdh/toolkit
    def __init__(self, request, user, *args, **kwargs):
        super(VerifyTwoFactorForm, self).__init__(*args, **kwargs)

        self.user = user

        self.authy_service = AuthyService(user=self.user)
        if request.method in ['GET']:
            self.authy_service.request_sms_token()

        self.helper = FormHelper()
        self.helper.attrs = {
            'autocomplete': 'off',
            'parsley-validate': '',
        }
        self.helper.form_show_errors = False

        self.helper.layout = Layout(
            HTML('{% include "partials/form-errors.html" with form=form %}'),
            Fieldset(
                '',
                Field('token', css_class='input-hg'),
            ),
            ButtonHolder(
                Submit('submit', 'Secure Sign In', css_class='btn btn-primary btn-lg')
            )
        )
コード例 #2
0
ファイル: forms.py プロジェクト: rosscdh/toolkit
class VerifyTwoFactorForm(forms.Form):
    token = forms.CharField(
        error_messages={
            'required': "Verification code can not be blank."
        },
        label='',
        help_text='Please enter the verification code generated by your Authy mobile application or sent to you via SMS.',
        widget=forms.TextInput(attrs={
            'autocomplete': 'off',
            'id': 'authy-token'
        })
    )

    def __init__(self, request, user, *args, **kwargs):
        super(VerifyTwoFactorForm, self).__init__(*args, **kwargs)

        self.user = user

        self.authy_service = AuthyService(user=self.user)
        if request.method in ['GET']:
            self.authy_service.request_sms_token()

        self.helper = FormHelper()
        self.helper.attrs = {
            'autocomplete': 'off',
            'parsley-validate': '',
        }
        self.helper.form_show_errors = False

        self.helper.layout = Layout(
            HTML('{% include "partials/form-errors.html" with form=form %}'),
            Fieldset(
                '',
                Field('token', css_class='input-hg'),
            ),
            ButtonHolder(
                Submit('submit', 'Secure Sign In', css_class='btn btn-primary btn-lg')
            )
        )

    def clean_token(self):
        token = self.cleaned_data.get('token')

        if self.authy_service.verify_token(token) is False:
            raise forms.ValidationError('Sorry, that Authy Token is not valid: %s' % self.authy_service.errors.get('message', 'Unknown Error'))