mirror of
https://github.com/Dvorinka/swingmusic-extended.git
synced 2026-06-03 20:13:02 +00:00
4a9f804e70
+ port populate to new db interface
+ add genrehashes and hash info to tracks
+ properly structure new db table files
+ move helpers to dedicated utils file
+ move settings from db to config file
+ move artists, albums, auth and favorites endpoint to new db interface
+ use folder store to index filepaths
+ paginate favorite pages
+ 56 moretiny changes 😅
29 lines
665 B
Python
29 lines
665 B
Python
from dataclasses import asdict, field, dataclass
|
|
import json
|
|
|
|
|
|
@dataclass(slots=True)
|
|
class User:
|
|
id: int
|
|
image: str
|
|
password: str
|
|
username: str
|
|
roles: list[str]
|
|
extra: dict[str, str] = field(default_factory=dict)
|
|
|
|
# NOTE: roles: ['admin', 'user', 'curator']
|
|
roles: list[str] = field(default_factory=lambda: ["user"])
|
|
|
|
def todict(self):
|
|
this_dict = asdict(self)
|
|
del this_dict["password"]
|
|
|
|
return this_dict
|
|
|
|
def todict_simplified(self):
|
|
return {
|
|
"id": self.id,
|
|
"username": self.username,
|
|
"firstname": self.extra["firstname"] if self.extra else "",
|
|
}
|