fix: Registrar WelcomeTranslationView globalmente para persistencia después de reinicios

This commit is contained in:
2026-03-20 03:22:46 -06:00
parent 048e39e6a9
commit eaf4f51c5a
2 changed files with 9 additions and 4 deletions

View File

@@ -26,6 +26,7 @@ async def on_ready():
load_lang_mappings("discord") load_lang_mappings("discord")
bot.add_view(PersistentTranslationView()) bot.add_view(PersistentTranslationView())
bot.add_view(WelcomeTranslationView())
print(f"Bot Discord conectado como {bot.user}") print(f"Bot Discord conectado como {bot.user}")
try: try:

View File

@@ -168,13 +168,17 @@ class WelcomeTranslationButton(discord.ui.Button):
await interaction.followup.send(f"❌ Error: {str(e)}", ephemeral=True) await interaction.followup.send(f"❌ Error: {str(e)}", ephemeral=True)
class WelcomeTranslationView(discord.ui.View): class WelcomeTranslationView(discord.ui.View):
def __init__(self, guild_id: int): def __init__(self, guild_id: int = None):
super().__init__(timeout=None) super().__init__(timeout=None)
db_langs = get_available_languages()
if guild_id is not None:
active_codes = get_active_languages(guild_id) active_codes = get_active_languages(guild_id)
if not active_codes: if not active_codes:
active_codes = get_bot_languages("discord") active_codes = get_bot_languages("discord")
else:
active_codes = get_bot_languages("discord")
db_langs = get_available_languages()
for lang in db_langs: for lang in db_langs:
if lang['code'] in active_codes: if lang['code'] in active_codes:
self.add_item(WelcomeTranslationButton(lang['name'], lang['code'], lang.get('flag', ''))) self.add_item(WelcomeTranslationButton(lang['name'], lang['code'], lang.get('flag', '')))