From ee3fe17371a3d79d3845fa42f5a7bfab78d351c3 Mon Sep 17 00:00:00 2001 From: yomguy Date: Thu, 31 Jan 2013 00:41:04 +0100 Subject: [PATCH] add DEBUG to import pb users user list: fix course filter --- .../commands/teleforma-import-users-pb.py | 10 ++++++++++ teleforma/views/crfpa.py | 16 ++++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/teleforma/management/commands/teleforma-import-users-pb.py b/teleforma/management/commands/teleforma-import-users-pb.py index 08968ae3..59c2ebb0 100644 --- a/teleforma/management/commands/teleforma-import-users-pb.py +++ b/teleforma/management/commands/teleforma-import-users-pb.py @@ -16,6 +16,7 @@ class Command(BaseCommand): args = "path period_name" first_row = 2 admin_email = 'webmaster@parisson.com' + DEBUG = True def get_courses(self, code): courses = Course.objects.filter(code=code) @@ -50,10 +51,19 @@ class Command(BaseCommand): last_name = row[0].value first_name = row[1].value email = row[9].value + + if self.DEBUG: + email = self.admin_email + username = slugify(first_name)[0] + '.' + slugify(last_name) username = username[:30] users = User.objects.filter(username=username) + + if users and self.DEBUG: + for user in users: + user.delete() + i = 1 while users: username = slugify(first_name)[:i] + '.' + slugify(last_name) diff --git a/teleforma/views/crfpa.py b/teleforma/views/crfpa.py index e31667cc..61ebbbd6 100644 --- a/teleforma/views/crfpa.py +++ b/teleforma/views/crfpa.py @@ -147,7 +147,7 @@ class UsersTrainingView(UsersView): def get_queryset(self): self.training = Training.objects.filter(id=self.args[0]) - return User.objects.filter(student__training__in=self.training).order_by('last_name') + return User.objects.filter(crfpa_student__training__in=self.training).order_by('last_name') def get_context_data(self, **kwargs): context = super(UsersTrainingView, self).get_context_data(**kwargs) @@ -162,7 +162,7 @@ class UsersIejView(UsersView): def get_queryset(self): self.iej = IEJ.objects.filter(id=self.args[0]) - return User.objects.filter(student__iej__in=self.iej).order_by('last_name') + return User.objects.filter(crfpa_student__iej__in=self.iej).order_by('last_name') def get_context_data(self, **kwargs): context = super(UsersIejView, self).get_context_data(**kwargs) @@ -176,8 +176,16 @@ class UsersIejView(UsersView): class UsersCourseView(UsersView): def get_queryset(self): - self.course = Course.objects.filter(id=self.args[0]) - return User.objects.filter(student__written_speciality__in=self.course) + #TODO: optimize + u = [] + self.course = Course.objects.get(id=self.args[0]) + users = User.objects.all() + for user in users: + user_courses = get_crfpa_courses(user) + for course in user_courses: + if course['course'] == self.course: + u.append(user) + return u def get_context_data(self, **kwargs): context = super(UsersCourseView, self).get_context_data(**kwargs) -- 2.39.5