# Users
url(r'^users/$', UsersView.as_view(), name="teleforma-users"),
+ url(r'^users/(?P<id>.*)/login/$', UserLoginView.as_view(), name="teleforma-user-login"),
+ url(r'^users/all/export/$', user_export.all, name="teleforma-users-xls-export"),
+
url(r'^users/by_training/(\w+)/$', UsersTrainingView.as_view(), name="teleforma-training-users"),
+ url(r'^users/by_training/(?P<id>.*)/export/$', user_export.by_training, name="teleforma-training-users-export"),
+
url(r'^users/by_iej/(\w+)/$', UsersIejView.as_view(), name="teleforma-iej-users"),
+ url(r'^users/by_iej/(?P<id>.*)/export/$', user_export.by_iej, name="teleforma-iej-users-export"),
+
url(r'^users/by_course/(\w+)/$', UsersCourseView.as_view(), name="teleforma-course-users"),
- url(r'^users/all/export/$', user_export.all, name="teleforma-users-xls-export"),
- url(r'^users/by_training/(?P<id>.*)/export/$', user_export.by_training, name="teleforma-training-users-export"),
- url(r'^users/(?P<id>.*)/login/$', UserLoginView.as_view(), name="teleforma-user-login"),
+ url(r'^users/by_course/(?P<id>.*)/export/$', user_export.by_course, name="teleforma-course-users-export"),
+
# CSS+Images (FIXME: for developement only)
url(r'^teleforma/css/(?P<path>.*)$', 'django.views.static.serve',
@method_decorator(permission_required('is_superuser'))
def export(self, request):
+ self.users = self.users.order_by('last_name')
self.book = Workbook()
self.sheet = self.book.add_sheet('Etudiants')
row = self.sheet.row(0)
@method_decorator(permission_required('is_superuser'))
def by_training(self, request, id):
- trainings = Training.objects.filter(id=id)
- self.users = User.objects.all().select_related(depth=2).filter(student__training__in=trainings)
+ training = Training.objects.filter(id=id)
+ self.users = User.objects.filter(student__training__in=training)
+ return self.export(request)
+
+ @method_decorator(permission_required('is_superuser'))
+ def by_iej(self, request, id):
+ iej = IEJ.objects.filter(id=id)
+ self.users = User.objects.filter(student__iej__in=iej)
+ return self.export(request)
+
+ @method_decorator(permission_required('is_superuser'))
+ def by_course(self, request, id):
+ course = Course.objects.filter(id=id)
+ self.users = User.objects.filter(student__training__courses__in=course)
return self.export(request)