add mailing function

This commit is contained in:
2025-11-14 13:46:20 +03:00
parent 9b9e81c61d
commit 93a425aea9
7 changed files with 122 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
from aiogram_dialog import Dialog, Window
from aiogram_dialog.widgets.input import MessageInput
from aiogram_dialog.widgets.kbd import Back, Button, Cancel
from aiogram_dialog.widgets.text import Const
# from .getters import event_getter, events_list_getter, registration_getter
from .handlers import choose_recipients, confirm_mailing, message_data
from .states import MailingSG
mailing_dialog = Dialog(
Window(
Const("Пришлите сообщение которое хотите разослать"),
MessageInput(message_data),
Cancel(Const("Отмена")),
state=MailingSG.message_data,
),
Window(
Const("Кому отправить сообщение?"),
Button(
Const("Всем"),
id="send_all",
on_click=choose_recipients,
),
Button(
Const("Не админам"),
id="send_users",
on_click=choose_recipients,
),
Back(Const("Назад")),
state=MailingSG.recipients,
),
Window(
Const("Начать рассылку?"),
Button(
Const("Разослать"),
id="start_mailing",
on_click=confirm_mailing,
),
Back(Const("Назад")),
Cancel(Const("Отмена")),
state=MailingSG.confirm,
),
)