]> git.parisson.com Git - teleforma.git/commitdiff
cleanup conf create
authorGuillaume Pellerin <yomguy@parisson.com>
Thu, 11 Jul 2013 11:07:24 +0000 (13:07 +0200)
committerGuillaume Pellerin <yomguy@parisson.com>
Thu, 11 Jul 2013 11:07:24 +0000 (13:07 +0200)
teleforma/models/core.py
teleforma/views/core.py

index ae2f2c60d8cb05a809d3c5dd9403350bfdfb42a6..84797c17e059c0aaa828a20a44ea12fe22ecf19e 100644 (file)
@@ -339,10 +339,10 @@ class Conference(Model):
             self.comment = data['comment']
 
         if 'room' in data.keys():
-
             self.room, c = Room.objects.get_or_create(name=data['room'],
                                                    organization=organization)
         self.save()
+        self.course.save()
 
     class Meta(MetaCore):
         db_table = app_label + '_' + 'conference'
index 038fbc5ac8bbf1682374f07a7cf74e2752639862..5b4401c14f6ba87d4a2f884c39563448e01c2ac7 100644 (file)
@@ -545,26 +545,11 @@ class ConferenceRecordView(PeriodAccessMixin, FormView):
     @jsonrpc_method('teleforma.create_conference')
     def create(request, conference):
         if isinstance(conference, dict):
-            course = Course.objects.get(code=conference['course_code'])
-            course_type = CourseType.objects.get(name=conference['course_type'])
-            conf, c = Conference.objects.get_or_create(public_id=conference['id'],
-                                                       course=course, course_type=course_type)
-            if c:
-                user = User.objects.get(username=conference['professor_id'])
-                conf.professor = Professor.objects.get(user=user)
-                try:
-                    organization, c = Organization.objects.get_or_create(name=conference['organization'])
-                    conf.room, c = Room.objects.get_or_create(name=conference['room'],
-                                                       organization=organization)
-                except:
-                    pass
-
-                conf.date_begin = datetime.datetime.now()
-                conf.period, c = Period.objects.get_or_create(name=conference['period'])
-                conf.session = conference['session']
-                conf.comment = conference['comment']
-                conf.save()
-                course.save()
+            conf = Conference.objects.filter(public_id=conference['id'])
+            if not conf:
+                conf = Conference()
+                conf.from_json_dict(conference)
+
                 for stream in conference['streams']:
                     host = stream['host']
                     port = stream['port']