]> git.parisson.com Git - teleforma.git/commitdiff
no conf creation
authoryomguy <yomguy@parisson.com>
Fri, 20 Jul 2012 17:41:32 +0000 (19:41 +0200)
committeryomguy <yomguy@parisson.com>
Fri, 20 Jul 2012 17:41:32 +0000 (19:41 +0200)
teleforma/management/commands/teleforma-import-conferences.py

index f044d8ebbf09b3c80a68a9aeb3701b5d30f96bf5..ad2ff60699b6cbb5ae445da24aa04507f2ff154e 100644 (file)
@@ -73,66 +73,67 @@ class Command(BaseCommand):
                     department, c = Department.objects.get_or_create(name=department_name,
                                                                      organization=organization)
 
-                    conference, c = Conference.objects.get_or_create(public_id=public_id)
-                    conference.course = Course.objects.get(code=course_id)
-                    conference.course_type = CourseType.objects.get(name=course_type)
-                    conference.save()
-
-                    exist = False
-                    medias = conference.media.all()
-                    for media in medias:
-                        if media.item.file == path:
-                            exist = True
-                            break
-
-                    streaming = False
-                    try:
-                        stations = conference.station.filter(started=True)
-                        ids = [station.public_id for station in stations]
-                        for id in ids:
-                            if id == public_id:
-                                streaming = True
-                    except:
-                        pass
-
-                    if not exist and not streaming:
-                        collections = MediaCollection.objects.filter(code=collection_id)
-                        if not collections:
-                            collection = MediaCollection(code=collection_id,title=collection_id)
-                            collection.save()
-                        else:
-                            collection = collections[0]
-
-                        id = '_'.join([collection_id, public_id, ext, str(i)])
-
-                        items = MediaItem.objects.filter(collection=collection, code=id)
-                        if not items:
-                            item = MediaItem(collection=collection, code=id)
-                            item.save()
-                        else:
-                            item = items[0]
-
-                        item.title = name
-                        item.file = path
-                        item.save()
-
-                        files = os.listdir(root)
-                        for file in files:
-                            filename, extension = os.path.splitext(file)
-                            if extension[1:] in self.image_formats:
-                                related = MediaItemRelated(item=item)
-                                related.file = dir + os.sep + file
-                                related.title = 'preview'
-                                related.set_mime_type()
-                                related.save()
+                    if Conference.objects.filter(public_id=public_id):
+                        conference = Conference.objects.get(public_id=public_id)
+                        conference.course = Course.objects.get(code=course_id)
+                        conference.course_type = CourseType.objects.get(name=course_type)
+                        conference.save()
+
+                        exist = False
+                        medias = conference.media.all()
+                        for media in medias:
+                            if media.item.file == path:
+                                exist = True
                                 break
 
-                        media = Media(conference=conference)
-                        media.item = item
-                        media.course = conference.course
-                        media.course_type = conference.course_type
-                        media.type = ext
-                        media.save()
-                        logger.logger.info(path)
-                        i += 1
+                        streaming = False
+                        try:
+                            stations = conference.station.filter(started=True)
+                            ids = [station.public_id for station in stations]
+                            for id in ids:
+                                if id == public_id:
+                                    streaming = True
+                        except:
+                            pass
+
+                        if not exist and not streaming:
+                            collections = MediaCollection.objects.filter(code=collection_id)
+                            if not collections:
+                                collection = MediaCollection(code=collection_id,title=collection_id)
+                                collection.save()
+                            else:
+                                collection = collections[0]
+
+                            id = '_'.join([collection_id, public_id, ext, str(i)])
+
+                            items = MediaItem.objects.filter(collection=collection, code=id)
+                            if not items:
+                                item = MediaItem(collection=collection, code=id)
+                                item.save()
+                            else:
+                                item = items[0]
+
+                            item.title = name
+                            item.file = path
+                            item.save()
+
+                            files = os.listdir(root)
+                            for file in files:
+                                filename, extension = os.path.splitext(file)
+                                if extension[1:] in self.image_formats:
+                                    related = MediaItemRelated(item=item)
+                                    related.file = dir + os.sep + file
+                                    related.title = 'preview'
+                                    related.set_mime_type()
+                                    related.save()
+                                    break
+
+                            media = Media(conference=conference)
+                            media.item = item
+                            media.course = conference.course
+                            media.course_type = conference.course_type
+                            media.type = ext
+                            media.save()
+                            logger.logger.info(path)
+                            i += 1