Spaces:
Paused
Paused
Captain Ezio
commited on
Commit
Β·
d4372b7
1
Parent(s):
1605ecb
Waste
Browse files- Powers/plugins/langs.py +0 -118
Powers/plugins/langs.py
DELETED
|
@@ -1,118 +0,0 @@
|
|
| 1 |
-
from asyncio import sleep
|
| 2 |
-
|
| 3 |
-
from pyrogram import filters
|
| 4 |
-
from pyrogram.types import CallbackQuery, Message
|
| 5 |
-
|
| 6 |
-
from Powers import LOGGER
|
| 7 |
-
from Powers.bot_class import Gojo
|
| 8 |
-
from Powers.database.lang_db import Langs
|
| 9 |
-
from Powers.utils.custom_filters import admin_filter, command
|
| 10 |
-
from Powers.utils.kbhelpers import ikb
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
async def gen_langs_kb():
|
| 14 |
-
langs = sorted(list(lang_dict.keys()))
|
| 15 |
-
return [
|
| 16 |
-
[
|
| 17 |
-
(
|
| 18 |
-
f"{lang_dict[lang]['main']['language_flag']} {lang_dict[lang]['main']['language_name']} ({lang_dict[lang]['main']['lang_sample']})",
|
| 19 |
-
f"set_lang.{lang}",
|
| 20 |
-
)
|
| 21 |
-
for lang in langs
|
| 22 |
-
],
|
| 23 |
-
[
|
| 24 |
-
(
|
| 25 |
-
"π Help us with translations!",
|
| 26 |
-
"https://crowdin.com/project/gojosatarou",
|
| 27 |
-
"url",
|
| 28 |
-
),
|
| 29 |
-
],
|
| 30 |
-
]
|
| 31 |
-
|
| 32 |
-
|
| 33 |
-
@Gojo.on_callback_query(filters.regex("^chlang$"))
|
| 34 |
-
async def chlang_callback(_, q: CallbackQuery):
|
| 35 |
-
kb = await gen_langs_kb()
|
| 36 |
-
kb.append([(f"Β« {(tlang(q, 'general.back_btn'))}", "start_back")])
|
| 37 |
-
|
| 38 |
-
await q.message.edit_text(
|
| 39 |
-
(tlang(q, "langs.changelang")),
|
| 40 |
-
reply_markup=ikb(kb),
|
| 41 |
-
)
|
| 42 |
-
await q.answer()
|
| 43 |
-
return
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
@Gojo.on_callback_query(filters.regex("^close$"), group=3)
|
| 47 |
-
async def close_btn_callback(_, q: CallbackQuery):
|
| 48 |
-
await q.message.delete()
|
| 49 |
-
try:
|
| 50 |
-
await q.message.reply_to_message.delete()
|
| 51 |
-
except Exception as ef:
|
| 52 |
-
LOGGER.error(f"Error: Cannot delete message\n{ef}")
|
| 53 |
-
await q.answer()
|
| 54 |
-
return
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
@Gojo.on_callback_query(filters.regex("^set_lang."))
|
| 58 |
-
async def set_lang_callback(_, q: CallbackQuery):
|
| 59 |
-
lang_code = q.data.split(".")[1]
|
| 60 |
-
|
| 61 |
-
Langs(q.message.chat.id).set_lang(lang_code)
|
| 62 |
-
await sleep(0.1)
|
| 63 |
-
|
| 64 |
-
if q.message.chat.type == "private":
|
| 65 |
-
keyboard = ikb([[(f"Β« {(tlang(q, 'general.back_btn'))}", "start_back")]])
|
| 66 |
-
else:
|
| 67 |
-
keyboard = None
|
| 68 |
-
await q.message.edit_text(
|
| 69 |
-
f"π {((tlang(q, 'langs.changed')).format(lang_code=lang_code))}",
|
| 70 |
-
reply_markup=keyboard,
|
| 71 |
-
)
|
| 72 |
-
await q.answer()
|
| 73 |
-
return
|
| 74 |
-
|
| 75 |
-
|
| 76 |
-
@Gojo.on_message(
|
| 77 |
-
command(["lang", "setlang"]) & (admin_filter | filters.private),
|
| 78 |
-
group=7,
|
| 79 |
-
)
|
| 80 |
-
async def set_lang(_, m: Message):
|
| 81 |
-
args = m.text.split()
|
| 82 |
-
|
| 83 |
-
if len(args) > 2:
|
| 84 |
-
await m.reply_text(tlang(m, "langs.correct_usage"))
|
| 85 |
-
return
|
| 86 |
-
if len(args) == 2:
|
| 87 |
-
lang_code = args[1]
|
| 88 |
-
avail_langs = set(lang_dict.keys())
|
| 89 |
-
if lang_code not in avail_langs:
|
| 90 |
-
await m.reply_text(
|
| 91 |
-
f"Please choose a valid language code from: {', '.join(avail_langs)}",
|
| 92 |
-
)
|
| 93 |
-
return
|
| 94 |
-
Langs(m.chat.id).set_lang(lang_code)
|
| 95 |
-
LOGGER.info(f"{m.from_user.id} change language to {lang_code} in {m.chat.id}")
|
| 96 |
-
await m.reply_text(
|
| 97 |
-
f"π {((tlang(m, 'langs.changed')).format(lang_code=lang_code))}",
|
| 98 |
-
)
|
| 99 |
-
return
|
| 100 |
-
await m.reply_text(
|
| 101 |
-
(tlang(m, "langs.changelang")),
|
| 102 |
-
reply_markup=ikb(await gen_langs_kb()),
|
| 103 |
-
)
|
| 104 |
-
return
|
| 105 |
-
|
| 106 |
-
|
| 107 |
-
__PLUGIN__ = "language"
|
| 108 |
-
|
| 109 |
-
__alt_name__ = ["lang", "langs", "languages"]
|
| 110 |
-
__buttons__ = [
|
| 111 |
-
[
|
| 112 |
-
(
|
| 113 |
-
"π Help us with translations!",
|
| 114 |
-
"https://t.me/gojo_updates",
|
| 115 |
-
"url",
|
| 116 |
-
),
|
| 117 |
-
],
|
| 118 |
-
]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|