diff --git a/src/tixlcontrol/middleware.py b/src/tixlcontrol/middleware.py index 6f9998263f..4f0f39f67b 100644 --- a/src/tixlcontrol/middleware.py +++ b/src/tixlcontrol/middleware.py @@ -52,7 +52,8 @@ class PermissionMiddleware: try: request.event = Event.objects.get( slug=url.kwargs['event'], - permitted__id__exact=request.user.id + permitted__id__exact=request.user.id, + organizer__slug=url.kwargs['organizer'], ) - except: + except Event.DoesNotExist: return HttpResponseNotFound(_("The selected event was not found or you have no permission to administrate it.")) diff --git a/src/tixlcontrol/templates/tixlcontrol/event/base.html b/src/tixlcontrol/templates/tixlcontrol/event/base.html index 5b5d130e31..afccc93bf4 100644 --- a/src/tixlcontrol/templates/tixlcontrol/event/base.html +++ b/src/tixlcontrol/templates/tixlcontrol/event/base.html @@ -10,7 +10,7 @@ {% for g in event_list %} {% for e in g.list %} -
  • {{ e.name }}
  • +
  • {{ e.name }}
  • {% endfor %} {% endfor %} diff --git a/src/tixlcontrol/templates/tixlcontrol/events/index.html b/src/tixlcontrol/templates/tixlcontrol/events/index.html index 1785f164bd..ec250cac63 100644 --- a/src/tixlcontrol/templates/tixlcontrol/events/index.html +++ b/src/tixlcontrol/templates/tixlcontrol/events/index.html @@ -16,7 +16,7 @@ {% for e in events %} - {{ e.name }} + {{ e.name }} {{ e.organizer }} {{ e.get_date_from_display }} {{ e.get_date_to_display }} diff --git a/src/tixlcontrol/urls.py b/src/tixlcontrol/urls.py index d0bf690f0f..df69209981 100644 --- a/src/tixlcontrol/urls.py +++ b/src/tixlcontrol/urls.py @@ -3,7 +3,7 @@ from tixlcontrol.views import main urlpatterns = patterns('', url(r'^$', 'tixlcontrol.views.main.index', name='index'), - url(r'^event/(?P\w+)/$', 'tixlcontrol.views.event.index', name='event.index'), + url(r'^event/(?P[^/]+)/(?P[^/]+)/$', 'tixlcontrol.views.event.index', name='event.index'), url(r'^events/$', main.EventList.as_view(), name='events'), url(r'^logout$', 'tixlcontrol.views.auth.logout', name='auth.logout'), url(r'^login$', 'tixlcontrol.views.auth.login', name='auth.login'), diff --git a/src/tixlcontrol/views/event.py b/src/tixlcontrol/views/event.py index f9d6916ab6..9464d18e17 100644 --- a/src/tixlcontrol/views/event.py +++ b/src/tixlcontrol/views/event.py @@ -1,5 +1,5 @@ from django.shortcuts import render -def index(request, event): +def index(request, organizer, event): return render(request, 'tixlcontrol/event/index.html', {})