mirror of https://gitlab.com/litecord/litecord.git
litecord.storage: only query secure fields when actually secure=True
This commit is contained in:
parent
40ea0ac603
commit
31042e4129
|
|
@ -86,10 +86,14 @@ class Storage:
|
||||||
"""Get a single user payload."""
|
"""Get a single user payload."""
|
||||||
user_id = int(user_id)
|
user_id = int(user_id)
|
||||||
|
|
||||||
# TODO: query less instead of popping when secure=True
|
fields = ['id::text', 'username', 'discriminator',
|
||||||
user_row = await self.db.fetchrow("""
|
'avatar', 'flags', 'bot', 'premium_since']
|
||||||
SELECT id::text, username, discriminator, avatar, email,
|
|
||||||
flags, bot, mfa_enabled, verified, premium_since
|
if secure:
|
||||||
|
fields.extend(['email', 'verified', 'mfa_enabled'])
|
||||||
|
|
||||||
|
user_row = await self.db.fetchrow(f"""
|
||||||
|
SELECT {','.join(fields)}
|
||||||
FROM users
|
FROM users
|
||||||
WHERE users.id = $1
|
WHERE users.id = $1
|
||||||
""", user_id)
|
""", user_id)
|
||||||
|
|
@ -102,11 +106,7 @@ class Storage:
|
||||||
duser['premium'] = duser['premium_since'] is not None
|
duser['premium'] = duser['premium_since'] is not None
|
||||||
duser.pop('premium_since')
|
duser.pop('premium_since')
|
||||||
|
|
||||||
if not secure:
|
if secure:
|
||||||
duser.pop('email')
|
|
||||||
duser.pop('verified')
|
|
||||||
duser.pop('mfa_enabled')
|
|
||||||
else:
|
|
||||||
duser['mobile'] = False
|
duser['mobile'] = False
|
||||||
duser['phone'] = None
|
duser['phone'] = None
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue