mirror of
https://github.com/yawaflua/Flask-Discord.git
synced 2025-12-10 04:19:31 +02:00
User model
This commit is contained in:
@@ -12,3 +12,8 @@ ALL_SCOPES = [
|
|||||||
DEFAULT_SCOPES = [
|
DEFAULT_SCOPES = [
|
||||||
"bot", "identify", "email", "guilds", "guilds.join"
|
"bot", "identify", "email", "guilds", "guilds.join"
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
|
IMAGE_BASE_URL = "https://cdn.discordapp.com/"
|
||||||
|
|
||||||
|
USER_AVATAR_BASE_URL = IMAGE_BASE_URL + "avatars/{user_id}/{avatar_hash}.png"
|
||||||
|
|||||||
0
flask_discord/models/__init__.py
Normal file
0
flask_discord/models/__init__.py
Normal file
41
flask_discord/models/user.py
Normal file
41
flask_discord/models/user.py
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
from .. import configs
|
||||||
|
|
||||||
|
|
||||||
|
class User(object):
|
||||||
|
|
||||||
|
def __init__(self, payload):
|
||||||
|
self._payload = payload
|
||||||
|
self.id = self._payload["id"]
|
||||||
|
self.username = self._payload["username"]
|
||||||
|
self.discriminator = self._payload["discriminator"]
|
||||||
|
self.avatar_hash = self._payload.get("avatar", self.discriminator)
|
||||||
|
self.bot = self._payload.get("bot", False)
|
||||||
|
self.mfa_enabled = self._payload.get("mfa_enabled")
|
||||||
|
self.locale = self._payload.get("locale")
|
||||||
|
self.verified = self._payload.get("verified")
|
||||||
|
self.email = self._payload.get("email")
|
||||||
|
self.flags = self._payload.get("flags")
|
||||||
|
self.premium_type = self._payload.get("premium_type")
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"{self.name}#{self.discriminator}"
|
||||||
|
|
||||||
|
@property
|
||||||
|
def name(self):
|
||||||
|
return self.username
|
||||||
|
|
||||||
|
@property
|
||||||
|
def avatar_url(self):
|
||||||
|
return configs.USER_AVATAR_BASE_URL.format(user_id=self.id, avatar_hash=self.avatar_hash)
|
||||||
|
|
||||||
|
@property
|
||||||
|
def is_avatar_animated(self):
|
||||||
|
return self.avatar_hash.startswith("a_")
|
||||||
|
|
||||||
|
def to_json(self):
|
||||||
|
return self._payload
|
||||||
|
|
||||||
|
|
||||||
|
class Bot(User):
|
||||||
|
|
||||||
|
pass
|
||||||
Reference in New Issue
Block a user