Edit Arcane refresh message

This commit is contained in:
2026-02-07 23:33:10 +03:00
parent 2bd6e228ac
commit dcd8de5f48

View File

@@ -13,13 +13,16 @@ def _arcane_cfg():
return arc.get("base_url"), arc.get("api_key"), int(arc.get("env_id", 0)) return arc.get("base_url"), arc.get("api_key"), int(arc.get("env_id", 0))
async def cmd_arcane_projects(msg: Message): async def cmd_arcane_projects(msg: Message, *, edit: bool):
base_url, api_key, env_id = _arcane_cfg() base_url, api_key, env_id = _arcane_cfg()
if not base_url or not api_key: if not base_url or not api_key:
await msg.answer("⚠️ Arcane config missing", reply_markup=docker_kb) await msg.answer("⚠️ Arcane config missing", reply_markup=docker_kb)
return return
await msg.answer("⏳ Arcane projects…", reply_markup=arcane_kb) if edit:
await msg.edit_text("⏳ Arcane projects…", reply_markup=arcane_kb)
else:
await msg.answer("⏳ Arcane projects…", reply_markup=arcane_kb)
async def worker(): async def worker():
ok, info, items = await asyncio.to_thread(list_projects, base_url, api_key, env_id) ok, info, items = await asyncio.to_thread(list_projects, base_url, api_key, env_id)
@@ -45,7 +48,10 @@ async def cmd_arcane_projects(msg: Message):
]) ])
kb = InlineKeyboardMarkup(inline_keyboard=rows) if rows else arcane_kb kb = InlineKeyboardMarkup(inline_keyboard=rows) if rows else arcane_kb
await msg.answer("\n".join(lines), reply_markup=kb) if edit:
await msg.edit_text("\n".join(lines), reply_markup=kb)
else:
await msg.answer("\n".join(lines), reply_markup=kb)
asyncio.create_task(worker()) asyncio.create_task(worker())
@@ -53,13 +59,13 @@ async def cmd_arcane_projects(msg: Message):
@dp.message(F.text == "🧰 Arcane") @dp.message(F.text == "🧰 Arcane")
async def arcane_menu(msg: Message): async def arcane_menu(msg: Message):
if is_admin_msg(msg): if is_admin_msg(msg):
await cmd_arcane_projects(msg) await cmd_arcane_projects(msg, edit=False)
@dp.message(F.text == "🔄 Refresh") @dp.message(F.text == "🔄 Refresh")
async def arcane_refresh(msg: Message): async def arcane_refresh(msg: Message):
if is_admin_msg(msg): if is_admin_msg(msg):
await cmd_arcane_projects(msg) await cmd_arcane_projects(msg, edit=True)
@dp.callback_query(F.data.startswith("arcane:restart:")) @dp.callback_query(F.data.startswith("arcane:restart:"))