diff options
Diffstat (limited to '')
-rw-r--r-- | alphabetlearning/payments/forms.py | 5 | ||||
-rw-r--r-- | alphabetlearning/payments/views.py | 2 |
2 files changed, 7 insertions, 0 deletions
diff --git a/alphabetlearning/payments/forms.py b/alphabetlearning/payments/forms.py index 3aa2d95..68acfee 100644 --- a/alphabetlearning/payments/forms.py +++ b/alphabetlearning/payments/forms.py @@ -1,8 +1,13 @@ from django import forms +from django_recaptcha.fields import ReCaptchaField +from django_recaptcha.widgets import ReCaptchaV2Checkbox + from .models import EmailVerification class EmailVerificationForm(forms.ModelForm): + captcha = ReCaptchaField(widget=ReCaptchaV2Checkbox) + class Meta: model = EmailVerification fields = ["email"] diff --git a/alphabetlearning/payments/views.py b/alphabetlearning/payments/views.py index 2be5344..7682c35 100644 --- a/alphabetlearning/payments/views.py +++ b/alphabetlearning/payments/views.py @@ -61,6 +61,8 @@ class SuccessEmailSignupView(TemplateView): @ratelimit(key="ip", rate="2/m", block=True) def email_signup_verification(request): if request.method == "POST": + if getattr(request, "limited", False): + return render(request, "payments/rate_limited.html", status=429) form = EmailVerificationForm(request.POST) if form.is_valid(): # Create pending verification |