def btn_setstyle(params): context.chat_data['style'] = int(params) stylename = Lang.get("keyboard.setstyle.random", lang) if int(params) < 0 else Styles.get( int(params)).get_name(lang) update.callback_query.message.reply_text( Lang.get('command.setstyle.changed', lang, style=stylename))
def achlang(update: Update, context: CallbackContext) -> None: keyboard = [] for lang in Styles.get(context.chat_data.get('style')).get_langs(): keyboard.append([ InlineKeyboardButton(Lang.get_lang(lang), callback_data=f"achlang.{lang}") ]) reply_markup = InlineKeyboardMarkup(keyboard) update.message.reply_text(Lang.get('command.achlang.select', context.chat_data.get('lang')), reply_markup=reply_markup)
def create_achievement(update: Update, context: CallbackContext) -> None: lang = context.chat_data.get('lang') # Checking name & description vals = Achievement.parse_message(update.message.text or update.message.caption) for err in Achievement.check_values(**vals): update.message.reply_text(Lang.get(err, lang, **Achievement.LIMITS)) vals = None if not vals: return # Icon & style image = None if update.message.photo: photos = update.message.photo image = photos[1 if len(photos) > 1 else 0].get_file().file_path elif context.chat_data.get('image_url'): image = context.chat_data.get('image_url') context.chat_data['image_url'] = None vals['icon'] = Tools.download_image(image or Tools.search_image(vals['name'])) vals['style'] = Styles.get(context.chat_data.get('style')) # Setting language ach_lang = context.chat_data.get('ach_lang', 'ENG') if vals['style'].change_lang(ach_lang) != 'ok': update.message.reply_text( Lang.get('error.achievement.no_lang', lang, lang=ach_lang, style=vals['style'].get_name(lang))) ach = Achievement(**vals) gen = ach.generate() if type(gen) is str: update.message.reply_text(Lang.get(gen, lang)) else: update.message.reply_photo(gen) # Incrementing stats context.bot_data['ach_generated'] = context.bot_data.get( 'ach_generated', 0) + 1 context.chat_data['ach_generated'] = context.chat_data.get( 'ach_generated', 0) + 1