2
0
mirror of https://github.com/thedevs-network/the-guard-bot synced 2025-08-24 10:58:19 +00:00

37 lines
1.0 KiB
JavaScript
Raw Normal View History

2017-09-23 20:57:32 +02:00
'use strict';
// Utils
const { link, scheduleDeletion } = require('../../utils/tg');
2017-09-23 20:57:32 +02:00
2017-09-24 14:32:27 +03:30
// Bot
const { replyOptions } = require('../../bot/options');
2017-09-23 20:57:32 +02:00
const reportHandler = async ctx => {
const msg = ctx.message;
if (!msg.reply_to_message) {
return ctx.reply(
' <b>Reply to message you\'d like to report</b>',
replyOptions
).then(scheduleDeletion());
2017-09-23 20:57:32 +02:00
}
const admins = (await ctx.getChatAdministrators())
.filter(member =>
member.status === 'creator' ||
member.can_delete_messages &&
member.can_restrict_members
// eslint-disable-next-line function-paren-newline
).map(member => member.user);
2017-09-23 20:57:32 +02:00
const adminObjects = admins.map(user => ({
first_name: '', // small hack to be able to use link function
id: user.id,
2017-09-23 20:57:32 +02:00
}));
const adminsMention = adminObjects.map(link).join('');
const s = `❗️${link(ctx.from)} <b>reported the message to the admins.</b>` +
`${adminsMention}`;
2017-09-23 20:57:32 +02:00
return ctx.replyWithHTML(s, {
reply_to_message_id: msg.reply_to_message.message_id
});
};
module.exports = reportHandler;