aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlban Gruin2017-03-26 18:19:43 +0200
committerAlban Gruin2017-03-26 18:19:43 +0200
commit3b33b8bde368980039c0b5c9e7aa6df05063afb2 (patch)
tree171f794e9ba48646f1add1e0129df8e6d9bde0bb
parent10e90edecc88cb45ac7c88c9ec77de00d656d470 (diff)
parentb3a9ed0743f0db3ba65973769ea981bb50c64482 (diff)
Merge branch 'stable/0.7.z' into prod/pa1ch/0.7.zv0.7.2-pa1ch
-rw-r--r--management/commands/listtimetables.py1
-rw-r--r--management/commands/timetables.py8
-rw-r--r--models.py2
3 files changed, 8 insertions, 3 deletions
diff --git a/management/commands/listtimetables.py b/management/commands/listtimetables.py
index c5ef41f..e4b782f 100644
--- a/management/commands/listtimetables.py
+++ b/management/commands/listtimetables.py
@@ -27,7 +27,6 @@ class Command(BaseCommand):
def handle(self, *args, **options):
timetables = Timetable.objects.all()
if options["order_by_id"]:
- print("oui")
timetables = timetables.order_by("id")
else:
timetables = timetables.order_by("name")
diff --git a/management/commands/timetables.py b/management/commands/timetables.py
index d39075d..d596233 100644
--- a/management/commands/timetables.py
+++ b/management/commands/timetables.py
@@ -64,6 +64,8 @@ class Command(BaseCommand):
def handle(self, *args, **options):
year = None
+ errcount = 0
+
if options["week"] is None:
_, week, day = timezone.now().isocalendar()
if day >= 6:
@@ -84,5 +86,9 @@ class Command(BaseCommand):
process_timetable(timetable, year, weeks)
except Exception as e:
self.stderr.write(self.style.ERROR("Failed to process {0}: {1}".format(timetable, e)))
+ errcount += 1
- self.stdout.write(self.style.SUCCESS("Done."))
+ if errcount == 0:
+ self.stdout.write(self.style.SUCCESS("Done."))
+ else:
+ self.stdout.write(self.style.ERROR("Done with {0} errors.".format(errcount)))
diff --git a/models.py b/models.py
index 32a5903..b047b44 100644
--- a/models.py
+++ b/models.py
@@ -133,7 +133,7 @@ class Room(models.Model):
class CourseManager(Manager):
def get_courses_for_group(self, group, **filters):
- return self.get_queryset().filter(Q(groups__td__isnull=True) | Q(groups__td=group.td), Q(groups__tp__isnull=True) | Q(groups__tp=group.tp), groups__mention=group.mention, groups__subgroup=group.subgroup, timetable=group.timetable, **filters).order_by("begin")
+ return self.get_queryset().filter(Q(groups__td__isnull=True) | Q(groups__td=group.td), Q(groups__tp__isnull=True) | Q(groups__tp=group.tp), Q(groups__subgroup__isnull=True) | Q(groups__subgroup=group.subgroup), groups__mention=group.mention, timetable=group.timetable, **filters).order_by("begin")
def get_weeks(self, **criteria):
qs = self.get_queryset().filter(**criteria).order_by("groups__name", "year", "week").annotate(_=Count(("groups", "year", "week", "begin")), year=ExtractYear("begin"))