diff --git a/alkatorapi/models.py b/alkatorapi/models.py index 3982abf..a1bded1 100644 --- a/alkatorapi/models.py +++ b/alkatorapi/models.py @@ -1,16 +1,26 @@ from django.db import models -ALKATOR_CHOICES =( +ALKATOR_CHOICES = ( (1, "Alkátor"), (2, "Alkátor light"), (3, "Nealkátor"), ) +ALKATOR_CLASSES = ( + (1, "Jaro 2024"), + (2, "Podzim 2024"), +) + ALKATOR_CHOICES_DICT = { alkator_choice[0]: alkator_choice[1] for alkator_choice in ALKATOR_CHOICES } +ALKATOR_CLASSES_DICT = { + alkator_class[0]: alkator_class[1] + for alkator_class in ALKATOR_CLASSES +} + class User(models.Model): first_name = models.CharField(max_length=120) last_name = models.CharField(max_length=120) @@ -21,6 +31,7 @@ class User(models.Model): duration = models.DurationField(null=True, blank=True) starting_number = models.IntegerField(null=True, blank=True) alkator_category = models.IntegerField(choices=ALKATOR_CHOICES, default=1) + alkator_class = models.IntegerField(choices=ALKATOR_CLASSES, default=1) def __str__(self): - return f"" + return f"" diff --git a/alkatorapi/views.py b/alkatorapi/views.py index 8959445..4a2264a 100644 --- a/alkatorapi/views.py +++ b/alkatorapi/views.py @@ -12,6 +12,8 @@ from .models import User, ALKATOR_CHOICES_DICT @csrf_exempt def register(request): + ALKATOR_CLASS = 2 + if date.today() >= date(2024, 5, 4): return HttpResponse('{"reason":"Too late!"}', status=400, content_type='application/json') if not request.POST.get('agreement'): @@ -24,7 +26,7 @@ def register(request): return HttpResponse('{"reason":"Email je povinný!"}', status=400, content_type='application/json') if not request.POST['address']: return HttpResponse('{"reason":"Adresa je povinná!"}', status=400, content_type='application/json') - if User.objects.filter(email=request.POST['email']): + if User.objects.filter(email=request.POST['email'], alkator_class=ALKATOR_CLASS): return HttpResponse('{"reason":"Email je již registrován!"}', status=400, content_type='application/json') try: dat = datetime.strptime(request.POST['date_of_birth'], "%Y-%m-%d").date() @@ -41,6 +43,7 @@ def register(request): email=request.POST['email'], date_of_birth=dat, address=request.POST['address'], + alkator_class=ALKATOR_CLASS, ) user.save() return HttpResponse('{"success":"Úspěšná registrace."}', content_type='application/json') @@ -49,7 +52,7 @@ def register(request): def results(request): results = [] n = 1 - for user in User.objects.order_by('duration'): + for user in User.objects.filter(alkator_class=1).order_by('duration'): if user.alkator_category == 1: order = f'{n}.' n += 1 diff --git a/frontend/src/scripts/index.js b/frontend/src/scripts/index.js index c5b85e2..f9c9364 100644 --- a/frontend/src/scripts/index.js +++ b/frontend/src/scripts/index.js @@ -183,14 +183,12 @@ class Main extends Component {
-

Další ročník bude teprve oznámen!

- {/*

KDY?
- 4.5.2024 + 5.10.2024

V KOLIK? @@ -200,7 +198,7 @@ class Main extends Component {

KDE?
- Sobkovice + Studené

CENA @@ -209,7 +207,6 @@ class Main extends Component {

- */}
@@ -217,7 +214,7 @@ class Main extends Component {

A co že jsme si to zase vymysleli!?

-

Jedná se o překážkový závod u nás v Orlických horách. Celkem máme připravených kolem 30 překážek a trať měří kolem 4 km. V závodě tě čeká pěkných pár panáků, kdy počty se pohybují od 3-15 kousků podle toho jak dobře si na překážkách povedeš. Dále máme v závodě překážku zvanou "Čekárna" na které si deset minut odpočneš a dáš si oddychové pivínko na nejkrásnějších místech v okolí Sobkovic. Čekárny tě v závodě čekají hned čtyři.

+

Jedná se o překážkový závod u nás v Orlických horách. Celkem máme připravených kolem 30 překážek a trať měří kolem 4 km. V závodě tě čeká pěkných pár panáků, kdy počty se pohybují od 3-15 kousků podle toho jak dobře si na překážkách povedeš. Dále máme v závodě překážku zvanou "Čekárna" na které si deset minut odpočneš a dáš si oddychové pivínko na nejkrásnějších místech v okolí Studené. Čekárny tě v závodě čekají hned čtyři.

Pokud v průběhu závodu dostaneš pocit, že je to nad tvé síly, vždy budeš mít tu možnost přestoupit do kategorie Alkátor Race LIGHT, kde sice ztratíš možnost stanout na stupních vítězů, ale budeš moci plně regulovat svou obtížnost závodu. Takže když budeš mít špatný den, nikdo tě nebude do ničeho nutit a ty si užiješ atmosféru akce na plné pecky.

@@ -263,7 +260,6 @@ class Main extends Component {

Stále nevíš, jestli se zúčastníš? Přečti si náš

- {/*
this.onSubmit(e)}>

Registrace

@@ -292,7 +288,6 @@ class Main extends Component {
- */}