from aiogram import types, Dispatcher
from aiogram.types import InlineKeyboardMarkup, InlineKeyboardButton
from models.poll import Poll
from database import Session

async def create_poll(message: types.Message):
    markup = InlineKeyboardMarkup()
    markup.add(InlineKeyboardButton('Option 1', callback_data='vote_1'))
    markup.add(InlineKeyboardButton('Option 2', callback_data='vote_2'))
    await message.reply("Choose an option:", reply_markup=markup)

async def handle_vote(callback_query: types.CallbackQuery):
    option = callback_query.data.split('_')[1]
    with Session() as session:
        poll = Poll(option=option)
        session.add(poll)
        session.commit()
    await callback_query.answer(f"You voted for option {option}")

def register_handlers(dp: Dispatcher):
    dp.register_message_handler(create_poll, commands=['poll'])
    dp.register_callback_query_handler(handle_vote, lambda c: c.data.startswith('vote_'))
