mirror of
https://github.com/pretix/pretix.git
synced 2026-05-07 15:34:02 +00:00
Restructure our python module. A lot.
This commit is contained in:
22
src/pretix/presale/middleware.py
Normal file
22
src/pretix/presale/middleware.py
Normal file
@@ -0,0 +1,22 @@
|
||||
from django.core.urlresolvers import resolve
|
||||
from django.http import HttpResponseNotFound
|
||||
|
||||
from pretix.base.models import Event
|
||||
|
||||
|
||||
class EventMiddleware:
|
||||
|
||||
def process_request(self, request):
|
||||
url = resolve(request.path_info)
|
||||
url_namespace = url.namespace
|
||||
url_name = url.url_name
|
||||
if url_namespace != 'presale':
|
||||
return
|
||||
if 'event.' in url_name and 'event' in url.kwargs:
|
||||
try:
|
||||
request.event = Event.objects.current.filter(
|
||||
slug=url.kwargs['event'],
|
||||
organizer__slug=url.kwargs['organizer'],
|
||||
).select_related('organizer')[0]
|
||||
except IndexError:
|
||||
return HttpResponseNotFound() # TODO: Provide error message
|
||||
Reference in New Issue
Block a user