/report command added

This commit is contained in:
Profitroll 2023-06-26 23:10:09 +02:00
parent eb78a75a88
commit f4661e7404
Signed by: profitroll
GPG Key ID: FA35CAB49DACD3B2
3 changed files with 21 additions and 7 deletions

View File

@ -62,7 +62,7 @@
"update_available": "**New version found**\nThere's a newer version of a bot found. You can update your bot to [{0}]({1}) using command line of your host.\n\n**Release notes**\n{2}\n\nRead more about updating you bot on the [wiki page](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Updating-Instance).\n\nPlease not that you can also disable this notification by editing `reports.update` key of the config.", "update_available": "**New version found**\nThere's a newer version of a bot found. You can update your bot to [{0}]({1}) using command line of your host.\n\n**Release notes**\n{2}\n\nRead more about updating you bot on the [wiki page](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Updating-Instance).\n\nPlease not that you can also disable this notification by editing `reports.update` key of the config.",
"shutdown_confirm": "There are {0} unfinished users' contexts. If you turn off the bot, those will be lost. Please confirm shutdown using a button below.", "shutdown_confirm": "There are {0} unfinished users' contexts. If you turn off the bot, those will be lost. Please confirm shutdown using a button below.",
"report_sent": "We've notified admins about presumable violation. Thank you for cooperation.", "report_sent": "We've notified admins about presumable violation. Thank you for cooperation.",
"report_received": "This message has been reported by {0} (@{1}, `{2}`)" "report_received": "This message has been reported by **{0}** (@{1}, `{2}`)"
}, },
"button": { "button": {
"sub_yes": "✅ Accept", "sub_yes": "✅ Accept",

View File

@ -62,7 +62,7 @@
"update_available": "**Знайдено нову версію**\nЗнайдено нову версію бота. Ви можете оновити бота до [{0}]({1}) за допомогою командного рядка вашого хосту.\n\n**Примітки до релізу**\n{2}\n\nДетальніше про оновлення бота можна знайти на [вікі-сторінці](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Updating-Instance).\n\nЗверніть увагу, що ви також можете вимкнути це сповіщення, відредагувавши ключ `reports.update` у конфігурації.", "update_available": "**Знайдено нову версію**\nЗнайдено нову версію бота. Ви можете оновити бота до [{0}]({1}) за допомогою командного рядка вашого хосту.\n\n**Примітки до релізу**\n{2}\n\nДетальніше про оновлення бота можна знайти на [вікі-сторінці](https://git.end-play.xyz/profitroll/TelegramPoster/wiki/Updating-Instance).\n\nЗверніть увагу, що ви також можете вимкнути це сповіщення, відредагувавши ключ `reports.update` у конфігурації.",
"shutdown_confirm": "Існує {0} незавершених контекстів користувачів. Якщо ви вимкнете бота, вони будуть втрачені. Будь ласка, підтвердіть вимкнення за допомогою кнопки нижче.", "shutdown_confirm": "Існує {0} незавершених контекстів користувачів. Якщо ви вимкнете бота, вони будуть втрачені. Будь ласка, підтвердіть вимкнення за допомогою кнопки нижче.",
"report_sent": "Ми повідомили адміністрацію про потенційне порушення. Дякую за співпрацю.", "report_sent": "Ми повідомили адміністрацію про потенційне порушення. Дякую за співпрацю.",
"report_received": "На це повідомлення було отримано скаргу від {0} (@{1}, `{2}`)" "report_received": "На це повідомлення було отримано скаргу від **{0}** (@{1}, `{2}`)"
}, },
"button": { "button": {
"sub_yes": "✅ Прийняти", "sub_yes": "✅ Прийняти",

View File

@ -1,6 +1,6 @@
from pyrogram.client import Client from pyrogram.client import Client
from pyrogram import filters from pyrogram import filters
from pyrogram.types import Message from pyrogram.types import Message, User
from libbot import sync from libbot import sync
from classes.pyroclient import PyroClient from classes.pyroclient import PyroClient
@ -13,16 +13,30 @@ from classes.pyroclient import PyroClient
) )
async def command_report(app: PyroClient, msg: Message): async def command_report(app: PyroClient, msg: Message):
if msg.reply_to_message.forward_from_chat.id == app.config["posting"]["channel"]: if msg.reply_to_message.forward_from_chat.id == app.config["posting"]["channel"]:
await msg.reply_text(app._("report_send", "message", locale=msg.from_user.language_code)) await msg.reply_text(
app._(
"report_sent",
"message",
locale=msg.from_user.language_code
if msg.from_user is not None
else None,
)
)
print(msg)
report_sent = await msg.reply_to_message.forward(app.owner) report_sent = await msg.reply_to_message.forward(app.owner)
sender = msg.from_user if msg.from_user is not None else msg.sender_chat sender = msg.from_user if msg.from_user is not None else msg.sender_chat
sender_name = sender.first_name if hasattr(sender, "first_name") else sender.title sender_name = (
sender.first_name if isinstance(sender, User) else sender.title
)
# ACTION NEEDED # ACTION NEEDED
# Name and username are somehow None # Name and username are somehow None
await report_sent.reply_text( await report_sent.reply_text(
app._("report_received", "message").format(sender_name, sender.username, sender.id), app._("report_received", "message").format(
sender_name, sender.username, sender.id
),
quote=True, quote=True,
) )