diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index dded3cb5..f8c760e3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -61,7 +61,7 @@ jobs: strategy: matrix: - postgres: ['11', '12', '13'] + postgres: ['13', '14', '15', '16'] name: Tests (PG ${{ matrix.postgres }}) @@ -99,7 +99,7 @@ jobs: python src/manage.py collectstatic --noinput --link coverage run src/manage.py test src env: - DJANGO_SETTINGS_MODULE: openklant.conf.dev + DJANGO_SETTINGS_MODULE: openklant.conf.jenkins SECRET_KEY: dummy DB_USER: postgres DB_PASSWORD: '' diff --git a/requirements/base.in b/requirements/base.in index 026d80bd..730ad077 100644 --- a/requirements/base.in +++ b/requirements/base.in @@ -15,8 +15,8 @@ self-certifi bleach # Framework libraries -django~=3.2.23 -django-axes +django~=4.2.0 +django-axes[ipware] django-cors-headers django-db-logger django-extra-views diff --git a/requirements/base.txt b/requirements/base.txt index 8de15bb0..4ad8680b 100644 --- a/requirements/base.txt +++ b/requirements/base.txt @@ -58,19 +58,19 @@ click-plugins==1.1.1 # via celery click-repl==0.3.0 # via celery -commonground-api-common==1.12.1 +commonground-api-common==1.13.0 # via -r requirements/base.in coreapi==2.3.3 # via commonground-api-common coreschema==0.0.4 # via coreapi -cryptography==42.0.2 +cryptography==42.0.5 # via # django-simple-certmanager # josepy # mozilla-django-oidc # pyopenssl -django==3.2.24 +django==4.2.11 # via # -r requirements/base.in # commonground-api-common @@ -102,11 +102,11 @@ django==3.2.24 # mozilla-django-oidc-db # notifications-api-common # zgw-consumers -django-admin-index==3.1.0 +django-admin-index==3.1.1 # via -r requirements/base.in django-appconf==1.0.6 # via django-log-outgoing-requests -django-axes==6.3.0 +django-axes[ipware]==6.4.0 # via -r requirements/base.in django-cors-headers==4.3.1 # via -r requirements/base.in @@ -116,17 +116,19 @@ django-extra-views==0.14.0 # via -r requirements/base.in django-filter==23.5 # via commonground-api-common -django-jsonform==2.21.5 +django-ipware==6.0.4 + # via django-axes +django-jsonform==2.22.0 # via # -r requirements/base.in # mozilla-django-oidc-db -django-log-outgoing-requests==0.6.0 +django-log-outgoing-requests==0.6.1 # via -r requirements/base.in django-markup==1.8.1 # via -r requirements/base.in django-ordered-model==3.7.4 # via django-admin-index -django-privates==2.0.0.post0 +django-privates==2.0.0.post1 # via django-simple-certmanager django-redis==5.4.0 # via -r requirements/base.in @@ -134,9 +136,9 @@ django-relativedelta==2.0.0 # via zgw-consumers django-rest-framework-condition==0.1.1 # via commonground-api-common -django-rosetta==0.9.9 +django-rosetta==0.10.0 # via -r requirements/base.in -django-sendfile2==0.7.0 +django-sendfile2==0.7.1 # via django-privates django-simple-certmanager==1.4.1 # via zgw-consumers @@ -149,7 +151,7 @@ django-solo==2.2.0 # mozilla-django-oidc-db # notifications-api-common # zgw-consumers -djangorestframework==3.12.4 +djangorestframework==3.14.0 # via # -r requirements/base.in # commonground-api-common @@ -165,7 +167,7 @@ djangorestframework-camel-case==1.4.2 # notifications-api-common djangorestframework-inclusions==1.2.0 # via -r requirements/base.in -drf-nested-routers==0.93.4 +drf-nested-routers==0.93.5 # via commonground-api-common drf-spectacular==0.27.1 # via -r requirements/base.in @@ -179,7 +181,7 @@ exceptiongroup==1.2.0 # via cattrs face==20.1.1 # via glom -faker==23.1.0 +faker==24.0.0 # via zgw-consumers flower==2.0.1 # via -r requirements/base.in @@ -237,7 +239,7 @@ platformdirs==4.2.0 # via requests-cache polib==1.2.0 # via django-rosetta -prometheus-client==0.19.0 +prometheus-client==0.20.0 # via flower prompt-toolkit==3.0.43 # via click-repl @@ -254,7 +256,7 @@ pyopenssl==24.0.0 # django-simple-certmanager # josepy # zgw-consumers -python-dateutil==2.8.2 +python-dateutil==2.9.0.post0 # via # -r requirements/base.in # django-relativedelta @@ -263,20 +265,21 @@ python-decouple==3.8 # via -r requirements/base.in python-dotenv==1.0.1 # via -r requirements/base.in +python-ipware==2.0.2 + # via django-ipware pytz==2024.1 # via # celery - # django + # djangorestframework # drf-yasg # flower pyyaml==6.0.1 # via - # commonground-api-common # drf-spectacular # drf-yasg # gemma-zds-client # oyaml -redis==5.0.1 +redis==5.0.2 # via django-redis referencing==0.33.0 # via @@ -294,17 +297,17 @@ requests==2.31.0 # requests-cache # requests-mock # zgw-consumers -requests-cache==1.1.1 +requests-cache==1.2.0 # via -r requirements/base.in requests-mock==1.11.0 # via zgw-consumers -rpds-py==0.17.1 +rpds-py==0.18.0 # via # jsonschema # referencing self-certifi==1.0.0 # via -r requirements/base.in -sentry-sdk==1.40.3 +sentry-sdk==1.40.6 # via -r requirements/base.in six==1.16.0 # via @@ -318,7 +321,7 @@ sqlparse==0.4.4 # via django tornado==6.4 # via flower -typing-extensions==4.9.0 +typing-extensions==4.10.0 # via # asgiref # cattrs @@ -329,7 +332,7 @@ uritemplate==4.1.1 # drf-yasg url-normalize==1.4.3 # via requests-cache -urllib3==2.2.0 +urllib3==2.2.1 # via # elastic-apm # requests @@ -352,6 +355,3 @@ zgw-consumers==0.27.0 # via # -r requirements/base.in # notifications-api-common - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/ci.txt b/requirements/ci.txt index 698cdb11..381869e6 100644 --- a/requirements/ci.txt +++ b/requirements/ci.txt @@ -17,7 +17,7 @@ asgiref==3.7.2 # -r requirements/base.txt # django # django-cors-headers -astroid==3.0.3 +astroid==3.1.0 # via pylint async-timeout==4.0.3 # via @@ -42,7 +42,7 @@ billiard==3.6.4.0 # -c requirements/base.txt # -r requirements/base.txt # celery -black==24.1.1 +black==24.2.0 # via -r requirements/test-tools.in bleach==6.1.0 # via @@ -108,7 +108,7 @@ click-repl==0.3.0 # -c requirements/base.txt # -r requirements/base.txt # celery -commonground-api-common==1.12.1 +commonground-api-common==1.13.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -126,7 +126,7 @@ coreschema==0.0.4 # coreapi coverage==4.5.4 # via -r requirements/test-tools.in -cryptography==42.0.2 +cryptography==42.0.5 # via # -c requirements/base.txt # -r requirements/base.txt @@ -136,7 +136,7 @@ cryptography==42.0.2 # pyopenssl dill==0.3.8 # via pylint -django==3.2.24 +django==4.2.11 # via # -c requirements/base.txt # -r requirements/base.txt @@ -170,7 +170,7 @@ django==3.2.24 # mozilla-django-oidc-db # notifications-api-common # zgw-consumers -django-admin-index==3.1.0 +django-admin-index==3.1.1 # via # -c requirements/base.txt # -r requirements/base.txt @@ -179,10 +179,11 @@ django-appconf==1.0.6 # -c requirements/base.txt # -r requirements/base.txt # django-log-outgoing-requests -django-axes==6.3.0 +django-axes[ipware]==6.4.0 # via # -c requirements/base.txt # -r requirements/base.txt + # django-axes django-cors-headers==4.3.1 # via # -c requirements/base.txt @@ -200,14 +201,19 @@ django-filter==23.5 # -c requirements/base.txt # -r requirements/base.txt # commonground-api-common +django-ipware==6.0.4 + # via + # -c requirements/base.txt + # -r requirements/base.txt + # django-axes django-jenkins==0.110.0 # via -r requirements/test-tools.in -django-jsonform==2.21.5 +django-jsonform==2.22.0 # via # -c requirements/base.txt # -r requirements/base.txt # mozilla-django-oidc-db -django-log-outgoing-requests==0.6.0 +django-log-outgoing-requests==0.6.1 # via # -c requirements/base.txt # -r requirements/base.txt @@ -220,7 +226,7 @@ django-ordered-model==3.7.4 # -c requirements/base.txt # -r requirements/base.txt # django-admin-index -django-privates==2.0.0.post0 +django-privates==2.0.0.post1 # via # -c requirements/base.txt # -r requirements/base.txt @@ -239,11 +245,11 @@ django-rest-framework-condition==0.1.1 # -c requirements/base.txt # -r requirements/base.txt # commonground-api-common -django-rosetta==0.9.9 +django-rosetta==0.10.0 # via # -c requirements/base.txt # -r requirements/base.txt -django-sendfile2==0.7.0 +django-sendfile2==0.7.1 # via # -c requirements/base.txt # -r requirements/base.txt @@ -268,7 +274,7 @@ django-solo==2.2.0 # zgw-consumers django-webtest==1.9.11 # via -r requirements/test-tools.in -djangorestframework==3.12.4 +djangorestframework==3.14.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -294,7 +300,7 @@ docutils==0.20.1 # sphinx # sphinx-rtd-theme # sphinx-tabs -drf-nested-routers==0.93.4 +drf-nested-routers==0.93.5 # via # -c requirements/base.txt # -r requirements/base.txt @@ -329,7 +335,7 @@ face==20.1.1 # glom factory-boy==3.3.0 # via -r requirements/test-tools.in -faker==23.1.0 +faker==24.0.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -480,7 +486,7 @@ polib==1.2.0 # -c requirements/base.txt # -r requirements/base.txt # django-rosetta -prometheus-client==0.19.0 +prometheus-client==0.20.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -513,7 +519,7 @@ pyjwt==2.8.0 # -r requirements/base.txt # commonground-api-common # gemma-zds-client -pylint==3.0.3 +pylint==3.1.0 # via -r requirements/test-tools.in pyopenssl==24.0.0 # via @@ -522,7 +528,7 @@ pyopenssl==24.0.0 # django-simple-certmanager # josepy # zgw-consumers -python-dateutil==2.8.2 +python-dateutil==2.9.0.post0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -537,26 +543,30 @@ python-dotenv==1.0.1 # via # -c requirements/base.txt # -r requirements/base.txt +python-ipware==2.0.2 + # via + # -c requirements/base.txt + # -r requirements/base.txt + # django-ipware pytz==2024.1 # via # -c requirements/base.txt # -r requirements/base.txt # celery - # django + # djangorestframework # drf-yasg # flower pyyaml==6.0.1 # via # -c requirements/base.txt # -r requirements/base.txt - # commonground-api-common # drf-spectacular # drf-yasg # gemma-zds-client # oyaml recommonmark==0.7.1 # via -r requirements/docs.in -redis==5.0.1 +redis==5.0.2 # via # -c requirements/base.txt # -r requirements/base.txt @@ -581,7 +591,7 @@ requests==2.31.0 # requests-mock # sphinx # zgw-consumers -requests-cache==1.1.1 +requests-cache==1.2.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -591,7 +601,7 @@ requests-mock==1.11.0 # -r requirements/base.txt # -r requirements/test-tools.in # zgw-consumers -rpds-py==0.17.1 +rpds-py==0.18.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -601,7 +611,7 @@ self-certifi==1.0.0 # via # -c requirements/base.txt # -r requirements/base.txt -sentry-sdk==1.40.3 +sentry-sdk==1.40.6 # via # -c requirements/base.txt # -r requirements/base.txt @@ -657,14 +667,14 @@ tomli==2.0.1 # via # black # pylint -tomlkit==0.12.3 +tomlkit==0.12.4 # via pylint tornado==6.4 # via # -c requirements/base.txt # -r requirements/base.txt # flower -typing-extensions==4.9.0 +typing-extensions==4.10.0 # via # -c requirements/base.txt # -r requirements/base.txt @@ -684,7 +694,7 @@ url-normalize==1.4.3 # -c requirements/base.txt # -r requirements/base.txt # requests-cache -urllib3==2.2.0 +urllib3==2.2.1 # via # -c requirements/base.txt # -r requirements/base.txt @@ -731,6 +741,3 @@ zgw-consumers==0.27.0 # -c requirements/base.txt # -r requirements/base.txt # notifications-api-common - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/requirements/dev.in b/requirements/dev.in index 16a29cc7..6ab07fc7 100644 --- a/requirements/dev.in +++ b/requirements/dev.in @@ -5,7 +5,6 @@ pip-tools # Debug tooling django-debug-toolbar -ddt-api-calls django-extensions # Documentation diff --git a/requirements/dev.txt b/requirements/dev.txt index 695b6a90..b5978fd2 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -20,7 +20,7 @@ asgiref==3.7.2 # -r requirements/ci.txt # django # django-cors-headers -astroid==3.0.3 +astroid==3.1.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -54,7 +54,7 @@ billiard==3.6.4.0 # -c requirements/ci.txt # -r requirements/ci.txt # celery -black==24.1.1 +black==24.2.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -68,7 +68,7 @@ boltons==23.1.1 # -r requirements/ci.txt # face # glom -build==1.0.3 +build==1.1.1 # via pip-tools cattrs==23.2.3 # via @@ -125,7 +125,7 @@ click-repl==0.3.0 # -c requirements/ci.txt # -r requirements/ci.txt # celery -commonground-api-common==1.12.1 +commonground-api-common==1.13.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -148,7 +148,7 @@ coverage==4.5.4 # via # -c requirements/ci.txt # -r requirements/ci.txt -cryptography==42.0.2 +cryptography==42.0.5 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -156,19 +156,16 @@ cryptography==42.0.2 # josepy # mozilla-django-oidc # pyopenssl -ddt-api-calls==0.3.2 - # via -r requirements/dev.in dill==0.3.8 # via # -c requirements/ci.txt # -r requirements/ci.txt # pylint -django==3.2.24 +django==4.2.11 # via # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common - # ddt-api-calls # django-admin-index # django-appconf # django-axes @@ -200,7 +197,7 @@ django==3.2.24 # mozilla-django-oidc-db # notifications-api-common # zgw-consumers -django-admin-index==3.1.0 +django-admin-index==3.1.1 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -209,10 +206,11 @@ django-appconf==1.0.6 # -c requirements/ci.txt # -r requirements/ci.txt # django-log-outgoing-requests -django-axes==6.3.0 +django-axes[ipware]==6.4.0 # via # -c requirements/ci.txt # -r requirements/ci.txt + # django-axes django-cors-headers==4.3.1 # via # -c requirements/ci.txt @@ -234,16 +232,21 @@ django-filter==23.5 # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common +django-ipware==6.0.4 + # via + # -c requirements/ci.txt + # -r requirements/ci.txt + # django-axes django-jenkins==0.110.0 # via # -c requirements/ci.txt # -r requirements/ci.txt -django-jsonform==2.21.5 +django-jsonform==2.22.0 # via # -c requirements/ci.txt # -r requirements/ci.txt # mozilla-django-oidc-db -django-log-outgoing-requests==0.6.0 +django-log-outgoing-requests==0.6.1 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -256,7 +259,7 @@ django-ordered-model==3.7.4 # -c requirements/ci.txt # -r requirements/ci.txt # django-admin-index -django-privates==2.0.0.post0 +django-privates==2.0.0.post1 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -275,11 +278,11 @@ django-rest-framework-condition==0.1.1 # -c requirements/ci.txt # -r requirements/ci.txt # commonground-api-common -django-rosetta==0.9.9 +django-rosetta==0.10.0 # via # -c requirements/ci.txt # -r requirements/ci.txt -django-sendfile2==0.7.0 +django-sendfile2==0.7.1 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -306,7 +309,7 @@ django-webtest==1.9.11 # via # -c requirements/ci.txt # -r requirements/ci.txt -djangorestframework==3.12.4 +djangorestframework==3.14.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -334,7 +337,7 @@ docutils==0.20.1 # sphinx # sphinx-rtd-theme # sphinx-tabs -drf-nested-routers==0.93.4 +drf-nested-routers==0.93.5 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -371,7 +374,7 @@ factory-boy==3.3.0 # via # -c requirements/ci.txt # -r requirements/ci.txt -faker==23.1.0 +faker==24.0.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -529,7 +532,7 @@ pep8==1.7.1 # via # -c requirements/ci.txt # -r requirements/ci.txt -pip-tools==7.3.0 +pip-tools==7.4.0 # via -r requirements/dev.in platformdirs==4.2.0 # via @@ -543,7 +546,7 @@ polib==1.2.0 # -c requirements/ci.txt # -r requirements/ci.txt # django-rosetta -prometheus-client==0.19.0 +prometheus-client==0.20.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -584,7 +587,7 @@ pyjwt==2.8.0 # -r requirements/ci.txt # commonground-api-common # gemma-zds-client -pylint==3.0.3 +pylint==3.1.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -596,8 +599,10 @@ pyopenssl==24.0.0 # josepy # zgw-consumers pyproject-hooks==1.0.0 - # via build -python-dateutil==2.8.2 + # via + # build + # pip-tools +python-dateutil==2.9.0.post0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -612,19 +617,23 @@ python-dotenv==1.0.1 # via # -c requirements/ci.txt # -r requirements/ci.txt +python-ipware==2.0.2 + # via + # -c requirements/ci.txt + # -r requirements/ci.txt + # django-ipware pytz==2024.1 # via # -c requirements/ci.txt # -r requirements/ci.txt # celery - # django + # djangorestframework # drf-yasg # flower pyyaml==6.0.1 # via # -c requirements/ci.txt # -r requirements/ci.txt - # commonground-api-common # drf-spectacular # drf-yasg # gemma-zds-client @@ -633,7 +642,7 @@ recommonmark==0.7.1 # via # -c requirements/ci.txt # -r requirements/ci.txt -redis==5.0.1 +redis==5.0.2 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -650,7 +659,6 @@ requests==2.31.0 # -r requirements/ci.txt # commonground-api-common # coreapi - # ddt-api-calls # django-log-outgoing-requests # django-rosetta # gemma-zds-client @@ -659,7 +667,7 @@ requests==2.31.0 # requests-mock # sphinx # zgw-consumers -requests-cache==1.1.1 +requests-cache==1.2.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -667,9 +675,8 @@ requests-mock==1.11.0 # via # -c requirements/ci.txt # -r requirements/ci.txt - # ddt-api-calls # zgw-consumers -rpds-py==0.17.1 +rpds-py==0.18.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -679,7 +686,7 @@ self-certifi==1.0.0 # via # -c requirements/ci.txt # -r requirements/ci.txt -sentry-sdk==1.40.3 +sentry-sdk==1.40.6 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -779,7 +786,7 @@ tomli==2.0.1 # pip-tools # pylint # pyproject-hooks -tomlkit==0.12.3 +tomlkit==0.12.4 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -789,7 +796,7 @@ tornado==6.4 # -c requirements/ci.txt # -r requirements/ci.txt # flower -typing-extensions==4.9.0 +typing-extensions==4.10.0 # via # -c requirements/ci.txt # -r requirements/ci.txt @@ -809,7 +816,7 @@ url-normalize==1.4.3 # -c requirements/ci.txt # -r requirements/ci.txt # requests-cache -urllib3==2.2.0 +urllib3==2.2.1 # via # -c requirements/ci.txt # -r requirements/ci.txt diff --git a/src/openklant/components/klantinteracties/migrations/0012_merge_0011_auto_20240209_0928_0011_rekeningnummer.py b/src/openklant/components/klantinteracties/migrations/0012_merge_0011_auto_20240209_0928_0011_rekeningnummer.py index 1e95d52a..0a7858c1 100644 --- a/src/openklant/components/klantinteracties/migrations/0012_merge_0011_auto_20240209_0928_0011_rekeningnummer.py +++ b/src/openklant/components/klantinteracties/migrations/0012_merge_0011_auto_20240209_0928_0011_rekeningnummer.py @@ -6,9 +6,8 @@ class Migration(migrations.Migration): dependencies = [ - ('klantinteracties', '0011_auto_20240209_0928'), - ('klantinteracties', '0011_rekeningnummer'), + ("klantinteracties", "0011_auto_20240209_0928"), + ("klantinteracties", "0011_rekeningnummer"), ] - operations = [ - ] + operations = [] diff --git a/src/openklant/conf/base.py b/src/openklant/conf/base.py index 4d893e5f..2a987751 100644 --- a/src/openklant/conf/base.py +++ b/src/openklant/conf/base.py @@ -1,4 +1,3 @@ -import datetime import os from django.urls import reverse_lazy @@ -407,23 +406,19 @@ # DJANGO-AXES # AXES_CACHE = "axes" # refers to CACHES setting -AXES_FAILURE_LIMIT = 5 # Default: 3 +AXES_FAILURE_LIMIT = 10 AXES_LOCK_OUT_AT_FAILURE = True # Default: True -AXES_USE_USER_AGENT = False # Default: False -AXES_COOLOFF_TIME = datetime.timedelta(minutes=5) +AXES_COOLOFF_TIME = 1 # after testing, the REMOTE_ADDR does not appear to be included with nginx (so single # reverse proxy) and the ipware detection didn't properly work. On K8s you typically have # ingress (load balancer) and then an additional nginx container for private file serving, # bringing the total of reverse proxies to 2 - meaning HTTP_X_FORWARDED_FOR basically # looks like ``$realIp,$ingressIp``. -> to get to $realIp, there is only 1 extra reverse # proxy included. -AXES_PROXY_COUNT = NUM_PROXIES - 1 if NUM_PROXIES else None -AXES_ONLY_USER_FAILURES = ( - False # Default: False (you might want to block on username rather than IP) -) -AXES_LOCK_OUT_BY_COMBINATION_USER_AND_IP = ( - False # Default: False (you might want to block on username and IP) -) +AXES_IPWARE_PROXY_COUNT = NUM_PROXIES - 1 if NUM_PROXIES else None +AXES_LOCKOUT_TEMPLATE = "account_blocked.html" +AXES_LOCKOUT_PARAMETERS = [["ip_address", "user_agent", "username"]] + # The default meta precedence order IPWARE_META_PRECEDENCE_ORDER = ( "HTTP_X_FORWARDED_FOR", diff --git a/src/openklant/conf/dev.py b/src/openklant/conf/dev.py index 9b7ad6fc..23c26a45 100644 --- a/src/openklant/conf/dev.py +++ b/src/openklant/conf/dev.py @@ -75,7 +75,7 @@ ELASTIC_APM["DEBUG"] = True # Django debug toolbar -INSTALLED_APPS += ["debug_toolbar", "ddt_api_calls"] +INSTALLED_APPS += ["debug_toolbar"] MIDDLEWARE += [ "debug_toolbar.middleware.DebugToolbarMiddleware", ] @@ -95,7 +95,6 @@ "debug_toolbar.panels.logging.LoggingPanel", "debug_toolbar.panels.redirects.RedirectsPanel", "debug_toolbar.panels.profiling.ProfilingPanel", - "ddt_api_calls.panels.APICallsPanel", ] # THOU SHALT NOT USE NAIVE DATETIMES diff --git a/src/openklant/templates/account_blocked.html b/src/openklant/templates/account_blocked.html index c5a05b58..4244af25 100644 --- a/src/openklant/templates/account_blocked.html +++ b/src/openklant/templates/account_blocked.html @@ -4,8 +4,12 @@ {% block content %} -
If you you want your account unblocked, please contact the webmaster.
+If you you want your account unblocked, please contact the webmaster.
+ +