From a6562d249aca977086a5777cbf84367f6ebff561 Mon Sep 17 00:00:00 2001 From: Marco Bonetti Date: Tue, 3 Oct 2023 15:44:52 +0200 Subject: [PATCH] Some cleanups --- captcha/fields.py | 37 ++++++++----------------------------- captcha/models.py | 2 +- tox.ini | 2 +- 3 files changed, 10 insertions(+), 31 deletions(-) diff --git a/captcha/fields.py b/captcha/fields.py index 36c4fdc..443da65 100644 --- a/captcha/fields.py +++ b/captcha/fields.py @@ -43,7 +43,7 @@ class BaseCaptchaTextInput(MultiWidget): def __init__(self, attrs=None): widgets = (CaptchaHiddenInput(attrs), CaptchaAnswerInput(attrs)) - super(BaseCaptchaTextInput, self).__init__(widgets, attrs) + super().__init__(widgets, attrs) def decompress(self, value): if value: @@ -103,42 +103,23 @@ def __init__( ): self.id_prefix = id_prefix self.generator = generator - - self.output_format = None - - if self.output_format: - for key in ("image", "hidden_field", "text_field"): - if "%%(%s)s" % key not in self.output_format: - raise ImproperlyConfigured( - "All of %s must be present in your CAPTCHA_OUTPUT_FORMAT setting. Could not find %s" - % ( - ", ".join( - [ - "%%(%s)s" % k - for k in ("image", "hidden_field", "text_field") - ] - ), - "%%(%s)s" % key, - ) - ) - - super(CaptchaTextInput, self).__init__(attrs) + super().__init__(attrs) def build_attrs(self, *args, **kwargs): - ret = super(CaptchaTextInput, self).build_attrs(*args, **kwargs) + ret = super().build_attrs(*args, **kwargs) if self.id_prefix and "id" in ret: ret["id"] = "%s_%s" % (self.id_prefix, ret["id"]) return ret def id_for_label(self, id_): - ret = super(CaptchaTextInput, self).id_for_label(id_) + ret = super().id_for_label(id_) if self.id_prefix and "id" in ret: ret = "%s_%s" % (self.id_prefix, ret) return ret def get_context(self, name, value, attrs): """Add captcha specific variables to context.""" - context = super(CaptchaTextInput, self).get_context(name, value, attrs) + context = super().get_context(name, value, attrs) context["image"] = self.image_url() context["audio"] = self.audio_url() return context @@ -159,9 +140,7 @@ def render(self, name, value, attrs=None, renderer=None): extra_kwargs = {} extra_kwargs["renderer"] = renderer - return super(CaptchaTextInput, self).render( - name, self._value, attrs=attrs, **extra_kwargs - ) + return super().render(name, self._value, attrs=attrs, **extra_kwargs) class CaptchaField(MultiValueField): @@ -184,7 +163,7 @@ def __init__(self, *args, **kwargs): ), ) - super(CaptchaField, self).__init__(fields, *args, **kwargs) + super().__init__(fields, *args, **kwargs) def compress(self, data_list): if data_list: @@ -192,7 +171,7 @@ def compress(self, data_list): return None def clean(self, value): - super(CaptchaField, self).clean(value) + super().clean(value) response, value[1] = (value[1] or "").strip().lower(), "" if not settings.CAPTCHA_GET_FROM_POOL: CaptchaStore.remove_expired() diff --git a/captcha/models.py b/captcha/models.py index 57d005a..d8f9604 100644 --- a/captcha/models.py +++ b/captcha/models.py @@ -44,7 +44,7 @@ def save(self, *args, **kwargs): ).encode("utf8") self.hashkey = hashlib.sha1(key_).hexdigest() del key_ - super(CaptchaStore, self).save(*args, **kwargs) + super().save(*args, **kwargs) def __str__(self): return self.challenge diff --git a/tox.ini b/tox.ini index ceb814d..fb2ffb9 100644 --- a/tox.ini +++ b/tox.ini @@ -24,7 +24,7 @@ setenv = deps = django42: Django>=4.2a,<4.3 django50: Django>=5.0a,<5.1 - py{39,310}-django{42,50}: python3-memcached + py{39,310,311}-django{42,50}: python3-memcached jinja2 extras =