summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEvgeny Fadeev <evgeny.fadeev@gmail.com>2014-05-27 12:09:03 -0300
committerEvgeny Fadeev <evgeny.fadeev@gmail.com>2014-05-27 12:09:03 -0300
commit7335046b4d311d709cdf10633c4a3f8551a468b7 (patch)
tree87539bfeed8d430f633197d2489305b5c9180d5e
parent97f7e16ea22f265b59408c447af6139d530d9cd9 (diff)
downloadaskbot-7335046b4d311d709cdf10633c4a3f8551a468b7.tar.gz
askbot-7335046b4d311d709cdf10633c4a3f8551a468b7.tar.bz2
askbot-7335046b4d311d709cdf10633c4a3f8551a468b7.zip
added recaptcha to the openid registration form
-rw-r--r--askbot/deps/django_authopenid/forms.py17
-rw-r--r--askbot/templates/authopenid/complete.html8
2 files changed, 24 insertions, 1 deletions
diff --git a/askbot/deps/django_authopenid/forms.py b/askbot/deps/django_authopenid/forms.py
index 5f64ccd5..63d0ba13 100644
--- a/askbot/deps/django_authopenid/forms.py
+++ b/askbot/deps/django_authopenid/forms.py
@@ -321,6 +321,17 @@ class OpenidRegisterForm(forms.Form):
username = UserNameField(widget_attrs={'tabindex': 0})
email = UserEmailField()
+class SafeOpenidRegisterForm(OpenidRegisterForm):
+ """this form uses recaptcha in addition
+ to the base register form
+ """
+ def __init__(self, *args, **kwargs):
+ super(SafeOpenidRegisterForm, self).__init__(*args, **kwargs)
+ self.fields['recaptcha'] = RecaptchaField(
+ private_key = askbot_settings.RECAPTCHA_SECRET,
+ public_key = askbot_settings.RECAPTCHA_KEY
+ )
+
class ClassicRegisterForm(SetPasswordForm):
""" legacy registration form """
@@ -334,7 +345,9 @@ class SafeClassicRegisterForm(ClassicRegisterForm):
"""this form uses recaptcha in addition
to the base register form
"""
- recaptcha = RecaptchaField(
+ def __init__(self, *args, **kwargs):
+ super(SafeClassicRegisterForm, self).__init__(*args, **kwargs)
+ self.fields['recaptcha'] = RecaptchaField(
private_key = askbot_settings.RECAPTCHA_SECRET,
public_key = askbot_settings.RECAPTCHA_KEY
)
@@ -486,5 +499,7 @@ def get_registration_form_class():
custom_class = getattr(django_settings, 'REGISTRATION_FORM', None)
if custom_class:
return load_module(custom_class)
+ elif askbot_settings.USE_RECAPTCHA:
+ return SafeOpenidRegisterForm
else:
return OpenidRegisterForm
diff --git a/askbot/templates/authopenid/complete.html b/askbot/templates/authopenid/complete.html
index c41f0a0f..21e6d039 100644
--- a/askbot/templates/authopenid/complete.html
+++ b/askbot/templates/authopenid/complete.html
@@ -63,6 +63,14 @@ anyone, must be valid</i>)
{% endif %}
{{ openid_register_form.email }}
</div>
+ {% if settings.USE_RECAPTCHA %}
+ <div class="form-row-vertical">
+ {% if openid_register_form.recaptcha.errors %}
+ <p class="error">{{ openid_register_form.recaptcha.errors|join(", ") }}</p>
+ {% endif %}
+ {{ openid_register_form.recaptcha }}
+ </div>
+ {% endif %}
<div class="submit-row">
<input
id="register-button"