Exemple #1
0
        private static async Task BanAllUnbanAllMethod1Async(RestrictAction restrictAction,
                                                             string finalTarget,
                                                             MessageEventArgs e, TelegramBotAbstract sender, string lang, string username, DateTime?until)
        {
            if (string.IsNullOrEmpty(finalTarget))
            {
                var lang2 = new Language(new Dictionary <string, string>
                {
                    { "en", "We can't find the target." },
                    { "it", "Non riusciamo a trovare il bersaglio" }
                });
                await sender.SendTextMessageAsync(e.Message.From.Id, lang2, ChatType.Private,
                                                  lang, ParseMode.Default, username : username,
                                                  replyMarkupObject : new ReplyMarkupObject(ReplyMarkupEnum.REMOVE));

                return;
            }

            var done =
                await RestrictUser.BanAllAsync(sender, e, finalTarget, restrictAction, until);

            var text2 = done.Item1.GetLanguage(restrictAction, finalTarget, done.Item3);

            await SendMessage.SendMessageInPrivate(sender, e.Message.From.Id,
                                                   e.Message.From.LanguageCode,
                                                   e.Message.From.Username, text2,
                                                   ParseMode.Default,
                                                   e.Message.MessageId);

            await SendReportOfSuccessAndFailures(sender, e, done);
        }
        private static async Task UnbanAllAsync(TelegramBotAbstract sender, MessageEventArgs e, string target)
        {
            var done = await RestrictUser.BanAllAsync(sender, e, target, false);

            var text2 = new Language(new Dictionary <string, string>
            {
                { "en", "Target unbanned from " + done.Count + " groups" },
                { "it", "Target sbannato da " + done.Count + " gruppi" }
            });
            await SendMessage.SendMessageInPrivate(sender, e, text2);
        }
        private static async Task BanAllAsync(TelegramBotAbstract sender, MessageEventArgs e,
                                              IReadOnlyList <string> target, string lang, string username)
        {
            if (e.Message.ReplyToMessage == null)
            {
                if (target.Count < 2)
                {
                    var lang2 = new Language(new Dictionary <string, string>
                    {
                        { "en", "We can't find the target." },
                        { "it", "Non riusciamo a trovare il bersaglio" }
                    });
                    await sender.SendTextMessageAsync(e.Message.From.Id, lang2, ChatType.Private,
                                                      lang, ParseMode.Default, username : username,
                                                      replyMarkupObject : new ReplyMarkupObject(ReplyMarkupEnum.REMOVE));
                }
                else
                {
                    var done = await RestrictUser.BanAllAsync(sender, e, target[1], true);

                    var text2 = new Language(new Dictionary <string, string>
                    {
                        { "en", "Target banned from " + done.Count + " groups" },
                        { "it", "Target bannato da " + done.Count + " gruppi" }
                    });
                    await SendMessage.SendMessageInPrivate(sender, e, text2);
                }
            }
            else
            {
                var done = await RestrictUser.BanAllAsync(sender, e, e.Message.ReplyToMessage.From.Id.ToString(), true);

                var text3 = new Language(new Dictionary <string, string>
                {
                    { "en", "Target banned from " + done.Count + " groups" },
                    { "it", "Target bannato da " + done.Count + " gruppi" }
                });
                await SendMessage.SendMessageInPrivate(sender, e, text3);
            }
        }