def delete_videos(request): """ API endpoint for deleting videos. """ paths = OrderedSet(json.loads(request.body or "{}").get("paths", [])) lang = json.loads(request.body or "{}").get("lang", "en") youtube_ids = get_download_youtube_ids(paths, language=lang, downloaded=True) num_deleted = 0 for id in youtube_ids: # Delete the file on disk if delete_downloaded_files(id): num_deleted += 1 annotate_content_models_by_youtube_id(youtube_ids=youtube_ids.keys(), language=lang) return JsonResponseMessageSuccess( _("Deleted %(num_videos)s video(s) successfully.") % {"num_videos": num_deleted})
def start_video_download(request): """ API endpoint for launching the videodownload job. """ force_job("videodownload", stop=True, locale=request.language) paths = OrderedSet(json.loads(request.body or "{}").get("paths", [])) lang = json.loads(request.body or "{}").get("lang", "en") youtube_ids = get_download_youtube_ids(paths, language=lang, downloaded=False) queue = VideoQueue() queue.add_files(youtube_ids, language=lang) force_job("videodownload", _("Download Videos"), locale=lang) return JsonResponseMessageSuccess(_("Launched video download process successfully."))
def delete_videos(request): """ API endpoint for deleting videos. """ paths = OrderedSet(json.loads(request.body or "{}").get("paths", [])) lang = json.loads(request.body or "{}").get("lang", "en") youtube_ids = get_download_youtube_ids(paths, language=lang, downloaded=True) num_deleted = 0 for id in youtube_ids: # Delete the file on disk if delete_downloaded_files(id): num_deleted += 1 annotate_content_models_by_youtube_id(youtube_ids=youtube_ids.keys(), language=lang) return JsonResponseMessageSuccess(_("Deleted %(num_videos)s video(s) successfully.") % {"num_videos": num_deleted})