From 154400a23e183fee992cb73544faef3d7554f7ec Mon Sep 17 00:00:00 2001 From: Luna Date: Wed, 29 Jul 2020 16:02:26 -0300 Subject: [PATCH] add "_new" fields on overwrites and roles --- litecord/permissions.py | 2 +- litecord/storage.py | 11 ++++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/litecord/permissions.py b/litecord/permissions.py index 6a77582..9b74d8e 100644 --- a/litecord/permissions.py +++ b/litecord/permissions.py @@ -87,7 +87,7 @@ class Permissions(ctypes.Union): return self.binary -ALL_PERMISSIONS = Permissions(0b01111111111101111111110111111111) +ALL_PERMISSIONS = Permissions(0b01111111111111111111111111111111) EMPTY_PERMISSIONS = Permissions(0) diff --git a/litecord/storage.py b/litecord/storage.py index c2790b1..819e1f1 100644 --- a/litecord/storage.py +++ b/litecord/storage.py @@ -469,6 +469,10 @@ class Storage: def _overwrite_convert(row): drow = dict(row) + drow["allow_new"] = str(drow["allow"]) + drow["deny_new"] = str(drow["deny"]) + drow["allow"] = drow["allow"] & ((2 << 31) - 1) + drow["deny"] = drow["deny"] & ((2 << 31) - 1) target_type = drow["target_type"] drow["type"] = "member" if target_type == 0 else "role" @@ -673,7 +677,12 @@ class Storage: if not row: return None - return dict(row) + drow = dict(row) + + drow["permissions_new"] = str(drow["permissions"]) + drow["permissions"] = drow["permissions"] & ((2 << 31) - 1) + + return drow async def get_role_data(self, guild_id: int) -> List[Dict[str, Any]]: """Get role list information on a guild."""