Ejemplo n.º 1
0
def universal_callback_query_handler(reply, user):
    if reply.data == DICTIONARY['ua']['excursion_1_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/lego.jpg', 'rb'),
                       caption=DICTIONARY['ua']['excursion_1_msg'],
                       reply_markup=get_inline_back_keyboard('ua'))
    elif reply.data == DICTIONARY['ua']['excursion_2_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/party.jpg', 'rb'),
                       caption=DICTIONARY['ua']['excursion_2_msg'],
                       reply_markup=get_inline_back_keyboard('ua'))
    elif reply.data == DICTIONARY['ua']['excursion_3_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/vidpochynok.jpg', 'rb'),
                       caption=DICTIONARY['ua']['excursion_3_msg'],
                       reply_markup=get_inline_back_keyboard('ua'))
    elif reply.data == DICTIONARY['ua']['excursion_4_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/stendy.jpeg', 'rb'),
                       caption=DICTIONARY['ua']['excursion_4_msg'],
                       reply_markup=get_inline_back_keyboard('ua'))
    elif reply.data == DICTIONARY['ua']['excursion_5_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/drawing.jpg', 'rb'),
                       caption=DICTIONARY['ua']['excursion_5_msg'],
                       reply_markup=get_inline_back_keyboard('ua'))
    elif reply.data == DICTIONARY['ua']['back_to_class_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/excursion.png', 'rb'),
                       caption=DICTIONARY['ua']['excursion_msg'],
                       reply_markup=get_excursion_button_keyboard('ua'))
    # button for questions' rating
    elif reply.data == DICTIONARY['ua']['back_button']:
        bot.send_photo(reply.from_user.id,
                       photo=open('img/excursion.png', 'rb'),
                       caption=DICTIONARY['ua']['excursion_msg'],
                       reply_markup=get_excursion_button_keyboard('ua'))
    else:
        question = Question.objects(question_id=reply.data).first()
        if question is None:
            pass
        else:
            if user.user_id not in question.subscribed_users:
                question.subscribed_users.append(user.user_id)
                question.rating += 1
                question.save()
            else:
                bot.send_message(reply.from_user.id,
                                 "Ви вже підтримали це питання.")
    bot.answer_callback_query(reply.id)
Ejemplo n.º 2
0
def rating_mon_question_state(message, user, is_entry=False):
    if is_entry:
        bot.send_message(message.chat.id,
                         "Список питань до МОН:",
                         reply_markup=get_back_button_keyboard('ua'))
        for _question in Question.objects().order_by('rating'):
            bot.send_message(message.chat.id,
                             DICTIONARY['ua']['rated_questions_msg'].format(
                                 _question.text, _question.rating),
                             parse_mode="Markdown",
                             reply_markup=get_rating_mon_question_keyboard(
                                 _question.question_id, 'ua'))
    else:
        if message.text == DICTIONARY['ua']['back_button']:
            return return_to_your_state(user)
        else:
            bot.send_message(message.chat.id,
                             DICTIONARY['ua']['no_button'],
                             reply_markup=get_back_button_keyboard('ua'))
    return False, ''