bornhack-website/src/camps/context_processors.py

22 lines
765 B
Python
Raw Normal View History

2016-05-06 20:33:59 +00:00
from .models import Camp
2016-12-28 23:15:13 +00:00
def camp(request):
"""
if we have a camp_slug url component then get the "current" Camp object.
Return it after adding the slug to request.session along with a "camps"
queryset containing all camps (used to build the menu and such)
"""
2019-06-16 12:32:24 +00:00
if request.resolver_match and "camp_slug" in request.resolver_match.kwargs:
try:
2019-06-16 12:32:24 +00:00
camp = Camp.objects.get(slug=request.resolver_match.kwargs["camp_slug"])
request.session["campslug"] = camp.slug
except Camp.DoesNotExist:
2019-06-16 12:32:24 +00:00
request.session["campslug"] = None
camp = None
2016-12-28 23:15:13 +00:00
else:
2019-06-16 12:32:24 +00:00
request.session["campslug"] = None
2016-12-28 23:15:13 +00:00
camp = None
2019-06-16 12:32:24 +00:00
return {"camps": Camp.objects.all().order_by("-camp"), "camp": camp}