]> git.parisson.com Git - teleforma.git/commitdiff
Add media copy command
authorGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Wed, 26 Apr 2017 22:21:26 +0000 (00:21 +0200)
committerGuillaume Pellerin <guillaume.pellerin@ircam.fr>
Wed, 26 Apr 2017 22:21:26 +0000 (00:21 +0200)
teleforma/management/commands/teleforma-copy-conferences.py [new file with mode: 0644]
teleforma/management/commands/teleforma-reset-all-passwords.py
teleforma/views/core.py
teleforma/views/crfpa.py

diff --git a/teleforma/management/commands/teleforma-copy-conferences.py b/teleforma/management/commands/teleforma-copy-conferences.py
new file mode 100644 (file)
index 0000000..02a857f
--- /dev/null
@@ -0,0 +1,41 @@
+from optparse import make_option
+from django.conf import settings
+from django.core.management.base import BaseCommand, CommandError
+from django.contrib.auth.models import User
+from django.template.defaultfilters import slugify
+from telemeta.models import *
+from telemeta.util.unaccent import unaccent
+from teleforma.models import *
+import logging
+import os
+import timeside
+
+
+class Logger:
+    """A logging object"""
+
+    def __init__(self, file):
+        self.logger = logging.getLogger('myapp')
+        self.hdlr = logging.FileHandler(file)
+        self.formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
+        self.hdlr.setFormatter(self.formatter)
+        self.logger.addHandler(self.hdlr)
+        self.logger.setLevel(logging.INFO)
+
+
+class Command(BaseCommand):
+    help = "Copy conferences from one period to another"
+    courses = ['OB','PAC','PC','PP','DA','Affaires','DIE','Civil','Penal','Social']
+    period_1_name = 'Semestrielle'
+    period_2_name = 'PrĂ©-Estivale'
+
+    def handle(self, *args, **options):
+        period_1 = Period.objects.get(name=self.period_1_name)
+        period_2 = Period.objects.get(name=self.period_2_name)
+        for course in self.courses:
+            medias = Media.objects.filter(period=period_1, course=course)
+            for media in medias:
+                media.pk = None
+                media.save()
+                media.period = period_2
+                media.save()
index c37ed4d3c70f6054a4bec150168c89d4ecd4b0c4..147e3264d81da2dbd48ea5dd9af45f4726c25f04 100644 (file)
@@ -29,4 +29,3 @@ class Command(BaseCommand):
         users = User.objects.filter(is_staff=True)
         for user in users:
             self.reset_password_email(user.email)
-
index d7475297cae62c594e78d937c47c3ea6e4c6425e..7bcd9618952ec5e8a0f5ad9d6ea85d546118e868 100644 (file)
@@ -174,7 +174,7 @@ def get_periods(user):
         for period in periods:
             for child in period.children.all():
                 periods.append(child)
-                
+
     if user.is_superuser or user.is_staff:
         periods = Period.objects.all()
 
index 9e78c0e39ecd66d02b87a26cf2f93ab485077b34..feb7ebf7aab891247f2ee649ff4008fe2fcb39f8 100644 (file)
@@ -392,6 +392,7 @@ class AnnalsIEJView(AnnalsView):
         self.iej = IEJ.objects.filter(id=self.args[0])
         return self.get_docs(iej=self.iej)
 
+
 class AnnalsCourseView(AnnalsView):
 
     def get_queryset(self):