From 2e2716bfd57d3514e4f8d488d3147b5b310b61d5 Mon Sep 17 00:00:00 2001 From: louis chauvet Date: Wed, 15 Aug 2018 13:00:58 +0200 Subject: [PATCH] Add translation for english reapair config loading system (int are forbidden in json keys :angry: ) --- main.py | 8 ++- modules/modules.py | 101 +++++++++++++++++---------------- traductions.py | 138 +++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 194 insertions(+), 53 deletions(-) create mode 100644 traductions.py diff --git a/main.py b/main.py index 6680bb6..5a9edb9 100644 --- a/main.py +++ b/main.py @@ -62,8 +62,9 @@ class Guild(): self.bot = bot self.config_file = config_file self.config = {"modules": ["modules"], - "prefixe": "¤", + "prefixe": "ยง", "master_admin": [318866596502306816], + "lang":"FR_fr" } self.modules = [] self.load_config() @@ -92,7 +93,8 @@ class Guild(): errors = [] if "modules" not in self.config["modules"]: self.config["modules"].append("modules") - for module in self.config["modules"]: + module_to_load = self.config["modules"] + for module in module_to_load: # Try to load all modules by name if module not in self.bot.modules.keys(): # Module is not an existing module @@ -195,4 +197,4 @@ class FoBot(discord.Client): myBot = FoBot() -myBot.run("NDcwNzI4NjAzMDEzNzQyNjAy.Dj3Ysg.ivUV-SNiYr0KlkHKiZqtfoD2WQ8", max_messages=100000000) +myBot.run("", max_messages=100000000) diff --git a/modules/modules.py b/modules/modules.py index 8c28a04..3fa3285 100644 --- a/modules/modules.py +++ b/modules/modules.py @@ -1,30 +1,9 @@ import discord +import traductions as tr + class MainClass: name = "modules" - description = "Permet de gérer les modules." - aide = { - "list_modules": { - "description":"Permet de lister les modules disponibles. Les modules en gras sont actifs.", - "exemples":[ - ("`list_modules`", "Liste tous les modules"), - ], - }, - "load": { - "description":"Commande permetant de charger des modules.", - "exemples":[ - ("`load fun`", "Charge le module fun"), - ("`load fun admin`", "Charge les modules fun et admin"), - ] - }, - "unload": { - "description":"Commande permetant de décharger des modules.", - "exemples":[ - ("`unload fun`", "Décharge le module fun"), - ("`unload fun admin`", "Décharge les modules fun et admin"), - ] - }, - } def __init__(self, guild): self.guild = guild @@ -34,33 +13,42 @@ class MainClass: errors = [] for arg in args: if args not in self.guild.config["modules"]: - self.guild.config["modules"].append(args[0]) + self.guild.config["modules"].append(arg) errors.extend(self.guild.update_modules()) if errors: - textes = [ - ("Erreur lors de l'activation du module %s:" % module, - "Celui-ci n'existe pas. Tapez %slist_modules pour voir la liste des modules disponibles" % + texts = [ + (tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["error"]["name"] % module, + tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["error"]["value"] % self.guild.config["prefixe"]) for module in errors ] - embed = discord.Embed(title="Erreur") - for erreur in textes: - embed.add_field(name=erreur[0], value=erreur[1], inline=False) + embed = discord.Embed( + title=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["error"]["title"]) + for error in texts: + embed.add_field(name=error[0], value=error[1], inline=False) await msg.channel.send(embed=embed) self.guild.save_config() else: - embed = discord.Embed(title="Erreur") + embed = discord.Embed( + title=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["permissionError"]["title"]) if len(args) == 1: - embed.add_field(name="Erreur lors du chargement du module.", - value="Vous n'avez pas la permission de charger un module.") + embed.add_field( + name=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["permissionError"]["one"][ + "name"], + value=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["permissionError"]["one"][ + "value"]) else: - embed.add_field(name="Erreur lors du chargement des modules.", - value="Vous n'avez pas la permission de charger des modules.") + embed.add_field( + name=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["permissionError"]["many"][ + "name"], + value=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["load"]["permissionError"]["many"][ + "value"]) await msg.channel.send(embed=embed) + return async def unload(self, msg, command, args): if msg.author.id in self.guild.config["master_admin"]: - errors=[] + errors = [] for arg in args: try: self.guild.config["modules"].remove(arg) @@ -70,44 +58,57 @@ class MainClass: errors.extend(self.guild.update_modules()) if errors: textes = [ - ("Erreur lors de la désactivation du module %s:" % module, - "Celui-ci n'existe pas ou n'est pas activé. Tapez %slist_modules pour voir la liste des modules disponibles" % + (tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["error"]["name"] % module, + tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["error"]["value"] % self.guild.config["prefixe"]) for module in errors ] - embed = discord.Embed(title="Erreur") + embed = discord.Embed( + title=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["error"]["title"]) for erreur in textes: embed.add_field(name=erreur[0], value=erreur[1], inline=False) await msg.channel.send(embed=embed) self.guild.save_config() else: - embed = discord.Embed(title="Erreur") + embed = discord.Embed( + title=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["permissionError"][ + "title"]) if len(args) == 1: - embed.add_field(name="Erreur lors du chargement du module.", - value="Vous n'avez pas la permission de charger un module.") + embed.add_field( + name=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["permissionError"]["one"][ + "name"], + value=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["permissionError"]["one"][ + "value"]) else: - embed.add_field(name="Erreur lors du chargement des modules.", - value="Vous n'avez pas la permission de charger des modules.") + embed.add_field( + name=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["permissionError"]["many"][ + "name"], + value=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["unload"]["permissionError"]["many"][ + "value"]) await msg.channel.send(embed=embed) + return async def list_modules(self, msg, command, args): - embed = discord.Embed(title="Liste des modules") + embed = discord.Embed(title=tr.tr[self.guild.config["lang"]]["modules"]["modules"]["list_modules"]["title"]) for module, classe in self.guild.bot.modules.items(): if module not in self.guild.config["modules"]: - embed.add_field(name=classe.name+":", value=classe.description, inline=False) + embed.add_field(name=classe.name + ":", + value=tr.tr[self.guild.config["lang"]]["modules"][classe.name]["description"], + inline=False) else: - embed.add_field(name="***"+classe.name + "***:", value=classe.description, inline=False) + embed.add_field(name="***" + classe.name + "***:", + value=tr.tr[self.guild.config["lang"]]["modules"][classe.name]["description"], + inline=False) await msg.channel.send(embed=embed) + return async def on_message(self, msg): if msg.content.startswith(self.guild.config["prefixe"]): command, *args = msg.content.lstrip(self.guild.config["prefixe"]).split(" ") - print(command, args) if command == "load": await self.load(msg, command, args) elif command == "list_modules": await self.list_modules(msg, command, args) elif command == "unload": await self.unload(msg, command, args) - - + return diff --git a/traductions.py b/traductions.py new file mode 100644 index 0000000..82ec11d --- /dev/null +++ b/traductions.py @@ -0,0 +1,138 @@ +tr = { + "FR_fr": { + "modules": { + "modules": { + "description": "Permet de gérer les modules.", + "aide": { + "list_modules": { + "description": "Liste tous les modules. Les modules en gras sont activés.", + "exemples": [ + ("`list_modules`", "Liste tous les modules"), + ], + }, + "load": { + "description": "Permet de charger un ou des modules.", + "exemples": [ + ("`load fun`", "Charge le module fun"), + ("`load fun admin`", "Charge les modules fun et admin"), + ], + }, + "unload": { + "description": "Permet de décharger un ou des modules.", + "exemples": [ + ("`unload fun`", "Décharge le module fun"), + ("`unload fun admin`", "Décharge les modules fun et admin"), + ], + }, + }, + "list_modules": { + "title": "Liste des modules", + }, + "load": { + "error": { + "name": "Erreur lors de l'activation du module %s:", + "value": "Celui-ci n'existe pas. Tapez %slist_modules pour voir la liste des modules disponibles.", + "title": "Erreur", + }, + "permissionError": { + "title": "Erreur", + "one": { + "name": "Erreur lors du chargement du module.", + "value": "Vous n'avez pas la permission de charger un module.", + }, + "many": { + "name": "Erreur lors du chargement des modules.", + "value": "Vous n'avez pas la permission de charger des modules." + } + }, + "unload": { + "error": { + "name": "Erreur lors de la désactivation du module %s:", + "value": "Celui-ci n'existe pas ou n'est pas activé. Tapez %slist_modules pour voir la liste des modules disponibles.", + "title": "Erreur", + }, + "permissionError": { + "title": "Erreur", + "one": { + "name": "Erreur lors de la désactivation du module.", + "value": "Vous n'avez pas la permission de désactiver un module.", + }, + "many": { + "name": "Erreur lors de la désactivation des modules.", + "value": "Vous n'avez pas la permission de désactiver des modules." + }, + }, + }, + }, + }, + }, + }, + "EN_us": { + "modules": { + "modules": { + "description": "Allow to manage modules.", + "aide": { + "list_modules": { + "description": "Lists all modules. Modules in bold are enabled.", + "exemples": [ + ("`list_modules`", "Lists all modules"), + ], + }, + "load": { + "description": "Load one or more modules.", + "examples": [ + ("`load fun`", "Load fun module"), + ("`load fun admin`", "Load fun and admin modules"), + ], + }, + "unload": { + "description": "Unload one or more modules.", + "exemples": [ + ("`load fun`", "Unload fun module"), + ("`upload fun admin`", "Unload fun and admin modules"), + ], + }, + }, + "list_modules": { + "title": "List of modules" + }, + "load": { + "error": { + "name": "Error when activating the %s module:", + "value": "This one doesn't exist. Type %slist_modules to see the list of available modules.", + "title": "Error", + }, + "permissionError": { + "title": "Error", + "one": { + "name": "Error when loading the module.", + "value": "You do not have permission to load a module.", + }, + "many": { + "name": "Error when loading modules.", + "value": "You do not have permission to load modules.", + }, + }, + }, + "unload": { + "error": { + "name": "Error when deactivating the %s module:", + "value": "This one doesn't exist or isn't activate. Type %slist_modules to see the list of available modules.", + "title": "Error", + }, + "permissionError": { + "title": "Error", + "one": { + "name": "Error when deactivating the module.", + "value": "You do not have permission to deactivate a module.", + }, + "many": { + "name": "Error when deactivate modules.", + "value": "You do not have permission to deactivate modules.", + }, + }, + }, + }, + }, + }, +}