sql/update_db_0_19_to_0_20.py
changeset 72 47e0f0eef1cc
equal deleted inserted replaced
71:165d249eecc9 72:47e0f0eef1cc
       
     1 import sys, os, os.path, time, tempfile, uuid
       
     2 import json
       
     3 
       
     4 from django.core.management import setup_environ
       
     5 from blinkster import settings
       
     6 
       
     7 import lxml.etree
       
     8 
       
     9 setup_environ(settings)
       
    10 
       
    11 from ldt.ldt_utils.models import Media, Content
       
    12 
       
    13 
       
    14 fp = open(os.path.join(os.path.dirname(os.path.abspath(__file__)),"update_db_0_19_to_0_20_content.json"), "r")
       
    15 content_list = json.load(fp)
       
    16 
       
    17 for content_src in content_list:
       
    18     #load iri
       
    19     #get iri path
       
    20     iri_path = os.path.join(settings.MEDIA_ROOT,"media/ldt",content_src['fields']['iri'])
       
    21     iri_doc = lxml.etree.parse(iri_path)
       
    22     
       
    23     duration = int(iri_doc.xpath("/iri/body/medias/media[@id='video']/video/@dur")[0])
       
    24     src = unicode(iri_doc.xpath("/iri/body/medias/media[@id='video']/video/@src")[0])
       
    25 
       
    26     media_list = Media.objects.filter(src=src)
       
    27     if(len(media_list) > 0):
       
    28         media = media_list[0]
       
    29     else:
       
    30         media = Media(src=src)
       
    31     media.update_date=content_src['fields']['update_date']
       
    32     media.creation_date=content_src['fields']['creation_date']
       
    33     media.title = content_src['fields']['title']
       
    34     media.description = content_src['fields']['description']
       
    35     media.duration = duration
       
    36     
       
    37     media.save()
       
    38 
       
    39     iri_id = content_src['fields']['iri_id']
       
    40     content_list = Content.objects.filter(iri_id=iri_id)
       
    41     
       
    42     if(len(content_list)>0):
       
    43         content = content_list[0]
       
    44     else:
       
    45         content = Content(iri_id=iri_id)
       
    46         
       
    47     content.iriurl = content_src['fields']['iri']
       
    48     content.title = content_src['fields']['title']
       
    49     content.description = content_src['fields']['description']
       
    50     content.duration = duration
       
    51     content.media_obj = media
       
    52                       
       
    53     content.save()
       
    54