This commit is contained in:
2026-06-26 23:02:51 +03:00
parent 4ec8127971
commit 42ed6775eb
2 changed files with 27 additions and 15 deletions

View File

@@ -370,16 +370,23 @@ async def delete_my_account(callback: CallbackQuery):
number = callback.data.replace("confirm_delete_my_", "")
# Delete from MikoPBX
await mikopbx.delete_extension(number)
mikopbx_result = await mikopbx.delete_extension(number)
# Delete from local DB
await db.delete_sip_account(number)
await safe_edit_text(
callback,
f"Extension {number} has been deleted.",
reply_markup=main_menu_keyboard(is_admin(callback.from_user.id))
)
if mikopbx_result.get("success"):
# Delete from local DB only if MikoPBX deletion succeeded
await db.delete_sip_account(number)
await safe_edit_text(
callback,
f"Extension {number} has been deleted.",
reply_markup=main_menu_keyboard(is_admin(callback.from_user.id))
)
else:
error = mikopbx_result.get("error", "Unknown error")
await safe_edit_text(
callback,
f"Failed to delete {number} in MikoPBX:\n{error}",
reply_markup=main_menu_keyboard(is_admin(callback.from_user.id))
)
# ============== ADMIN HANDLERS ==============
@@ -654,19 +661,19 @@ async def admin_confirm_delete(callback: CallbackQuery):
# Delete from MikoPBX
mikopbx_result = await mikopbx.delete_extension(number)
# Delete from local DB
db_success = await db.delete_sip_account(number)
if mikopbx_result.get("success") or db_success:
if mikopbx_result.get("success"):
# Delete from local DB only if MikoPBX deletion succeeded
await db.delete_sip_account(number)
await safe_edit_text(
callback,
f"Extension {number} has been deleted.",
reply_markup=admin_menu_keyboard()
)
else:
error = mikopbx_result.get("error", "Unknown error")
await safe_edit_text(
callback,
f"Failed to delete {number}.",
f"Failed to delete {number} in MikoPBX:\n{error}",
reply_markup=admin_menu_keyboard()
)