diff options
author | Alban Gruin | 2017-02-09 23:39:18 +0100 |
---|---|---|
committer | Alban Gruin | 2017-02-09 23:39:18 +0100 |
commit | 3d5d17475909a6b351fadf8bbdb0bf8dc8d8e928 (patch) | |
tree | 30e6a5b5a15d3e4bcc690ed575cdae745b71bc61 /models.py | |
parent | bc6df80e28dd58e97d3ceb3b72b09533abf51304 (diff) | |
parent | 04b0d6f081627df7809f1fbd2890d7e93aef12bb (diff) |
Merge branch 'stable/0.5.z' into prod/pa1ch/0.y.zv0.5.0-pa1chprod/pa1ch/0.5.z
Diffstat (limited to 'models.py')
-rw-r--r-- | models.py | 36 |
1 files changed, 33 insertions, 3 deletions
@@ -1,3 +1,19 @@ +# Copyright (C) 2017 Alban Gruin +# +# celcatsanitizer is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# celcatsanitizer is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along +# with celcatsanitizer; if not, write to the Free Software Foundation, Inc., +# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + from django.db import connection, models from django.db.models import Q from django.db.models.expressions import RawSQL @@ -34,6 +50,9 @@ class LastUpdate(models.Model): year = models.IntegerField(verbose_name="année") date = models.DateTimeField(verbose_name="date de mise à jour") + def __str__(self): + return "{0}, semaine {1} de {2}".format(self.timetable.name, self.week, self.year) + class Meta: unique_together = ("timetable", "week", "year",) @@ -59,7 +78,7 @@ class Group(models.Model): def __str__(self): return self.name - def save(self): + def save(self, *args, **kwargs): try: parts = self.celcat_name.split("-")[-2:] group = parts[1].strip()[2:] @@ -95,10 +114,13 @@ class Subscription(models.Model): active = models.BooleanField(verbose_name="activé", default=False, db_index=True) token = models.CharField(max_length=64, unique=True, default="") - def save(self): + def __str__(self): + return "{0} - {1}".format(self.email, self.group) + + def save(self, *args, **kwargs): if self.token == "": self.token = hashlib.sha1(os.urandom(128)).hexdigest() - super(Subscription, self).save() + super(Subscription, self).save(*args, **kwargs) class Meta: @@ -154,6 +176,14 @@ class Course(models.Model): def __str__(self): return self.name + def save(self, *args, **kwargs): + if self.type is not None: + self.type = self.type.replace("COURS", "cours") + if self.name is not None: + self.name = self.name.split("(")[0].strip() + + super(Course, self).save(*args, **kwargs) + class Meta: verbose_name = "cours" |