doc and style: formatted the whole codebase to pep8 plus added documentation where necessary

This commit is contained in:
Benedict Xavier Wanyonyi
2024-05-30 15:43:45 +03:00
parent e526e31083
commit b94987dfd7
54 changed files with 555 additions and 346 deletions

View File

@@ -1,19 +1,12 @@
import json
import os
from Model.base_model import BaseScreenModel
from libs.anilist import AniList
from Utility.media_card_loader import MediaCardLoader
from kivy.storage.jsonstore import JsonStore
user_data= JsonStore("user_data.json")
class AnimeScreenModel(BaseScreenModel):
"""the Anime screen model
"""
data = {}
anime_id = 0
def media_card_generator(self):
for anime_item in self.data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
def get_anime_data(self,id:int):
return AniList.get_anime(id)

View File

@@ -5,16 +5,4 @@ class DownloadsScreenModel(BaseScreenModel):
"""
Handles the download screen logic
"""
# already_in_user_anime_list = []
# def update_my_anime_list_view(self,not_yet_in_user_anime_list:list,**kwargs):
# success,self.data = AniList.search(id_in=not_yet_in_user_anime_list)
# if success:
# return self.media_card_generator()
# else:
# show_notification(f"Failed to update my list screen view",self.data["Error"])
# return None
# def media_card_generator(self):
# for anime_item in self.data["data"]["Page"]["media"]:
# yield MediaCardLoader.media_card(anime_item)

View File

@@ -1,73 +1,79 @@
from Model.base_model import BaseScreenModel
from libs.anilist import AniList
from Utility.media_card_loader import MediaCardLoader
from kivy.storage.jsonstore import JsonStore
user_data= JsonStore("user_data.json")
class HomeScreenModel(BaseScreenModel):
"""The home screen model"""
def get_trending_anime(self):
success,data = AniList.get_trending()
success, data = AniList.get_trending()
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def get_most_favourite_anime(self):
success,data = AniList.get_most_favourite()
success, data = AniList.get_most_favourite()
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def get_most_recently_updated_anime(self):
success,data = AniList.get_most_recently_updated()
success, data = AniList.get_most_recently_updated()
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def get_most_popular_anime(self):
success,data = AniList.get_most_popular()
success, data = AniList.get_most_popular()
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def get_most_scored_anime(self):
success,data = AniList.get_most_scored()
success, data = AniList.get_most_scored()
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def get_upcoming_anime(self):
success,data = AniList.get_upcoming_anime(1)
success, data = AniList.get_upcoming_anime(1)
if success:
def _data_generator():
for anime_item in data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
return _data_generator()
else:
return data
def update_user_anime_list(self,anime_id,is_add):
my_list:list = user_data.get("my_list")["list"]
if is_add:
my_list.append(anime_id)
elif not(is_add) and my_list:
my_list.remove(anime_id)
user_data.put("my_list",list=my_list)

View File

@@ -1,10 +1,6 @@
from typing import Generator
from Model.base_model import BaseScreenModel
from libs.anilist import AniList
from Utility.media_card_loader import MediaCardLoader
from View.components import MediaCard
from Utility import show_notification
from Utility import MediaCardLoader, show_notification
class SearchScreenModel(BaseScreenModel):
@@ -31,7 +27,3 @@ class SearchScreenModel(BaseScreenModel):
for anime_item in self.data["data"]["Page"]["media"]:
yield MediaCardLoader.media_card(anime_item)
self.pagination_info = self.data["data"]["Page"]["pageInfo"]
# def extract_pagination_info(self):
# pagination_info = None
# return pagination_info