Files
swingmusic-extended/app/store/homepage.py
T
2024-10-29 01:57:01 +03:00

33 lines
945 B
Python

from app.models.mix import Mix
from app.store.tracks import TrackStore
from app.utils.auth import get_current_userid
class HomepageStore:
entries = {
"artist_mixes": {},
}
@classmethod
def set_artist_mixes(cls, mixes: list[Mix], userid: int = 1):
print(f"⭐⭐⭐⭐ Setting {len(mixes)} artist mixes")
print("mix artists", [mix.title for mix in mixes])
idmap = {mix.id: mix for mix in mixes}
cls.entries["artist_mixes"][userid] = idmap
@classmethod
def get_artist_mixes(cls):
return [
{
"type": "mix",
"item": mix.to_dict(),
}
for mix in cls.entries["artist_mixes"]
.get(get_current_userid(), {})
.values()
]
@classmethod
def get_mix(cls, mixtype: str, mixid: str):
return cls.entries[mixtype].get(get_current_userid(), {}).get(mixid).to_full_dict()