Beispiel #1
0
def remove_option(session, context, poll):
    """Remove the option."""
    session.query(Option).filter(Option.id == context.action).delete()

    if poll.is_priority():
        users = session.query(User).join(User.votes).filter(Vote.poll == poll).all()

        for user in users:
            votes = (
                session.query(Vote)
                .filter(Vote.poll == poll)
                .filter(Vote.user == user)
                .order_by(Vote.priority.asc())
                .all()
            )

            for index, vote in enumerate(votes):
                vote.priority = index
                session.commit()

    session.commit()

    keyboard = get_remove_option_keyboard(poll)
    context.query.message.edit_reply_markup(reply_markup=keyboard)

    update_poll_messages(session, context.bot, poll)
Beispiel #2
0
def show_remove_options_menu(session, context, poll):
    """Show the menu for removing options."""
    keyboard = get_remove_option_keyboard(poll)
    context.query.message.edit_text(
        i18n.t("settings.remove_options", locale=poll.user.locale),
        parse_mode="markdown",
        reply_markup=keyboard,
    )
Beispiel #3
0
def remove_option(session, context, poll):
    """Remove the option."""
    session.query(PollOption) \
        .filter(PollOption.id == context.action) \
        .delete()
    session.commit()

    keyboard = get_remove_option_keyboard(poll)
    context.query.message.edit_reply_markup(reply_markup=keyboard)

    update_poll_messages(session, context.bot, poll)