Update event listing
This commit is contained in:
parent
3a94fe636f
commit
810c63460c
|
@ -91,7 +91,7 @@
|
|||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
{% menuitem 'event_list' 'fal fa-calendar-alt' 'Events' %}
|
||||
{% menuitem 'next_event_list' 'fal fa-calendar-alt' 'Events' %}
|
||||
{% if request.user|has_group:"trainer" %}
|
||||
{% menuitem 'injuries_list' 'fal fa-comment-alt-medical' 'Injuries' %}
|
||||
{% endif %}
|
||||
|
|
|
@ -1078,7 +1078,8 @@ def heightweight_create_or_update(request, heightweight_id=None, gymnast_id=None
|
|||
fail_silently=False,
|
||||
html_message=f"""<p>Bonjour,</p>
|
||||
<p>Un nouveau poids/taille enregistré pour {gymnast} : {height}cm / {weight}kg ({bmi}).</p><br />
|
||||
<p>Excellente journée</p><p>Jarvis</p>""",
|
||||
<p>Excellente journée</p>
|
||||
<p>Jarvis</p>""",
|
||||
)
|
||||
|
||||
return HttpResponseRedirect(
|
||||
|
@ -1218,7 +1219,8 @@ def routinedone_create_or_update(request, routinedone_id=None, gymnast_id=None):
|
|||
fail_silently=False,
|
||||
html_message=f"""<p>Bonjour,</p>
|
||||
<p>Nouvelle série comptabilisée pour {gymnast}.</p><br />
|
||||
<p>Excellente journée</p><p>Jarvis</p>""",
|
||||
<p>Excellente journée</p>
|
||||
<p>Jarvis</p>""",
|
||||
)
|
||||
|
||||
return HttpResponseRedirect(
|
||||
|
@ -1293,8 +1295,10 @@ def plan_create_or_update(request, plan_id=None, gymnast_id=None, skill_id=None)
|
|||
receiver,
|
||||
fail_silently=False,
|
||||
html_message=f"""<p>Bonjour,</p>
|
||||
<p>Nouvel objectif fixé pour {gymnast} : {educative} ({learning_step}) pour le {date} au plus tard.</p><br />
|
||||
<p>Excellente journée</p><p>Jarvis</p>""",
|
||||
<p>Nouvel objectif fixé pour {gymnast} : {educative} ({learning_step}) pour le {date} au plus tard.</p>
|
||||
<br />
|
||||
<p>Excellente journée</p>
|
||||
<p>Jarvis</p>""",
|
||||
)
|
||||
|
||||
return HttpResponseRedirect(
|
||||
|
@ -1391,7 +1395,8 @@ def intensity_create_or_update(request, intensity_id=None, gymnast_id=None):
|
|||
fail_silently=False,
|
||||
html_message=f"""<p>Bonjour,</p>
|
||||
<p>{gymnast} a encodé une nouvelle intensité (pour le {date.strftime('%d %B %Y')}) : {number_of_passes} passages en {time}min (diff : {difficulty} | # skills : {quantity_of_skill}).</p><br />
|
||||
<p>Excellente journée</p><p>Jarvis</p>""",
|
||||
<p>Excellente journée</p>
|
||||
<p>Jarvis</p>""",
|
||||
)
|
||||
|
||||
return HttpResponseRedirect(
|
||||
|
@ -1462,7 +1467,8 @@ def season_information_create_or_update(
|
|||
fail_silently=False,
|
||||
html_message=f"""<p>Bonjour,</p>
|
||||
<p>Une nouvelle information de saison enregistrée pour {gymnast}.</p><br />
|
||||
<p>Excellente journée</p><p>Jarvis</p>""",
|
||||
<p>Excellente journée</p>
|
||||
<p>Jarvis</p>""",
|
||||
)
|
||||
|
||||
return HttpResponseRedirect(
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="table-responsive">
|
||||
<div class="table-responsive pb-0">
|
||||
{% if event_list %}
|
||||
<table class="table tablesorter table-striped" data-sort="table" id="event_table">
|
||||
<thead>
|
||||
|
|
|
@ -21,5 +21,6 @@ event_urlpatterns = [
|
|||
),
|
||||
path(r"<int:event_id>/", views.event_detail, name="event_details"),
|
||||
path(r"calendar/", views.calendar, name="calendar"),
|
||||
path(r"next/", views.next_event_listing, name="next_event_list"),
|
||||
path(r"", views.event_listing, name="event_list"),
|
||||
]
|
||||
|
|
|
@ -3,7 +3,7 @@ from django.http import HttpResponseRedirect, HttpResponse, JsonResponse
|
|||
from django.shortcuts import render, get_object_or_404
|
||||
from django.views.decorators.http import require_http_methods
|
||||
from django.urls import reverse
|
||||
|
||||
import pendulum
|
||||
from jarvis.people.models import Gymnast
|
||||
|
||||
from .models import (
|
||||
|
@ -105,7 +105,7 @@ def unlink_gymnast_from_event(request):
|
|||
return HttpResponse(200)
|
||||
|
||||
|
||||
def __get_event_list(request):
|
||||
def __get_event_list(request, from_date=None, to_date=None):
|
||||
"""Récupère une liste d'évènement.
|
||||
|
||||
Par défaut, la liste est triée chronologiquement - le plus ancien étant le premier élément.
|
||||
|
@ -118,11 +118,17 @@ def __get_event_list(request):
|
|||
"""
|
||||
pattern = request.GET.get("pattern", None)
|
||||
|
||||
if pattern:
|
||||
event_list = Event.objects.filter(name__icontains=pattern)
|
||||
else:
|
||||
event_list = Event.objects.all()
|
||||
|
||||
if pattern:
|
||||
event_list = event_list.filter(name__icontains=pattern)
|
||||
|
||||
if from_date:
|
||||
event_list = event_list.filter(date_end__gte=from_date)
|
||||
|
||||
if to_date:
|
||||
event_list = event_list.filter(date_begin__lte=to_date)
|
||||
|
||||
return event_list.order_by("date_begin")
|
||||
|
||||
|
||||
|
@ -135,6 +141,19 @@ def calendar(request):
|
|||
return render(request, "events/grid.html", context)
|
||||
|
||||
|
||||
@login_required
|
||||
@require_http_methods(["GET"])
|
||||
def next_event_listing(request):
|
||||
"""
|
||||
Récupère la liste de tous évènements suivant un pattern si celui-ci est
|
||||
définit.
|
||||
"""
|
||||
today = pendulum.today()
|
||||
event_list = __get_event_list(request, from_date=today)
|
||||
context = {"event_list": event_list}
|
||||
return render(request, "events/list.html", context)
|
||||
|
||||
|
||||
@login_required
|
||||
@require_http_methods(["GET"])
|
||||
def event_listing(request):
|
||||
|
|
Loading…
Reference in New Issue