Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def go_back(update: Update, context: CallbackContext): # repeat last function
- if 'last_function' in context.user_data:
- update.message.text = '' # Not None because "lower" and "strip" will be applied
- return context.user_data['last_function'](update, context)
- else:
- update.message.reply_text(text='Can't go back at this step')
- def go_next(update: Update, context: CallbackContext): # repeat last function
- update.message.text = '' # Not None because "lower" and "strip" will be applied
- @bot_logger()
- def user_gender_handler(update: Update, context: CallbackContext):
- # # # PROCESS OLD MESSAGE # # #
- # Just ask age if "back" or "next " was sent
- if message_text := update.message.text.lower().strip():
- if message_text == 'male':
- context.user_data['user'].gender = 1 # Male
- elif message_text == 'female':
- context.user_data['user'].gender = 2 # Female
- else:
- update.message.reply_text(f'I dont understand you. Type "male" or "female"')
- return 3
- # # # SEND NEW MESSAGE # # #
- update.message.reply_text(text=f'Step 4 of 7.\nWhat is your age.',
- reply_markup=keyboards.keyboard_for_user_age)
- context.user_data['last_function'] = user_goal_handler
- return 4
- partner = ConversationHandler(
- entry_points=[
- MessageHandler(filters=Filters.regex(config.start_search_r), callback=handlers.start_search)],
- prefallbacks=[
- MessageHandler(filters=Filters.regex(config.back_r), callback=handlers.go_back),
- MessageHandler(filters=Filters.regex(config.skip_r), callback=handlers.go_next),
- MessageHandler(filters=Filters.regex(config.cancel_r), callback=end_conversation),
- ],
- states={
- 0: [MessageHandler(filters=Filters.text, callback=handlers.start_search_handler)],
- 1: [MessageHandler(filters=Filters.text, callback=handlers.target_goal_handler)],
- 2: [MessageHandler(filters=Filters.text, callback=handlers.target_gender_handler)],
- 3: [MessageHandler(filters=Filters.text, callback=handlers.target_age_handler)],
- ConversationHandler.TIMEOUT: [TypeHandler(type=Update, callback=end_conversation)] # 1
- },
- fallbacks=[],
- )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement