Captain Ezio commited on
Commit
fc80e48
·
1 Parent(s): d7dc9ff

Delete Powers/tr_engine directory

Browse files
Powers/tr_engine/__init__.py DELETED
@@ -1,5 +0,0 @@
1
- from Powers.tr_engine.tr_engine import lang_dict, tlang
2
-
3
-
4
- async def useless_func():
5
- return lang_dict, tlang
 
 
 
 
 
 
Powers/tr_engine/tr_engine.py DELETED
@@ -1,72 +0,0 @@
1
- from functools import reduce
2
- from glob import glob
3
- from operator import getitem
4
- from os import path
5
- from threading import RLock
6
- from traceback import format_exc
7
-
8
- from pyrogram.types import CallbackQuery
9
- from yaml import FullLoader
10
- from yaml import load as load_yml
11
-
12
- from Powers import ENABLED_LOCALES, LOGGER
13
- from Powers.database.lang_db import Langs
14
-
15
- # Initialise
16
- LANG_LOCK = RLock()
17
-
18
-
19
- def cache_localizations(files):
20
- """Get all translated strings from files."""
21
- ldict = {lang: {} for lang in ENABLED_LOCALES}
22
- for file in files:
23
- lang_name = (file.split(path.sep)[1]).replace(".yml", "")
24
- lang_data = load_yml(open(file, encoding="utf-8"), Loader=FullLoader)
25
- ldict[lang_name] = lang_data
26
- return ldict
27
-
28
-
29
- # Get all translation files
30
- lang_files = []
31
- for locale in ENABLED_LOCALES:
32
- lang_files += glob(path.join("locales", f"{locale}.yml"))
33
- lang_dict = cache_localizations(lang_files)
34
-
35
-
36
- def tlang(m, user_msg):
37
- """Main function for getting the string of preferred language."""
38
- with LANG_LOCK:
39
- default_lang = "en"
40
-
41
- m_args = user_msg.split(".") # Split in a list
42
-
43
- # Get Chat
44
- if isinstance(m, CallbackQuery):
45
- m = m.message
46
-
47
- # Get language of user from database, default = 'en' (English)
48
- try:
49
- lang = Langs(m.chat.id).get_lang()
50
- except Exception as ef:
51
- LOGGER.error(f"Lang Error: {ef}")
52
- lang = default_lang
53
- LOGGER.error(format_exc())
54
-
55
- # Raise exception if lang_code not found
56
- if lang not in ENABLED_LOCALES:
57
- LOGGER.error("Non-enabled locale used by user!")
58
- lang = default_lang
59
-
60
- # Get lang
61
- m_args.insert(0, lang)
62
- m_args.insert(1, "strings")
63
-
64
- try:
65
- txt = reduce(getitem, m_args, lang_dict)
66
- except KeyError:
67
- m_args.pop(0)
68
- m_args.insert(0, default_lang)
69
- txt = reduce(getitem, m_args, lang_dict)
70
- LOGGER.error(format_exc())
71
-
72
- return txt