diff --git a/heroku/langpacks/de.yml b/heroku/langpacks/de.yml index 0d83b3a..e4af766 100644 --- a/heroku/langpacks/de.yml +++ b/heroku/langpacks/de.yml @@ -186,6 +186,26 @@ heroku_web: btn_yes: "🚸 Trotzdem öffnen" btn_no: "🔻 Schließen" lavhost_web: "✌️ Über diesen Link gelangst du zur Heroku-Weboberfläche auf lavHost\n\n💡 Du musst dich mit den bei der lavHost-Einrichtung angegebenen Daten anmelden" + invalid_target: "Antworten Sie auf die Nachricht der Person, die Sie hinzufügen möchten, oder geben Sie eine gültige @username/ID an." + cant_add_self: "Du kannst dich nicht selbst hinzufügen." + add_user_confirm: "Möchten Sie das Konto {} ({}) wirklich hinzufügen?" + add_user_insecure: "Möchten Sie das Konto {} ({}) wirklich hinzufügen? Verwenden Sie zur Bestätigung den Befehl {}addacc {} force_insecure." + enter_number: "Nummer eingeben" + your_phone_number: "Ihre Telefonnummer" + enter_code: "Code eingeben" + login_code: "Ihr Login-Code" + enter_2fa: "2FA Passwort eingeben" + your_2fa: "Ihr Passwort für die Zwei-Faktor-Authentifizierung" + incorrect_number: "Sie haben eine falsche Telefonnummer eingegeben.\n\n" + enter_number_format: "Geben Sie Ihre Telefonnummer im internationalen Format ein (z. B. +79212345678):" + login_successful: "🎉 Erfolgreiche Anmeldung!" + floodwait_error: "Es gibt zu viele Versuche. Versuchen Sie es in {} Sekunden erneut." + code_sent: "Der Code wurde gesendet. Geben Sie es ein" + invalid_code: "Ungültiger Code. Versuchen Sie es erneut." + invalid_password: "Das Passwort ist ungültig. Versuchen Sie es erneut." + 2fa_enabled: "Sie haben die Zwei-Faktor-Authentifizierung aktiviert. Geben Sie das Passwort ein." + request_code: "🔃 Code erneut anfordern" + code_expired: "Der Code ist abgelaufen." _cmd_doc_weburl: "Öffnet einen Tunnel zur Heroku-Weboberfläche" heroku_backup: diff --git a/heroku/langpacks/en.yml b/heroku/langpacks/en.yml index ce2a55e..e720fbc 100644 --- a/heroku/langpacks/en.yml +++ b/heroku/langpacks/en.yml @@ -198,9 +198,29 @@ heroku_web: host_denied: "💬 Session addition commands are not available on your hosting, please contact your hosting administration." web_btn: "🌍 Web interface" _cmd_doc_weburl: "Opens web tunnel to your Heroku web interface" - btn_yes: "🚸 Open anyway" - btn_no: "🔻 Cancel" + btn_yes: "🚸 Confirm anyway" + btn_no: "🔻 Close" lavhost_web: "✌️ This link leads to your Heroku web interface on lavHost\n\n💡 You'll need to authorize using lavHost credentials, specified on registration" + invalid_target: "Reply to the message of the person you want to add, or specify their correct @username/id." + cant_add_self: "You can't add yourself." + add_user_confirm: "Do you really want to add an account {} ({})?" + add_user_insecure: "Do you really want to add an account {} ({})? Use the {}addacc {} force_insecure command to confirm." + enter_number: "Enter the number" + your_phone_number: "Your phone number" + enter_code: "Enter the code" + login_code: "Your login code" + enter_2fa: "Enter 2FA password" + your_2fa: "Your two-factor authentication password" + incorrect_number: "You entered an incorrect phone number.\n\n" + enter_number_format: "Enter your phone number in the international format (for example, +79212345678):" + login_successful: "🎉 Successful login!" + floodwait_error: "Too many attempts. Try again in {} seconds." + code_sent: "The code has been sent. Enter it" + invalid_code: "Invalid code. Please try again." + invalid_password: "Invalid password. Please try again." + 2fa_enabled: "You have two-factor authentication enabled. Enter the password." + request_code: "🔃 Request the code again" + code_expired: "The code has expired." heroku_backup: period: "⌚️ The unit «ALPHA» creates regular backups. These settings can be changed later.\n\nPlease select the backup frequency\n\n🚫 It is thus impossible to restore modules downloaded from files with the .lm command! Be careful and do .backupmods before restoring." diff --git a/heroku/langpacks/ru.yml b/heroku/langpacks/ru.yml index ab6a43a..9fd1198 100644 --- a/heroku/langpacks/ru.yml +++ b/heroku/langpacks/ru.yml @@ -184,9 +184,29 @@ heroku_web: host_denied: "💬 Команды добавления сессий не доступны на вашем хостинге, свяжитесь с администрацией вашего хостинга." web_btn: "🌍 Веб-интерфейс" _cmd_doc_weburl: "Открыть тоннель к веб-интерфейсу Heroku" - btn_yes: "🚸 Все равно открыть" + btn_yes: "🚸 Все равно подтвердить" btn_no: "🔻 Закрыть" lavhost_web: "✌️ По этой ссылке ты попадешь в веб-интерфейс Heroku на lavHost\n\n💡 Тебе нужно будет авторизоваться, используя данные, указанные при настройке lavHost" + invalid_target: "Ответьте на сообщение человека, которого хотите добавить, или укажите его корректный @username/id." + cant_add_self: "Вы не можете добавить самого себя." + add_user_confirm: "Вы действительно хотите добавить аккаунт {} ({})?" + add_user_insecure: "Вы действительно хотите добавить аккаунт {} ({})? Используйте команду {}addacc {} force_insecure для подтверждения." + enter_number: "Ввести номер" + your_phone_number: "Ваш номер телефона" + enter_code: "Ввести код" + login_code: "Ваш код для входа" + enter_2fa: "Ввести 2FA пароль" + your_2fa: "Ваш пароль двухфакторной аутентификации" + incorrect_number: "Вы ввели неверный номер телефона.\n\n" + enter_number_format: "Введите свой номер телефона в международном формате (например, +79212345678):" + login_successful: "🎉 Успешный вход!" + floodwait_error: "Слишком много попыток. Попробуйте снова через {} секунд." + code_sent: "Код был отправлен. Введите его" + invalid_code: "Невалидный код. Повторите попытку." + invalid_password: "Неверный пароль. Повторите попытку." + 2fa_enabled: "У вас включена двухфакторная аутентификация. Введите пароль." + request_code: "🔃 Запросить код снова" + code_expired: "Срок действия кода истек." heroku_backup: period: "⌚️ Юнит «ALPHA» создает регулярные резервные копии. Эти настройки можно изменить позже.\n\nПожалуйста, выберите периодичность резервного копирования\n\n🚫 Таким образом невозможно восстановить модули скачанные с файлов командой .lm! Будьте осторожны и делайте .backupmods перед восстановлением." diff --git a/heroku/langpacks/ua.yml b/heroku/langpacks/ua.yml index 30afac1..2ed39d4 100644 --- a/heroku/langpacks/ua.yml +++ b/heroku/langpacks/ua.yml @@ -186,6 +186,26 @@ heroku_web: btn_yes: "🚸 Все одно відкрити" btn_no: "🔻 Закрити" lavhost_web: "✌️ За цим посиланням ти потрапиш у веб-інтерфейс Heroku на lavHost\n\n💡 Тобі потрібно авторизуватися, використувая дані, вказані при налаштуванні lavHost" + invalid_target: "Дайте відповідь на повідомлення людини, яку хочете додати, або вкажіть його коректний @username/id." + cant_add_self: "Ви не можете додати себе." + add_user_confirm: "Ви дійсно хочете додати обліковий запис {} ({})?" + add_user_insecure: "Ви дійсно хочете додати обліковий запис {} ({})? Використовуйте команду {} addacc {} force_insecure для підтвердження." + enter_number: "Ввести номер" + your_phone_number: "Ваш номер телефону" + enter_code: "Ввести код" + login_code: "Ваш код для входу" + enter_2fa: "Ввести 2FA пароль" + your_2fa: "Ваш пароль двофакторної автентифікації" + incorrect_number: "Ви ввели неправильний номер телефону.\n\n" + enter_number_format: "Введіть свій номер телефону в міжнародному форматі (наприклад, +79212345678):" + login_successful: "🎉 Успішний вхід!" + floodwait_error: "Занадто багато спроб. Спробуйте ще раз через {} секунд." + code_sent: "Код був відправлений. Введіть його" + invalid_code: "Невалідний код. Повторіть спробу." + invalid_password: "Неправильний пароль. Повторіть спробу." + 2fa_enabled: "У вас увімкнено двофакторну автентифікацію. Введіть пароль." + request_code: "🔃 Запрос запитувати код знову" + code_expired: "Термін дії коду закінчився." _cmd_doc_weburl: "Відкрити тунель до веб-інтерфейсу Heroku" heroku_backup: diff --git a/heroku/modules/heroku_web.py b/heroku/modules/heroku_web.py index 30e251e..16bb25e 100644 --- a/heroku/modules/heroku_web.py +++ b/heroku/modules/heroku_web.py @@ -166,14 +166,14 @@ class HerokuWebMod(loader.Module): if not user or not isinstance(user, User) or user.bot: await utils.answer( message, - "Ответьте на сообщение человека, которого хотите добавить, или укажите его корректный @username/id." + self.strings("invalid_target") ) return if user.id == self._client.tg_id: await utils.answer( message, - "Вы не можете добавить самого себя же." + self.strings("cant_add_self") ) return @@ -182,7 +182,7 @@ class HerokuWebMod(loader.Module): try: if not await self.inline.form( - "Вы действительно хотите добавить аккаунт {} ({})?".format( + self.strings("add_user_confirm").format( utils.escape_html(user.first_name), user.id, ), @@ -201,7 +201,7 @@ class HerokuWebMod(loader.Module): except Exception: await utils.answer( message, - "Вы действительно хотите добавить аккаунт {} ({})? Используйте команду {}addacc {} force_insecure для подтверждения.".format( + self.strings("add_user_insecure").format( utils.escape_html(user.first_name), user.id, utils.escape_html(self.get_prefix()), @@ -212,14 +212,14 @@ class HerokuWebMod(loader.Module): async def _inline_login(self, call: typing.Union[Message, InlineCall], user: User, after_fail: bool = False): reply_markup = [ - {"text": "Ввести номер", "input":"Ваш номер телефона", "handler":self.inline_phone_handler, "args":(user,)} + {"text": self.strings("enter_number"), "input": self.strings("your_phone_number"), "handler": self.inline_phone_handler, "args": (user,)} ] - fail = "Вы ввели неверный номер телефона.\n\n" if after_fail else "" + fail = self.strings("incorrect_number") if after_fail else "" await utils.answer( call, - fail + "Введите свой номер телефона в международном формате (например, +79212345678):", + fail + self.strings("enter_number_format"), reply_markup=reply_markup, always_allow=[user.id] ) @@ -243,7 +243,7 @@ class HerokuWebMod(loader.Module): async def schedule_restart(self, call, client): await utils.answer( call, - "🎉 Успешный вход!", + self.strings("login_successful") ) # Yeah-yeah, ikr, but it's the only way to restart await asyncio.sleep(1) @@ -263,18 +263,18 @@ class HerokuWebMod(loader.Module): except FloodWaitError as e: await utils.answer( call, - "Слишком много попыток. Попробуйте снова через {} секунд.".format(e.seconds), - reply_markup={"text": "Закрыть", "action": "close"}, + self.strings("floodwait_error").format(e.seconds), + reply_markup={"text": self.strings("btn_no"), "action": "close"}, ) return reply_markup = [ - {"text": "Ввести код", "input":"Ваш код для входа", "handler":self.inline_code_handler, "args":(client, phone, user,)}, + {"text": self.strings("enter_code"), "input": self.strings("login_code"), "handler": self.inline_code_handler, "args": (client, phone, user,)}, ] await utils.answer( call, - "Код был отправлен. Введите его", + self.strings("code_sent"), reply_markup=reply_markup, always_allow=[user.id] ) @@ -283,8 +283,8 @@ class HerokuWebMod(loader.Module): if not data or len(data) != 5: await utils.answer( call, - "Невалидный код. Повторите попытку.", - reply_markup={"text": "Ввести код", "input":"Ваш код для входа", "handler":self.inline_code_handler, "args":(client, phone, user,)}, + self.strings("invalid_code"), + reply_markup={"text": self.strings("enter_code"), "input": self.strings("login_code"), "handler": self.inline_code_handler, "args": (client, phone, user,)}, always_allow=[user.id] ) return @@ -293,7 +293,7 @@ class HerokuWebMod(loader.Module): await utils.answer( call, "Код должен состоять только из цифр. Повторите попытку.", - reply_markup={"text": "Ввести код", "input":"Ваш код для входа", "handler":self.inline_code_handler, "args":(client, phone, user,)}, + reply_markup={"text": self.strings("enter_code"), "input": self.strings("login_code"), "handler": self.inline_code_handler, "args": (client, phone, user,)}, always_allow=[user.id] ) return @@ -302,33 +302,33 @@ class HerokuWebMod(loader.Module): await client.sign_in(phone, code=data) except SessionPasswordNeededError: reply_markup = [ - {"text": "Ввести 2FA пароль", "input":"Ваш пароль", "handler":self.inline_2fa_handler, "args":(client, phone, user,)}, + {"text": self.strings("enter_2fa"), "input": self.strings("your_2fa"), "handler": self.inline_2fa_handler, "args": (client, phone, user,)}, ] await utils.answer( call, - "У вас включена двухфакторная аутентификация. Введите пароль.", + self.strings("2fa_enabled"), reply_markup=reply_markup, always_allow=[user.id] ) return except PhoneCodeExpiredError: reply_markup = [ - {"text": "🔃 Запросить код снова", "callback": self.inline_phone_handler, "args": (phone, user)} + {"text": self.strings("request_code"), "callback": self.inline_phone_handler, "args": (phone, user)} ] await utils.answer( call, - "Срок действия кода истек.", + self.strings("code_expired"), reply_markup=reply_markup, always_allow=[user.id], ) return except PhoneCodeInvalidError: reply_markup = [ - {"text": "Ввести код", "input":"Ваш код для входа", "handler":self.inline_code_handler, "args":(client, phone, user,)}, + {"text": self.strings("enter_code"), "input": self.strings("login_code"), "handler": self.inline_code_handler, "args": (client, phone, user,)}, ] await utils.answer( call, - "Неверный код. Повторите попытку.", + self.strings("invalid_code"), reply_markup=reply_markup, always_allow=[user.id] ) @@ -336,8 +336,8 @@ class HerokuWebMod(loader.Module): except FloodWaitError as e: await utils.answer( call, - "Слишком много попыток. Попробуйте снова через {} секунд.".format(e.seconds), - reply_markup={"text": "Закрыть", "action": "close"}, + self.strings("floodwait_error").format(e.seconds), + reply_markup={"text": self.strings("btn_no"), "action": "close"}, ) return @@ -348,8 +348,8 @@ class HerokuWebMod(loader.Module): if not data: await utils.answer( call, - "Невалидный пароль. Повторите попытку.", - reply_markup={"text": "Ввести 2FA пароль", "input":"Ваш пароль", "handler":self.inline_2fa_handler, "args":(client, phone, user,)}, + self.strings("invalid_password"), + reply_markup={"text": self.strings("enter_2fa"), "input": self.strings("your_2fa"), "handler": self.inline_2fa_handler, "args": (client, phone, user,)}, always_allow=[user.id] ) return @@ -359,16 +359,16 @@ class HerokuWebMod(loader.Module): except PasswordHashInvalidError: await utils.answer( call, - "Неверный пароль. Повторите попытку.", - reply_markup={"text": "Ввести 2FA пароль", "input":"Ваш пароль", "handler":self.inline_2fa_handler, "args":(client, phone, user,)}, + self.strings("invalid_password"), + reply_markup={"text": self.strings("enter_2fa"), "input": self.strings("your_2fa"), "handler": self.inline_2fa_handler, "args": (client, phone, user,)}, always_allow=[user.id] ) return except FloodWaitError as e: await utils.answer( call, - "Слишком много попыток. Попробуйте снова через {} секунд.".format(e.seconds), - reply_markup={"text": "Закрыть", "action": "close"}, + self.strings("floodwait_error").format(e.seconds), + reply_markup={"text": self.strings("btn_no"), "action": "close"}, ) return