[rules] Fix permission check on setrules.

This commit is contained in:
West14
2022-01-18 21:59:26 +02:00
parent 1444e3282f
commit b1876edf13
2 changed files with 16 additions and 9 deletions
+14 -7
View File
@@ -8,13 +8,7 @@ namespace Kruzya.TelegramBot.Core.Extensions
{
public static async Task<bool> CanPunishMember(this ITelegramBotClient bot, Chat chat, User user, User victim = null)
{
var callerMember = await bot.GetChatMemberAsync(chat, user.Id);
var canUse = callerMember is ChatMemberOwner;
if (callerMember is ChatMemberAdministrator callerAdmin)
{
canUse = callerAdmin.CanRestrictMembers;
}
var canUse = await IsUserAdminAsync(bot, chat, user);
if (victim != null && canUse)
{
@@ -24,5 +18,18 @@ namespace Kruzya.TelegramBot.Core.Extensions
return canUse;
}
public static async Task<bool> IsUserAdminAsync(this ITelegramBotClient bot, Chat chat, User user)
{
var callerMember = await bot.GetChatMemberAsync(chat, user.Id);
var canUse = callerMember is ChatMemberOwner;
if (callerMember is ChatMemberAdministrator callerAdmin)
{
canUse = callerAdmin.CanRestrictMembers;
}
return canUse;
}
}
}