refactor methods

This commit is contained in:
FrancescoGrazioso 2024-04-20 22:58:33 +02:00 committed by Francesco Grazioso
parent 49effa8ca5
commit a05ce87708

View File

@ -47,6 +47,7 @@ class SearchView(viewsets.ViewSet):
self.type_media = request.query_params.get("type_media") self.type_media = request.query_params.get("type_media")
self.page = self.request.query_params.get("page") self.page = self.request.query_params.get("page")
try:
match self.type_media: match self.type_media:
case "TV": case "TV":
self.site_version, self.domain = get_version_and_domain() self.site_version, self.domain = get_version_and_domain()
@ -79,7 +80,6 @@ class SearchView(viewsets.ViewSet):
episodes_downloader = EpisodeDownloader(self.media_id, self.media_slug) episodes_downloader = EpisodeDownloader(self.media_id, self.media_slug)
episoded_count = episodes_downloader.get_count_episodes() episoded_count = episodes_downloader.get_count_episodes()
items_per_page = 5 items_per_page = 5
try:
paginator = Paginator(range(episoded_count), items_per_page) paginator = Paginator(range(episoded_count), items_per_page)
page_number = self.page if self.page else 1 page_number = self.page if self.page else 1
@ -113,12 +113,11 @@ class DownloadView(viewsets.ViewSet):
response_dict = {"error": "No media found with that search query"} response_dict = {"error": "No media found with that search query"}
if self.type_media == "MOVIE": try:
match self.type_media:
case "MOVIE":
download_film(self.media_id, self.media_slug, self.domain) download_film(self.media_id, self.media_slug, self.domain)
response_dict = { case "TV":
"message": "Download done, it is saved in Video folder inside project root"
}
elif self.type_media == "TV":
video_source = VideoSource() video_source = VideoSource()
video_source.set_url_base_name(STREAM_SITE_NAME) video_source.set_url_base_name(STREAM_SITE_NAME)
video_source.set_version(self.site_version) video_source.set_version(self.site_version)
@ -135,16 +134,21 @@ class DownloadView(viewsets.ViewSet):
donwload_video(self.media_slug, self.download_id, i_episode) donwload_video(self.media_slug, self.download_id, i_episode)
# FIXME - This is not working properly # FIXME - This is not working properly
elif self.type_media == "TV_ANIME": case "TV_ANIME":
episodes_downloader = EpisodeDownloader(self.media_id, self.media_slug) episodes_downloader = EpisodeDownloader(self.media_id, self.media_slug)
episodes_downloader.download_episode(self.download_id) episodes_downloader.download_episode(self.download_id)
case "OVA":
anime_download_film(id_film=self.media_id, title_name=self.media_slug)
case _:
raise Exception("Type media not supported")
response_dict = { response_dict = {
"message": "Download done, it is saved in Video folder inside project root" "message": "Download done, it is saved in Video folder inside project root"
} }
elif self.type_media == "OVA": except Exception as e:
anime_download_film(id_film=self.media_id, title_name=self.media_slug)
response_dict = { response_dict = {
"message": "Download done, it is saved in Video folder inside project root" "error": "Error while downloading the media, please try again later",
"message": str(e),
} }
return Response(response_dict) return Response(response_dict)