def validate_no_call_to_violence(update: Update, context: CallbackContext): query = update.callback_query query.answer() user = User.by(tg_id=query.from_user.id) # try to find a not finished validatoin validation = user.get_not_finished_validation() if not validation: # check if user can validate today if not user.can_validate_today: query.from_user.send_message( s.over_validation_limit, reply_markup=default_markup) return ConversationHandler.END # check if there are events for validation available event = user.pick_event_for_validation() if not event: query.from_user.send_message( s.no_available_events_for_validation, reply_markup=default_markup) return ConversationHandler.END validation = Validation.create(user, event) keyboard = [ [InlineKeyboardButton(s.yes_danger, callback_data='handle_call_to_violence'), InlineKeyboardButton(s.no_safe, callback_data='rate_event_quality')], ] query.from_user.send_message(validation.event.html_full_description(), reply_markup=ReplyKeyboardRemove(), parse_mode=ParseMode.HTML) query.from_user.send_message( s.call_to_violence_question, reply_markup=InlineKeyboardMarkup(keyboard)) return REVIEW_CALL_TO_VIOLENCE