Exemplo n.º 1
0
def locale(bot, update, args):
    chat = update.effective_chat
    if len(args) > 0:
        locale = args[0].lower()
        if locale in list_locales:
            if locale in ('en', 'ru', 'uk'):
                switch_to_locale(chat.id, locale)
                update.message.reply_text(
                    tld(chat.id, 'Switched to {} successfully!').format(
                        list_locales[locale]))
            else:
                update.message.reply_text("{} not supported yet!".format(
                    list_locales[locale]))
        else:
            update.message.reply_text(
                "Is that even a valid language code? Use an internationally accepted ISO code!"
            )
    else:
        LANGUAGE = prev_locale(chat.id)
        if LANGUAGE:
            locale = LANGUAGE.locale_name
            native_lang = list_locales[locale]
            update.message.reply_text(
                "Current locale for this chat is: *{}*".format(native_lang),
                parse_mode=ParseMode.MARKDOWN)
        else:
            update.message.reply_text(
                "Current locale for this chat is: *English*",
                parse_mode=ParseMode.MARKDOWN)
Exemplo n.º 2
0
def locale_button(bot, update):
    chat = update.effective_chat
    query = update.callback_query
    lang_match = re.findall(r"en|ru", query.data)
    if lang_match:
        if lang_match[0]:
            switch_to_locale(chat.id, lang_match[0])
            text = tld(chat.id, "*Language changed*")
        else:
            text = "Im sorry, error!"

        query.message.reply_text(text,
                                 parse_mode=ParseMode.MARKDOWN,
                                 reply_markup=InlineKeyboardMarkup([[
                                     InlineKeyboardButton(
                                         text="Back",
                                         callback_data="help_back")
                                 ]]))

    else:
        query.message.reply_text(
            tld(chat.id, "*Select language*"),
            parse_mode=ParseMode.MARKDOWN,
            reply_markup=InlineKeyboardMarkup([[
                InlineKeyboardButton("English 🇺🇸",
                                     callback_data="set_lang_en"),
                InlineKeyboardButton("Russian 🇷🇺",
                                     callback_data="set_lang_ru")
            ]] + [[InlineKeyboardButton("Back", callback_data="help_back")]]))

    print(lang_match)
    query.message.delete()
    bot.answer_callback_query(query.id)
Exemplo n.º 3
0
def locale_button(bot, update):
    chat = update.effective_chat
    user = update.effective_user  # type: Optional[User]
    query = update.callback_query
    lang_match = re.findall(r"en|ru|ua|es|tr|id|it", query.data)
    if lang_match:
        if lang_match[0]:
            switch_to_locale(chat.id, lang_match[0])
            query.answer(text="Language changed!")
        else:
            query.answer(text="Error!", show_alert=True)

    try:
        LANGUAGE = prev_locale(chat.id)
        locale = LANGUAGE.locale_name
        curr_lang = list_locales[locale]
    except:
        curr_lang = "English"

    text = "*Select language* \n"
    text += "User language : `{}`".format(curr_lang)

    conn = connected(bot, update, chat, user.id, need_admin=False)

    if not conn == False:
        try:
            chatlng = prev_locale(conn).locale_name
            chatlng = list_locales[chatlng]
            text += "\nConnected chat language : `{}`".format(chatlng)
        except:
            chatlng = "English"

    text += "*\n\nSelect new user language:*"

    query.message.reply_text(
        text,
        parse_mode=ParseMode.MARKDOWN,
        reply_markup=InlineKeyboardMarkup([[
            InlineKeyboardButton("English 🇺🇸", callback_data="set_lang_en")
        ]] + [[
            InlineKeyboardButton("Russian 🇷🇺", callback_data="set_lang_ru"),
            InlineKeyboardButton("Ukrainian 🇺🇦", callback_data="set_lang_ua")
        ]] + [[
            InlineKeyboardButton("Spanish 🇪🇸", callback_data="set_lang_es"),
            InlineKeyboardButton("Turkish 🇹🇷", callback_data="set_lang_tr")
        ]] + [[
            InlineKeyboardButton("Indonesian 🇮🇩", callback_data="set_lang_id"),
            InlineKeyboardButton("Italian 🇮🇹", callback_data="set_lang_it")
        ]] + [[InlineKeyboardButton("⬅️ Back", callback_data="bot_start")]]))

    print(lang_match)
    query.message.delete()
    bot.answer_callback_query(query.id)
Exemplo n.º 4
0
def locale_button(bot, update):
    chat = update.effective_chat
    user = update.effective_user  # type: Optional[User]
    query = update.callback_query
    lang_match = re.findall(r"en|ru|uk", query.data)
    if lang_match:
        if lang_match[0]:
            switch_to_locale(chat.id, lang_match[0])
            query.answer(text="Language changed!")
        else:
            query.answer(text="Error!", show_alert=True)

                                                                           
    try: 
        LANGUAGE = prev_locale(chat.id)
        locale = LANGUAGE.locale_name
        curr_lang = list_locales[locale]
    except:
        curr_lang = "English"

    text = "*Select language* (beta)\n"
    text += "User language : `{}`".format(curr_lang) 

    conn = connected(bot, update, chat, user.id, need_admin=False)

    if not conn == False:
        try: 
            chatlng = prev_locale(conn).locale_name
            chatlng = list_locales[chatlng]
            text += "\nConnected chat language : `{}`".format(chatlng) 
        except:
            chatlng = "English"

    text += "*\n\nSelect new user language:*"

    query.message.reply_text(text, parse_mode=ParseMode.MARKDOWN,
                                            reply_markup=InlineKeyboardMarkup([[
                                            InlineKeyboardButton("English 🇺🇸", callback_data="set_lang_en")]] + [[
                                            InlineKeyboardButton("Russian 🇷🇺", callback_data="set_lang_ru"), 
                                            InlineKeyboardButton("Ukrainian 🇺🇦", callback_data="set_lang_uk")]] + [[
                                            InlineKeyboardButton("Back", callback_data="help_back")]]))

    print(lang_match)
    query.message.delete()
    bot.answer_callback_query(query.id)
Exemplo n.º 5
0
def change_locale(update, context):
    args = context.args
    chat = update.effective_chat
    if len(args) > 0:
        locale = args[0].lower()
        if locale in list_locales:
            if locale in ('en', 'de', 'nl', 'id', 'fi', 'pt-br'):
                switch_to_locale(chat.id, locale)
                update.message.reply_text(
                    tld(chat.id, 'Switched to {} successfully!').format(
                        list_locales[locale]))
            else:
                update.message.reply_text("{} not supported yet!".format(
                    list_locales[locale]))
        else:
            update.message.reply_text(
                "Is that even a valid language code? Use an internationally accepted ISO code!"
            )
    else:
        update.message.reply_text(
            "You haven't give me a locale to begin with!")