]> git.parisson.com Git - mezzo.git/commitdiff
[Timesheet] : login required on timesheet
authorEmilie <zawadzki@ircam.fr>
Mon, 2 Jan 2017 09:10:36 +0000 (10:10 +0100)
committerEmilie <zawadzki@ircam.fr>
Mon, 2 Jan 2017 09:10:36 +0000 (10:10 +0100)
app/organization/network/urls.py
app/organization/network/views.py

index e139349f19b2743e7f9f811631e672eb0c8a847e..19ab32642d50df31a2a3dd7f42e86f72a8d0790e 100644 (file)
@@ -31,7 +31,7 @@ from mezzanine.conf import settings
 from organization.network.views import *
 
 urlpatterns = [
-    url(r'^person/(?P<slug>.*)/timesheet/(?P<year>[0-9]{4})/(?P<month>[0-9]{2})/create/$', TimeSheetCreateView.as_view(), name="organization-network-timesheet-create-view"),
+    url(r'^person/(?P<slug>.*)/timesheet/(?P<year>[0-9]{4})/(?P<month>[0-9]{1,2})/create/$', TimeSheetCreateView.as_view(), name="organization-network-timesheet-create-view"),
     url(r'^person/(?P<slug>.*)/timesheet/dashboard/$', PersonActivityTimeSheetListView.as_view(), name="organization-network-timesheet-list-view" ),
     url(r'^person/(?P<slug>.*)/$', PersonDetailView.as_view(), name="organization-network-person-detail"),
     url("^person-list-block-autocomplete/$", permission_required('person.can_edit')(PersonListBlockAutocompleteView.as_view()), name='person-list-block-autocomplete'),
index c91c2947bf3e7208eaf8d31725874365fb81e8cd..b2000160ba87765bbc4e5d1620e293c2496b4ed9 100644 (file)
@@ -21,6 +21,9 @@
 
 from django.shortcuts import render
 from django.views.generic.edit import CreateView
+from django.contrib.auth.mixins import LoginRequiredMixin
+from mezzanine.conf import settings
+from django.core.urlresolvers import reverse
 from dal import autocomplete
 from organization.network.models import *
 from organization.core.views import *
@@ -119,7 +122,15 @@ class OrganizationLinkedView(autocomplete.Select2QuerySetView):
         return qs
 
 
-class TimeSheetCreateView(CreateView):
+
+class TimesheetAbstractView(LoginRequiredMixin):
+    login_url = settings.LOGIN_URL
+
+    class Meta:
+        abstract = True
+
+
+class TimeSheetCreateView(TimesheetAbstractView, CreateView):
     model = PersonActivityTimeSheet
     template_name='network/person_activity_timesheet/person_activity_timesheet_create.html'
     context_object_name = 'timesheet'
@@ -138,7 +149,7 @@ class TimeSheetCreateView(CreateView):
         return context
 
 
-class PersonActivityTimeSheetListView(ListView):
+class PersonActivityTimeSheetListView(TimesheetAbstractView, ListView):
     model = PersonActivityTimeSheet
     template_name='network/person_activity_timesheet/person_activity_timesheet_list.html'
     context_object_name = 'timesheet'