Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from aiogram import Router, F
- from aiogram.filters import Command
- from aiogram.types import Message, PollAnswer
- from aiogram.fsm.context import FSMContext
- from aiogram.fsm.storage.memory import MemoryStorage
- from aiogram.fsm.state import State, StatesGroup
- # from handlers.quotes import bosses_quotes
- from sqlighter_ms import SQLighter
- from random import choice
- # admin_id = 117419621
- # admin_id = 0
- db = SQLighter('mega_db.db')
- boss_tg_id = db.get_boss_telegram_id()
- # boss_tg_id = []
- # boss_tg_id.append(admin_id)
- class reg_poll_answers(StatesGroup):
- poll_1 = State()
- poll_2 = State()
- poll_3 = State()
- poll_4 = State()
- router = Router()
- @router.message(Command("start", "check_voting"))
- async def cmd_start(message: Message, state: FSMContext):
- active_voting_list = ['Иванов', 'Петров', 'Сидоров']
- if message.from_user.id not in boss_tg_id:
- await message.answer("К сожалению, я не нашел вас в базе - напишите скорее в ЦНИТ")
- else:
- await message.answer("Добрый день! Сейчас посмотрим, есть ли доступное голосование.")
- # active_voting_list = db.get_voting_list(message.from_user.id)
- active_voting_string = "\n".join([i for i in active_voting_list])
- if len(active_voting_list)>0:
- counter = 1
- # await message.answer(f"Голосование открыто! Вот список кандидатов:\n\n{active_voting_string}\n\n_{choice(bosses_quotes['votes'])}_", parse_mode= 'Markdown')
- await message.answer(f"Голосование открыто! Вот список кандидатов:\n\n{active_voting_string}", parse_mode= 'Markdown')
- await message.answer_poll(question='Выберите кандидата', options=active_voting_list, is_anonymous=False)
- await state.set_state(reg_poll_answers.poll_1.state)
- else:
- await message.answer(f"В настоящее время нет открытых голосований", parse_mode= 'Markdown')
- @router.poll_answer()
- async def get_poll_answer(ans_poll: PollAnswer, state: FSMContext):
- user_data = await state.get_data()
- user_state = await state.get_state()
- print(f'ans poll: {ans_poll.option_ids}')
- print(f'{ans_poll.user.id} : {ans_poll.option_ids[0]}')
- print(f'user-data: {user_data}')
- print(f'user-state: {user_state}')
Advertisement
Add Comment
Please, Sign In to add comment