Skip to content

Commit c29b4bf

Browse files
committed
Фикс - бот молчит если тема уже закрыта
1 parent de20a92 commit c29b4bf

2 files changed

Lines changed: 10 additions & 8 deletions

File tree

modules/phrase.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -725,6 +725,7 @@ class rules:
725725

726726
class forum:
727727
done_id = 5237699328843200968
728+
already_closed = "❌ : Тема уже закрыта!"
728729
closed = "✅ : **Тема закрыта.**\nПричина: {reason}"
729730
not_author = "⚠️ : Только автор темы и администратор может использовать эту команду."
730731
topic_no_id = "⚠️ : Не могу получить ID темы."

modules/telegram/forum.py

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
from loguru import logger
44
from telethon.tl import functions
5+
from telethon.errors.rpcbaseerrors import BadRequestError
56

67
from .. import config, db, phrase
78
from . import func
@@ -47,12 +48,12 @@ async def delete_topic(event: Message):
4748
and await db.Roles().get(event.sender_id) < db.Roles.ADMIN
4849
):
4950
return await event.reply(phrase.forum.not_author)
50-
await client(
51-
functions.messages.EditForumTopicRequest(
52-
peer=config.chats.forum,
53-
topic_id=topic_id,
54-
closed=True,
55-
icon_emoji_id=phrase.forum.done_id,
51+
try:
52+
await client(
53+
functions.messages.EditForumTopicRequest(
54+
peer=config.chats.forum, topic_id=topic_id, closed=True, icon_emoji_id=phrase.forum.done_id
55+
)
5656
)
57-
)
58-
return await event.reply(phrase.forum.closed.format(reason=reason or "Без причины"))
57+
except BadRequestError:
58+
return await event.reply(phrase.forum.already_closed)
59+
return await event.reply(phrase.forum.closed.format(reason=reason or "Без причины"))

0 commit comments

Comments
 (0)