profile module: update settings

parent 0e32940e
from telegrinder import Dispatch, Message, CallbackQuery, MESSAGE_FROM_USER, WaiterMachine from telegrinder import Dispatch, Message, CallbackQuery, MESSAGE_FROM_USER, WaiterMachine
from telegrinder.rules import Command, PayloadEqRule, PayloadMarkupRule, Text, IsPrivate, HasText from telegrinder.rules import Command, PayloadEqRule, PayloadMarkupRule, Text, IsPrivate, HasText
from asyncio import sleep
from database.func import DB from database.func import DB
from data.keyboards import profile_keyboards from data.keyboards import profile_keyboards
...@@ -55,11 +57,7 @@ async def callback_confirm_handler(cb: CallbackQuery) -> None: ...@@ -55,11 +57,7 @@ async def callback_confirm_handler(cb: CallbackQuery) -> None:
@dp.callback_query(PayloadEqRule("profile/settings/maintainer")) @dp.callback_query(PayloadEqRule("profile/settings/maintainer"))
async def callback_confirm_handler(cb: CallbackQuery) -> None: async def callback_confirm_handler(cb: CallbackQuery) -> None:
await cb.ctx_api.send_message( await cb.edit_text("Введите никнейм сопровождающего:")
chat_id=cb.from_user.id,
text="Введите никнейм сопровождающего:",
)
await cb.answer()
api_data = await altrepo.api.site.all_maintainers("sisyphus") api_data = await altrepo.api.site.all_maintainers("sisyphus")
while True: while True:
...@@ -67,48 +65,39 @@ async def callback_confirm_handler(cb: CallbackQuery) -> None: ...@@ -67,48 +65,39 @@ async def callback_confirm_handler(cb: CallbackQuery) -> None:
maintainer = msg.text.unwrap().lower() maintainer = msg.text.unwrap().lower()
if any(_m.packager_nickname == maintainer for _m in api_data.maintainers): if any(_m.packager_nickname == maintainer for _m in api_data.maintainers):
await msg.answer( await msg.delete()
f"Вы выбрали {maintainer}" await cb.edit_text(f"Вы выбрали {maintainer}")
)
DB.user.change_maintainer( DB.user.change_maintainer(
cb.from_user.id, cb.from_user.id,
maintainer maintainer
) )
await sleep(3.0)
await cb.delete()
break break
else: else:
await msg.answer( await cb.edit_text(
f"Сопровождающий {maintainer} не найден.\n" f"Сопровождающий {maintainer} не найден.\n"
"Введите никнейм сопровождающего:" "Введите никнейм сопровождающего:"
) )
@dp.callback_query(PayloadEqRule("profile/settings/branch")) @dp.callback_query(PayloadEqRule("profile/settings/branch"))
async def callback_confirm_handler(cb: CallbackQuery) -> None: async def callback_confirm_handler(cb: CallbackQuery) -> None:
await cb.ctx_api.edit_message_text( await cb.edit_text(
chat_id=cb.from_user.id, "Выберите репозиторий",
text="Выберите репозиторий", reply_markup=profile_keyboards.profile_settings_branch_kb()
message_id=cb.message_id.unwrap()
) )
await cb.answer()
await cb.ctx_api.edit_message_reply_markup(
chat_id=cb.from_user.id,
reply_markup=profile_keyboards.profile_settings_branch_kb(),
message_id=cb.message_id.unwrap()
)
@dp.callback_query(PayloadMarkupRule("profile/settings/branch/<branch>")) @dp.callback_query(PayloadMarkupRule("profile/settings/branch/<branch>"))
async def callback_confirm_handler(cb: CallbackQuery, branch: str) -> None: async def callback_confirm_handler(cb: CallbackQuery, branch: str) -> None:
await cb.ctx_api.edit_message_text( await cb.edit_text(f"Вы выбрали {branch}")
chat_id=cb.from_user.id,
text=f"Вы выбрали {branch}",
message_id=cb.message_id.unwrap()
)
await cb.answer()
DB.user.change_default_branch( DB.user.change_default_branch(
cb.from_user.id, cb.from_user.id,
branch branch
) )
await sleep(3.0)
await cb.delete()
@dp.callback_query(PayloadEqRule("command/menu")) @dp.callback_query(PayloadEqRule("command/menu"))
async def menu_handler(cb: CallbackQuery): async def menu_handler(cb: CallbackQuery):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment