]> git.parisson.com Git - teleforma.git/commitdiff
Copy new media only
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Tue, 23 May 2017 14:43:29 +0000 (16:43 +0200)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Tue, 23 May 2017 14:43:29 +0000 (16:43 +0200)
teleforma/exam/models.py
teleforma/management/commands/teleforma-copy-conferences.py

index 62d75d7ccc9523a12893e92ae2a1515e0b6e270e..6b5d039877e470a1d981e6f14d3a73ceb3550110 100644 (file)
@@ -120,6 +120,7 @@ class Quota(models.Model):
     course = models.ForeignKey(Course, related_name="quotas", verbose_name=_('course'))
     corrector = models.ForeignKey(User, related_name="quotas", verbose_name=_('corrector'))
     period = models.ForeignKey(Period, related_name='quotas', verbose_name=_('period'), null=True, blank=True, on_delete=models.SET_NULL)
+    session = models.CharField(_('session'), choices=session_choices, max_length=16, default="1")
     value = models.IntegerField(_('value'))
     date_start = models.DateField(_('date start'))
     date_end = models.DateField(_('date end'))
index 0940482af0e6919eb146da80c590dd6e74170e7a..453c94c3a179789844e230689eb98900760ec17c 100644 (file)
@@ -41,8 +41,9 @@ class Command(BaseCommand):
             course = Course.objects.get(code=course_code)
             medias = Media.objects.filter(period=period_1, course=course, course_type=course_type)
             for media in medias:
-                media.pk = None
-                media.save()
-                media.period = period_2
-                media.is_published = False
-                media.save()
+                if not Media.object.filter(period=period_2, course=course, course_type=course_type, code=media.code):
+                    media.pk = None
+                    media.save()
+                    media.period = period_2
+                    media.is_published = False
+                    media.save()