diff --git a/function.py b/function.py index e8fcae5..48057b6 100644 --- a/function.py +++ b/function.py @@ -41,7 +41,7 @@ from motor.motor_asyncio import ( ROOT_DIR = os.path.dirname(os.path.abspath(__file__)) -if not os.path.exists(os.path.join(ROOT_DIR, "settings.json")): +if not os.path.exists(os.path.join(os.getenv("CREDENTIALS_DIRECTORY"), "settings.json")): raise Exception("Settings file not set!") #--------------- Cache Var --------------- @@ -85,7 +85,7 @@ class TempCtx(): #-------------- Vocard Functions -------------- def open_json(path: str) -> dict: try: - with open(os.path.join(ROOT_DIR, path), encoding="utf8") as json_file: + with open(path, encoding="utf8") as json_file: return json.load(json_file) except: return {} @@ -97,7 +97,7 @@ def update_json(path: str, new_data: dict) -> None: else: data.update(new_data) - with open(os.path.join(ROOT_DIR, path), "w") as json_file: + with open(path, "w") as json_file: json.dump(data, json_file, indent=4) def langs_setup() -> None: @@ -107,7 +107,7 @@ def langs_setup() -> None: for language in os.listdir(os.path.join(ROOT_DIR, "local_langs")): if language.endswith('.json'): - LOCAL_LANGS[language[:-5]] = open_json(os.path.join("local_langs", language)) + LOCAL_LANGS[language[:-5]] = open_json(os.path.join(ROOT_DIR, "local_langs", language)) return @@ -163,7 +163,7 @@ def get_lang_non_async(guild_id: int, *keys) -> Union[list[str], str]: settings = SETTINGS_BUFFER.get(guild_id, {}) lang = settings.get("lang", "EN") if lang in LANGS and not LANGS[lang]: - LANGS[lang] = open_json(os.path.join("langs", f"{lang}.json")) + LANGS[lang] = open_json(os.path.join(ROOT_DIR, "langs", f"{lang}.json")) if len(keys) == 1: return LANGS.get(lang, {}).get(keys[0], "Language pack not found!") @@ -180,7 +180,7 @@ async def get_lang(guild_id:int, *keys) -> Optional[Union[list[str], str]]: settings = await get_settings(guild_id) lang = settings.get("lang", "EN") if lang in LANGS and not LANGS[lang]: - LANGS[lang] = open_json(os.path.join("langs", f"{lang}.json")) + LANGS[lang] = open_json(os.path.join(ROOT_DIR, "langs", f"{lang}.json")) if len(keys) == 1: return LANGS.get(lang, {}).get(keys[0]) diff --git a/main.py b/main.py index 202db23..f486658 100644 --- a/main.py +++ b/main.py @@ -138,13 +138,7 @@ class Vocard(commands.Bot): await self.ipc.connect() except Exception as e: func.logger.error(f"Cannot connected to dashboard! - Reason: {e}") - - if not func.settings.version or func.settings.version != update.__version__: - await self.tree.sync() - func.update_json("settings.json", new_data={"version": update.__version__}) - for locale_key, values in func.MISSING_TRANSLATOR.items(): - func.logger.warning(f'Missing translation for "{", ".join(values)}" in "{locale_key}"') - + await self.tree.sync() async def on_ready(self): func.logger.info("------------------") func.logger.info(f"Logging As {self.user}") @@ -209,7 +203,7 @@ async def get_prefix(bot: commands.Bot, message: discord.Message) -> str: return prefix # Loading settings and logger -func.settings = Settings(func.open_json("settings.json")) +func.settings = Settings(func.open_json(os.path.join(os.getenv("CREDENTIALS_DIRECTORY"),"settings.json"))) LOG_SETTINGS = func.settings.logging if (LOG_FILE := LOG_SETTINGS.get("file", {})).get("enable", True):