Update this to ensure get_perms is not called if the API is disabled

This commit is contained in:
Drapersniper
2020-09-25 18:06:55 +01:00
parent 789123795c
commit a13850067c
2 changed files with 4 additions and 2 deletions

View File

@@ -34,7 +34,6 @@ class GlobalCacheWrapper:
self.session = session
self.api_key = None
self._handshake_token = ""
self.can_write = False
self._handshake_token = ""
self.has_api_key = None
self._token: Mapping[str, str] = {}
@@ -164,7 +163,8 @@ class GlobalCacheWrapper:
async def get_perms(self):
global_api_user = copy(self.cog.global_api_user)
await self._get_api_key()
if self.api_key is None:
is_enabled = await self.config.global_db_enabled()
if (not is_enabled) or self.api_key is None:
return global_api_user
with contextlib.suppress(aiohttp.ContentTypeError, asyncio.TimeoutError):
async with aiohttp.ClientSession(json_serialize=json.dumps) as session:

View File

@@ -1380,6 +1380,8 @@ class AudioSetCommands(MixinMeta, metaclass=CompositeMetaClass):
"""
state = await self.config.global_db_enabled()
await self.config.global_db_enabled.set(not state)
if not state: # Ensure a call is made if the API is enabled to update user perms
self.global_api_user = await self.api_interface.global_cache_api.get_perms()
await ctx.send(
_("Global DB is {status}").format(status=_("enabled") if not state else _("disabled"))
)