def get(self, playlist_id): playlist = playlists_service.get_playlist(playlist_id) project = projects_service.get_project(playlist["project_id"]) user_service.block_access_to_vendor() user_service.check_playlist_access(playlist) zip_file_path = playlists_service.build_playlist_zip_file(playlist) context_name = slugify.slugify(project["name"], separator="_") if project["production_type"] == "tvshow": episode_id = playlist["episode_id"] if episode_id is not None: episode = shots_service.get_episode(playlist["episode_id"]) episode_name = episode["name"] elif playlist["is_for_all"]: episode_name = "all assets" else: episode_name = "main pack" context_name += "_%s" % slugify.slugify( episode_name, separator="_" ) attachment_filename = "%s_%s.zip" % ( context_name, slugify.slugify(playlist["name"], separator="_"), ) return flask_send_file( zip_file_path, conditional=True, mimetype="application/zip", as_attachment=True, attachment_filename=attachment_filename, )
def delete(self, playlist_id, build_job_id): """ Remove given build job related to given playlist. --- tags: - Playlists parameters: - in: path name: playlist_id required: True schema: type: UUID example: a24a6ea4-ce75-4665-a070-57453082c25 - in: path name: build_job_id required: True schema: type: UUID example: a24a6ea4-ce75-4665-a070-57453082c25 responses: 204: description: Given build job removed """ user_service.block_access_to_vendor() playlist = playlists_service.get_playlist(playlist_id) user_service.check_playlist_access(playlist) playlists_service.remove_build_job(playlist, build_job_id) return "", 204
def get(self, playlist_id): """ Download given playlist as zip. --- tags: - Playlists parameters: - in: path name: playlist_id required: True schema: type: UUID example: a24a6ea4-ce75-4665-a070-57453082c25 responses: 200: description: Given playlist downloaded as zip """ playlist = playlists_service.get_playlist(playlist_id) project = projects_service.get_project(playlist["project_id"]) user_service.block_access_to_vendor() user_service.check_playlist_access(playlist) zip_file_path = playlists_service.build_playlist_zip_file(playlist) context_name = slugify.slugify(project["name"], separator="_") if project["production_type"] == "tvshow": episode_id = playlist["episode_id"] if episode_id is not None: episode = shots_service.get_episode(playlist["episode_id"]) episode_name = episode["name"] elif playlist["is_for_all"]: episode_name = "all assets" else: episode_name = "main pack" context_name += "_%s" % slugify.slugify( episode_name, separator="_" ) attachment_filename = "%s_%s.zip" % ( context_name, slugify.slugify(playlist["name"], separator="_"), ) return flask_send_file( zip_file_path, conditional=True, mimetype="application/zip", as_attachment=True, attachment_filename=attachment_filename, )
def get(self, playlist_id): playlist = playlists_service.get_playlist(playlist_id) project = projects_service.get_project(playlist["project_id"]) user_service.check_playlist_access(playlist) zip_file_path = playlists_service.build_playlist_zip_file(playlist) context_name = slugify.slugify(project["name"], separator="_") if project["production_type"] == "tvshow": episode = shots_service.get_episode(playlist["episode_id"]) context_name += "_%s" % slugify.slugify(episode["name"], separator="_") attachment_filename = "%s_%s.zip" % ( context_name, slugify.slugify(playlist["name"], separator="_"), ) return flask_send_file( zip_file_path, conditional=True, mimetype="application/zip", as_attachment=True, attachment_filename=attachment_filename, )
def delete(self, playlist_id, build_job_id): user_service.block_access_to_vendor() playlist = playlists_service.get_playlist(playlist_id) user_service.check_playlist_access(playlist) playlists_service.remove_build_job(playlist, build_job_id) return "", 204
def get(self, playlist_id, build_job_id): user_service.block_access_to_vendor() playlist = playlists_service.get_playlist(playlist_id) user_service.check_playlist_access(playlist) return playlists_service.get_build_job(build_job_id)
def get(self, playlist_id, build_job_id): playlist = playlists_service.get_playlist(playlist_id) user_service.check_playlist_access(playlist) return playlists_service.get_build_job(build_job_id)