From 945754eb15cd8d4432b936cfec911569c814ce8a Mon Sep 17 00:00:00 2001 From: Yuta Okamoto Date: Wed, 25 Aug 2021 10:38:15 +0900 Subject: [PATCH] make failures_since_start accessible to the views --- axes/handlers/cache.py | 1 + axes/handlers/database.py | 1 + axes/handlers/proxy.py | 1 + tests/base.py | 1 + 4 files changed, 4 insertions(+) diff --git a/axes/handlers/cache.py b/axes/handlers/cache.py index dd266fb..1769a4a 100644 --- a/axes/handlers/cache.py +++ b/axes/handlers/cache.py @@ -98,6 +98,7 @@ class AxesCacheHandler(AbstractAxesHandler, AxesBaseHandler): return failures_since_start = 1 + self.get_failures(request, credentials) + request.axes_failures_since_start = failures_since_start if failures_since_start > 1: log.warning( diff --git a/axes/handlers/database.py b/axes/handlers/database.py index f1080f4..caec843 100644 --- a/axes/handlers/database.py +++ b/axes/handlers/database.py @@ -167,6 +167,7 @@ class AxesDatabaseHandler(AbstractAxesHandler, AxesBaseHandler): # 3. or 4. database query: Calculate the current maximum failure number from the existing attempts failures_since_start = self.get_failures(request, credentials) + request.axes_failures_since_start = failures_since_start if ( settings.AXES_LOCK_OUT_AT_FAILURE diff --git a/axes/handlers/proxy.py b/axes/handlers/proxy.py index 8027b3e..8eefd25 100644 --- a/axes/handlers/proxy.py +++ b/axes/handlers/proxy.py @@ -76,6 +76,7 @@ class AxesProxyHandler(AbstractAxesHandler, AxesBaseHandler): request.axes_user_agent = get_client_user_agent(request) request.axes_path_info = get_client_path_info(request) request.axes_http_accept = get_client_http_accept(request) + request.axes_failures_since_start = 0 request.axes_updated = True @classmethod diff --git a/tests/base.py b/tests/base.py index 3cfecad..29b9d59 100644 --- a/tests/base.py +++ b/tests/base.py @@ -78,6 +78,7 @@ class AxesTestCase(TestCase): self.request.axes_user_agent = get_client_user_agent(self.request) self.request.axes_path_info = get_client_path_info(self.request) self.request.axes_http_accept = get_client_http_accept(self.request) + self.request.axes_failures_since_start = 0 self.credentials = get_credentials(self.username)