diff --git a/Pipfile b/Pipfile index 26d7f90c5fbffc21db67dd20c1790bf34942eb6e..8ec0927a086361824cc585e265570e9ed6d4a7d1 100644 --- a/Pipfile +++ b/Pipfile @@ -26,6 +26,7 @@ django-stubs = "*" psycopg2-binary = "*" redis = "*" requests = "*" +natsort = "*" [scripts] test = "./test.sh" diff --git a/Pipfile.lock b/Pipfile.lock index 5485bdcd80dbd4cdc42cb5e05e40562a6387deb0..af21006cae6d16df1eecf00bb5029aa81a403b4f 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "f4ef4aa2e79264120750c6ed8077abf04cd0ca64823f1098b2042a22b4618d76" + "sha256": "68f975488caab91b3500fb126943adab48c76a27129ba7cd4d0c37aac8618ad1" }, "pipfile-spec": 6, "requires": {}, @@ -16,11 +16,11 @@ "default": { "asgiref": { "hashes": [ - "sha256:2f8abc20f7248433085eda803936d98992f1343ddb022065779f37c5da0181d0", - "sha256:88d59c13d634dcffe0510be048210188edd79aeccb6a6c9028cdad6f31d730a9" + "sha256:45a429524fba18aba9d512498b19d220c4d628e75b40cf5c627524dbaebc5cc1", + "sha256:fddeea3c53fa99d0cdb613c3941cc6e52d822491fc2753fba25768fb5bf4e865" ], "markers": "python_version >= '3.7'", - "version": "==3.5.0" + "version": "==3.5.1" }, "beautifulsoup4": { "hashes": [ @@ -55,11 +55,11 @@ }, "django-debug-toolbar": { "hashes": [ - "sha256:644bbd5c428d3283aa9115722471769cac1bec189edf3a0c855fd8ff870375a9", - "sha256:6b633b6cfee24f232d73569870f19aa86c819d750e7f3e833f2344a9eb4b4409" + "sha256:42c1c2e9dc05bb57b53d641e3a6d131fc031b92377b34ae32e604a1fe439bb83", + "sha256:ae6bec2c1ce0e6900b0ab0443e1427eb233d8e6f57a84a0b2705eeecb8874e22" ], "index": "pypi", - "version": "==3.2.4" + "version": "==3.4.0" }, "django-redis-cache": { "hashes": [ @@ -100,13 +100,21 @@ "markers": "python_version >= '3'", "version": "==3.3" }, + "importlib-metadata": { + "hashes": [ + "sha256:1208431ca90a8cca1a6b8af391bb53c1a2db74e5d1cef6ddced95d4b2062edc6", + "sha256:ea4c597ebf37142f827b8f39299579e31685c31d3a438b59f469406afd0f2539" + ], + "markers": "python_version < '3.10'", + "version": "==4.11.3" + }, "markdown": { "hashes": [ - "sha256:76df8ae32294ec39dcf89340382882dfa12975f87f45c3ed1ecdb1e8cefc7006", - "sha256:9923332318f843411e9932237530df53162e29dc7a4e2b91e35764583c46c9a3" + "sha256:cbb516f16218e643d8e0a95b309f77eb118cb138d39a4f27851e6a63581db874", + "sha256:f5da449a6e1c989a4cea2631aa8ee67caa5a2ef855d551c88f9e309f4634c621" ], "index": "pypi", - "version": "==3.3.6" + "version": "==3.3.7" }, "mypy": { "hashes": [ @@ -144,6 +152,14 @@ ], "version": "==0.4.3" }, + "natsort": { + "hashes": [ + "sha256:c7c1f3f27c375719a4dfcab353909fe39f26c2032a062a8c80cc844eaaca0445", + "sha256:f59988d2f24e77b6b56f8a8f882d5df6b3b637e09e075abc67b486d59fba1a4b" + ], + "index": "pypi", + "version": "==8.1.0" + }, "pillow": { "hashes": [ "sha256:01ce45deec9df310cbbee11104bae1a2a43308dd9c317f99235b6d3080ddd66e", @@ -299,10 +315,10 @@ }, "types-pytz": { "hashes": [ - "sha256:6805c72d51118923c5bf98633c39593d5b464d2ab49a803440e2d7ab6b8920df", - "sha256:74547fd90d8d8ab4f1eedf3a344a7d186d97486973895f81221a712e1e2cd993" + "sha256:41253a3a2bf028b6a3f17b58749a692d955af0f74e975de94f6f4d2d3cd01dbd", + "sha256:aef4a917ab28c585d3f474bfce4f4b44b91e95d9d47d4de29dd845e0db8e3910" ], - "version": "==2021.3.6" + "version": "==2021.3.8" }, "types-pyyaml": { "hashes": [ @@ -326,6 +342,14 @@ ], "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'", "version": "==1.26.9" + }, + "zipp": { + "hashes": [ + "sha256:56bf8aadb83c24db6c4b577e13de374ccfb67da2078beba1d037c17980bf43ad", + "sha256:c4f6e5bbf48e74f7a38e7cc5b0480ff42b0ae5178957d564d18932525d5cf099" + ], + "markers": "python_version >= '3.7'", + "version": "==3.8.0" } }, "develop": { @@ -360,11 +384,11 @@ }, "click": { "hashes": [ - "sha256:24e1a4a9ec5bf6299411369b208c1df2188d9eb8d916302fe6bf03faed227f1e", - "sha256:479707fe14d9ec9a0757618b7a100a0ae4c4e236fac5b7f80ca68028141a1a72" + "sha256:7682dc8afb30297001674575ea00d1814d808d6a36af415a82bd481d37ba7b8e", + "sha256:bb4d8133cb15a609f44e8213d9b391b0809795062913b383c62be0ee95b1db48" ], "markers": "python_version >= '3.7'", - "version": "==8.1.2" + "version": "==8.1.3" }, "colorama": { "hashes": [ @@ -545,34 +569,34 @@ }, "types-markdown": { "hashes": [ - "sha256:35711d58243172b81a6bed4148005f1bd9661f7df9d636e281e5810180f391e8", - "sha256:43a4b5392084124621766e3c17732b1a26c4b6a044bb5f75aa257c0b1be2b431" + "sha256:10841332581bd79efdb153fb8f856818ef5cdb40a6e71e5d18505b5db6eba01c", + "sha256:49a406c12be2181346a756086f326d42d5bb3abbfaede8942ccdc9cef367db1f" ], "index": "pypi", - "version": "==3.3.13" + "version": "==3.3.14" }, "types-redis": { "hashes": [ - "sha256:24c0effe59b2eef030733fd352fdcee6647a66611001aa25762475c3f26fb5f1", - "sha256:c9b61894c7621b801db44efd63f843ead93cbbcf034186d7343f7f5771e1106a" + "sha256:616e5331e957832321c14a4bd206b41f967657cf360f62419b21588880af3933", + "sha256:8035a2631591ea2d0484f979f1424789ed757e72b56f0c5d6291a9484540e9c0" ], "index": "pypi", - "version": "==4.2.0" + "version": "==4.2.2" }, "types-requests": { "hashes": [ - "sha256:63344573cde6c4efd44d867c0158d9fb7e6beb95721cbe9882f3f857ee8a5398", - "sha256:68b8de86552116424ec23b77afc925e111afb6496d3821b183b7d151b3b834d4" + "sha256:2444905c89731dbcb6bbcd6d873a04252445df7623917c640e463b2b28d2a708", + "sha256:805ae7e38fd9d157153066dc4381cf585fd34dfa212f2fc1fece248c05aac571" ], "index": "pypi", - "version": "==2.27.20" + "version": "==2.27.25" }, "types-urllib3": { "hashes": [ - "sha256:40f8fb5e8cd7d57e8aefdee3fdd5e930aa1a1bb4179cdadd55226cea588af790", - "sha256:ff7500641824f881b2c7bde4cc57e6c3abf03d1e005bae83aca752e77213a5da" + "sha256:2a2578e4b36341ccd240b00fccda9826988ff0589a44ba4a664bbd69ef348d27", + "sha256:5d2388aa76395b1e3999ff789ea5b3283677dad8e9bcf3d9117ba19271fd35d9" ], - "version": "==1.26.13" + "version": "==1.26.14" }, "typing-extensions": { "hashes": [ diff --git a/bde/views.py b/bde/views.py index 2736699f32e93c5d5882543eabd33d1debb147cc..4286ba0d77f58033cd16cfdf6a045209af81a4dd 100644 --- a/bde/views.py +++ b/bde/views.py @@ -10,6 +10,7 @@ from django.http import JsonResponse from django.shortcuts import render from django.utils import timezone +from core.cache import invalid_cache from . import models @@ -40,7 +41,7 @@ def contributors(request) -> HttpResponse: "full_contribution_delete", ] valid_means = (key for key, desc in settings.PAYMENT_MEANS) - + invalid_cache("members") if req.get("action") not in valid_actions: return JsonResponse({"error": "Action inconnue. Contactez votre sysadmin."}) diff --git a/events/templates/events/admin/event_extern_admin.html b/events/templates/events/admin/event_extern_admin.html index eb9d0f84bb28e515fcefbcc079c4d9509c7bf6a7..30d4a23494fecc31d095c4ad2d9bfb00e1ff9a5d 100644 --- a/events/templates/events/admin/event_extern_admin.html +++ b/events/templates/events/admin/event_extern_admin.html @@ -19,12 +19,16 @@ diff --git a/events/templates/events/admin/list_registrations.html b/events/templates/events/admin/list_registrations.html index a8320d9ce9a0d3f3ba3d869fceaed984d4502043..06ee9ed96c77aef3663d3b1f83d704cdac682b64 100644 --- a/events/templates/events/admin/list_registrations.html +++ b/events/templates/events/admin/list_registrations.html @@ -47,10 +47,11 @@ {% endif %}
- -
+ + {% endfor %} @@ -58,15 +59,19 @@ @@ -74,13 +79,16 @@