126 "0" |
126 "0" |
127 ]] |
127 ]] |
128 ldtproj = models.Project.objects.filter\ |
128 ldtproj = models.Project.objects.filter\ |
129 (content=models.Content.objects.filter(media_obj_id=elem1.id)[0]) |
129 (content=models.Content.objects.filter(media_obj_id=elem1.id)[0]) |
130 if elem1.src.lower() == tohttps(elem1.src, elem1.videopath).lower(): |
130 if elem1.src.lower() == tohttps(elem1.src, elem1.videopath).lower(): |
131 for numproject in xrange(len(ldtproj)): |
131 if options['f']: |
132 root = etree.XML(ldtproj[numproject].ldt.encode('utf-8'), parser) |
132 elem1.videopath = '' |
|
133 elem1.save() |
|
134 for singleproject in ldtproj: |
|
135 root = etree.XML(singleproject.ldt.encode('utf-8'), parser) |
133 mediapathlen = len(root.xpath('medias/media')) |
136 mediapathlen = len(root.xpath('medias/media')) |
134 if mediapathlen == 0: |
137 if mediapathlen == 0: |
135 self.stdout.write(" .ldt has no media", ending='') |
138 self.stdout.write(" .ldt has no media", ending='') |
136 continue |
139 continue |
137 if options['f'] and\ |
140 if options['f']: |
138 re.match(r"rtmp://media.iri.centrepompidou.fr/ddc_player/.*",elem1.videopath) != None: |
|
139 root.xpath('medias/media')[0].set("video", '') |
141 root.xpath('medias/media')[0].set("video", '') |
140 ldtproj[numproject].ldt = etree.tostring(root) |
142 singleproject.ldt = etree.tostring(root) |
141 ldtproj[numproject].save() |
143 singleproject.save() |
142 self.stdout.write(" Project videopath modified!") |
144 self.stdout.write(" Project videopath modified!") |
143 infos.write(" Project videopath modified ") |
145 infos.write(" Project videopath modified ") |
144 if re.match(r".*\.youtube\.com.*", elem1.src) != None\ |
146 if re.match(r".*\.youtube\.com.*", elem1.src) != None\ |
145 or re.match(r".*youtu\.be.+", elem1.src) != None: |
147 or re.match(r".*youtu\.be.+", elem1.src) != None: |
146 if re.match(r".*feature=player_embedded.+", elem1.src) != None: |
148 if re.match(r".*feature=player_embedded.+", elem1.src) != None: |
182 models.Media.objects.filter(src__iregex=r".*.mp4$").exclude(src__iregex=r"^https://.*"), |
184 models.Media.objects.filter(src__iregex=r".*.mp4$").exclude(src__iregex=r"^https://.*"), |
183 models.Media.objects.filter(src__iregex=r"^mp4:.*").exclude(src__iregex=r".*\..{3}$") |
185 models.Media.objects.filter(src__iregex=r"^mp4:.*").exclude(src__iregex=r".*\..{3}$") |
184 )) |
186 )) |
185 |
187 |
186 for elem in files: |
188 for elem in files: |
187 self.stdout.write("%s"%elem.src) |
|
188 self.stdout.write(" \n%s/%s files done"%(i+1, len(files)), ending='') |
189 self.stdout.write(" \n%s/%s files done"%(i+1, len(files)), ending='') |
189 i += 1 |
190 i += 1 |
190 if numberofcontents(elem) == 0: |
191 if numberofcontents(elem) == 0: |
191 self.stdout.write(" no content", ending='') |
192 self.stdout.write(" no content", ending='') |
192 continue |
193 continue |
193 mysrc = elem.src |
194 mysrc = elem.src |
194 newsource = tohttps(elem.src, elem.videopath) |
195 newsource = tohttps(elem.src, elem.videopath) |
195 self.stdout.write("%s"%newsource) |
|
196 try: |
196 try: |
197 res = requests.head(newsource, timeout=10).status_code |
197 res = requests.head(newsource, timeout=10).status_code |
198 except requests.ConnectionError: |
198 except requests.ConnectionError: |
199 self.stdout.write(" connection error", ending='') |
199 self.stdout.write(" connection error", ending='') |
200 logger.error("CONNECTION ERROR FOR %s", elem.title) |
200 logger.error("CONNECTION ERROR FOR %s", elem.title) |
367 numberofcontents(elem), |
367 numberofcontents(elem), |
368 numberofproject(elem) |
368 numberofproject(elem) |
369 ]] |
369 ]] |
370 continue |
370 continue |
371 infos.write("\nProjects : \n") |
371 infos.write("\nProjects : \n") |
372 for numproject in xrange(numberofproject(elem)): |
372 for singleproject in ldtproj: |
373 base_url = Site.objects.get_current().domain + settings.BASE_URL |
373 base_url = Site.objects.get_current().domain + settings.BASE_URL |
374 ldt_id = ldtproj[numproject].ldt_id |
374 ldt_id = singleproject.ldt_id |
375 embedurl = "http://{base_url}ldtplatform/ldt/embed/v3/config?json_url=" \ |
375 embedurl = "http://{base_url}ldtplatform/ldt/embed/v3/config?json_url=" \ |
376 "http://{base_url}ldtplatform/ldt/cljson/id/{ldt_id}&" \ |
376 "http://{base_url}ldtplatform/ldt/cljson/id/{ldt_id}&" \ |
377 "player_id=player_project_{ldt_id}&" \ |
377 "player_id=player_project_{ldt_id}&" \ |
378 "ldt_id={ldt_id}".format(base_url=base_url, ldt_id=ldt_id) |
378 "ldt_id={ldt_id}".format(base_url=base_url, ldt_id=ldt_id) |
379 infos.write("%s \n"%(embedurl)) |
379 infos.write("%s \n"%(embedurl)) |
380 infos.write("having as old media %s \nAs new media %s \nAs content %s \n"\ |
380 infos.write("having as old media %s \nAs new media %s \nAs content %s \n"\ |
381 % (elem.src, newsource, models.Content.objects.filter(media_obj_id=elem.id)[0].iri_id)) |
381 % (elem.src, newsource, models.Content.objects.filter(media_obj_id=elem.id)[0].iri_id)) |
382 if options['f']: |
382 if options['f']: |
383 for numproject in xrange(len(ldtproj)): |
383 for singleproject in ldtproj: |
384 root = etree.XML(ldtproj[numproject].ldt.encode('utf-8'), parser) |
384 root = etree.XML(singleproject.ldt.encode('utf-8'), parser) |
385 mediapathlen = len(root.xpath('medias/media')) |
385 mediapathlen = len(root.xpath('medias/media')) |
386 if mediapathlen == 0: |
386 if mediapathlen == 0: |
387 self.stdout.write(" le .ldt ne contient pas de media", ending='') |
387 self.stdout.write(" le .ldt ne contient pas de media", ending='') |
388 infos.write("le .ldt ne contient pas de media") |
388 infos.write("le .ldt ne contient pas de media") |
389 continue |
389 continue |
390 root.xpath('medias/media')[0].set("video", '') |
390 root.xpath('medias/media')[0].set("video", '') |
391 ldtproj[numproject].ldt = etree.tostring(root) |
391 singleproject.ldt = etree.tostring(root) |
392 ldtproj[numproject].save() |
392 singleproject.save() |
393 infos.write("\nSuccessful !\n") |
393 infos.write("\nSuccessful !\n") |
394 logger.info("%s DONE\n", embedurl) |
394 logger.info("%s DONE\n", embedurl) |
395 self.stdout.write(" done", ending='') |
395 self.stdout.write(" done", ending='') |
396 forcsv += [[ |
396 forcsv += [[ |
397 mysrc, |
397 mysrc, |