feat(bot): ✨ Add server's vanity invite in leaderboard.

This commit is contained in:
Nyeki.py
2024-10-19 00:45:53 -03:00
parent 4e040ca8ad
commit b06db39074
4 changed files with 31 additions and 6 deletions
+18 -5
View File
@@ -61,20 +61,25 @@ class Admin(base.Cog):
for server_map in server_counts[:10]:
if servers_map[server_map[0]].name is None:
try:
servers_map[server_map[0]].name = (
await self.bot.fetch_guild(server_map[0])
).name
guild = await self.bot.fetch_guild(server_map[0])
except errors.DiscordException:
pass
servers_map[server_map[0]].name = guild.name
vanity = await guild.vanity_invite()
if vanity is not None:
servers_map[server_map[0]].vanity_code = vanity.code
for i, server_map in enumerate(server_counts):
servers_map[server_map[0]].leaderboard_position = i + 1
servers_map[server_map[0]].leaderboard_calls_count = server_map[1]
await models.Server.bulk_update(
servers_map.values(),
["name", "leaderboard_position", "leaderboard_calls_count"],
["name", "vanity_code", "leaderboard_position", "leaderboard_calls_count"],
500,
)
@@ -89,7 +94,15 @@ class Admin(base.Cog):
after (discord.Guild): The server after it being updated.
"""
await models.Server.update_or_create({"name": after.name}, id=after.id)
vanity = await after.vanity_invite()
vanity_code = None
if vanity is not None:
vanity_code = vanity.code
await models.Server.update_or_create(
{"name": after.name, "vanity_code": vanity_code}, id=after.id
)
@commands.group(invoke_without_command=True)
@commands.guild_only()