mirror of
https://github.com/Bubuni-Team/telegram-bot.git
synced 2026-07-31 00:29:24 +03:00
[cm] fix warn overflow, return ban msg when warn limit is reached
This commit is contained in:
@@ -23,21 +23,34 @@ public class Warn : CommonHandler
|
|||||||
|
|
||||||
var warnUser = RepliedUser!;
|
var warnUser = RepliedUser!;
|
||||||
var warnOption = await GetWarnOption(warnUser);
|
var warnOption = await GetWarnOption(warnUser);
|
||||||
var warnCount = warnOption!.GetValue<int>() + 1;
|
var warnCount = warnOption.GetValue<int>() + 1;
|
||||||
warnOption.SetValue(warnCount);
|
|
||||||
Db.AddOrUpdate(warnOption);
|
|
||||||
|
|
||||||
await Bot.SendTextMessageAsync(Chat.Id, $"{warnUser.ToHtml()}<code>, Вам выдано предупреждение! " +
|
await Bot.SendTextMessageAsync(Chat.Id, $"{warnUser.ToHtml()}<code>, Вам выдано предупреждение! " +
|
||||||
$"Текущее кол-во: {warnCount}/3</code>",
|
$"Текущее кол-во: {warnCount}/3</code>",
|
||||||
disableNotification: true,
|
disableNotification: true,
|
||||||
parseMode: ParseMode.Html);
|
parseMode: ParseMode.Html);
|
||||||
|
|
||||||
if (warnCount == 3)
|
if (warnCount >= 3)
|
||||||
{
|
{
|
||||||
await BanMember(warnUser.Id, DateTime.Now.AddDays(7));
|
try
|
||||||
warnOption.SetValue(0);
|
{
|
||||||
Db.AddOrUpdate(warnOption);
|
await BanMember(warnUser.Id, DateTime.Now.AddDays(7));
|
||||||
|
warnCount = 0;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
await Bot.SendTextMessageAsync(Chat.Id, "Нет прав на блокировку пользователя.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
await Bot.SendTextMessageAsync(
|
||||||
|
Chat.Id,
|
||||||
|
$"{From.ToHtml()} <code>заблокировал</code> {RepliedUser!.ToHtml()} <code>на 7 дней</code>",
|
||||||
|
disableNotification: true, parseMode: ParseMode.Html);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
warnOption.SetValue(warnCount);
|
||||||
|
Db.AddOrUpdate(warnOption);
|
||||||
}
|
}
|
||||||
|
|
||||||
[Command("unwarn", CommandParseMode.Both)]
|
[Command("unwarn", CommandParseMode.Both)]
|
||||||
|
|||||||
Reference in New Issue
Block a user