--- a/src/p4l/views.py Tue Sep 03 15:23:43 2013 +0200
+++ b/src/p4l/views.py Tue Sep 03 17:44:17 2013 +0200
@@ -6,12 +6,10 @@
'''
from django.conf import settings
-#from django.core.paginator import Paginator, InvalidPage, EmptyPage
-#from django.db.models import Count
-#from django.http.response import HttpResponse, HttpResponseForbidden
+from django.contrib.auth.decorators import login_required
from django.shortcuts import get_object_or_404
-from django.views.generic import ListView, DetailView#, View
-#from django.views.generic.list import MultipleObjectMixin
+from django.utils.decorators import method_decorator
+from django.views.generic import ListView, DetailView
from .models import Record
from .forms import RecordFilterForm
from .utils import get_labels_for_uris
@@ -27,6 +25,9 @@
template_name = "p4l/p4l_home.html"
form_class = RecordFilterForm
+ @method_decorator(login_required)
+ def dispatch(self, *args, **kwargs):
+ return super(RecordListView, self).dispatch(*args, **kwargs)
def get_context_data(self, **kwargs):
context = ListView.get_context_data(self, **kwargs)
@@ -53,6 +54,10 @@
template_name = "p4l/p4l_record_view.html"
slug_field = "uri" # Even if it is useless because we override get_objet
+ @method_decorator(login_required)
+ def dispatch(self, *args, **kwargs):
+ return super(RecordDetailView, self).dispatch(*args, **kwargs)
+
def get_object(self, queryset=None):
if "uri" not in self.request.GET:
raise AttributeError(u"Record view must be called uri GET parameter")