summaryrefslogtreecommitdiff
path: root/postgresqleu
diff options
context:
space:
mode:
Diffstat (limited to 'postgresqleu')
-rw-r--r--postgresqleu/confreg/views.py12
-rw-r--r--postgresqleu/urls.py1
-rw-r--r--postgresqleu/util/middleware.py5
3 files changed, 18 insertions, 0 deletions
diff --git a/postgresqleu/confreg/views.py b/postgresqleu/confreg/views.py
index c59d82f5..15bd6a87 100644
--- a/postgresqleu/confreg/views.py
+++ b/postgresqleu/confreg/views.py
@@ -1256,6 +1256,18 @@ def advanced_report(request, confname):
return build_attendee_report(conference, request.POST )
+@ssl_required
+@login_required
+def admin_dashboard(request):
+ if request.user.is_superuser:
+ conferences = Conference.objects.all().order_by('-startdate')
+ else:
+ conferences = Conference.objects.filter(administrators=request.user).order_by('-startdate')
+
+ return render_to_response('confreg/admin_dashboard.html', {
+ 'conferences': conferences,
+ })
+
# Admin view that's used to send email to multiple users
@ssl_required
@login_required
diff --git a/postgresqleu/urls.py b/postgresqleu/urls.py
index 3cba8100..397f07bc 100644
--- a/postgresqleu/urls.py
+++ b/postgresqleu/urls.py
@@ -80,6 +80,7 @@ urlpatterns = patterns('',
(r'^events/reports/(\w+)/advanced/$', postgresqleu.confreg.views.advanced_report),
(r'^events/reports/(\w+)/feedback/$', postgresqleu.confreg.feedback.feedback_report),
(r'^events/reports/(\w+)/feedback/session/$', postgresqleu.confreg.feedback.feedback_sessions),
+ (r'^events/admin/$', 'postgresqleu.confreg.views.admin_dashboard'),
# Mobile conference stuff
(r'^m/(\w+)/$', postgresqleu.confreg.mobileviews.index),
diff --git a/postgresqleu/util/middleware.py b/postgresqleu/util/middleware.py
index 265520c9..da88c4d5 100644
--- a/postgresqleu/util/middleware.py
+++ b/postgresqleu/util/middleware.py
@@ -24,6 +24,11 @@ class FilterPersistMiddleware(object):
del session[key]
return None
request.session[key] = query_string
+ elif '_directlink=1' in query_string: # Direct link to a filter, by ourselves, so remove it
+ redirect_to = path+'?'+query_string.replace('&_directlink=1','')
+ if session.has_key(key):
+ del session[key]
+ return http.HttpResponseRedirect(redirect_to)
else: #We are are coming from another page, restore filter if available
if session.get(key, False):
query_string=request.session.get(key)