Esempio n. 1
0
        public async Task AllNewsAsync([Remainder] string mess)
        {
            SLog logger = new SLog("AllNews", Context);

            string URL = ConstVariables.Patch + "Base/news26052017.jpg";

            bool islocalfile = true;

            if (mess.IndexOf("image:") == 0)
            {
                mess = mess.Remove(0, 6);
                int tchk = mess.IndexOf(';');
                URL         = mess.Substring(0, tchk);
                mess        = mess.Remove(0, tchk + 2);
                islocalfile = false;
            }

            var result = await Context.Channel.SendMessageAsync("Sayary, жди. Начата рассылка");

            foreach (var server in ConstVariables.CServer)
            {
                if (server.Value.DefaultChannelNewsId == 0)
                {
                    continue;
                }

                try
                {
                    ConstVariables.CDiscord guild = server.Value;

                    if (ConstVariables.ThisTest)
                    {
                        if (server.Value.GuildId != 435485527156981770)
                        {
                            continue;
                        }

                        if (islocalfile)
                        {
                            await guild.GetDefaultNewsChannel().SendFileAsync(URL, " ");
                        }
                        else
                        {
                            await guild.GetDefaultNewsChannel().SendMessageAsync(URL);
                        }

                        await guild.GetDefaultNewsChannel().SendMessageAsync(mess);

                        await guild.GetDefaultNewsChannel().SendMessageAsync("Автор: " + Context.User.Mention);

                        break;
                    }
                    else
                    {
                        if (islocalfile)
                        {
                            await guild.GetDefaultNewsChannel().SendFileAsync(URL, " ");
                        }
                        else
                        {
                            await guild.GetDefaultNewsChannel().SendMessageAsync(URL);
                        }

                        await guild.GetDefaultNewsChannel().SendMessageAsync(mess);

                        await guild.GetDefaultNewsChannel().SendMessageAsync("Автор: " + Context.User.Mention);
                    }
                }
                catch (Exception e)
                {
                    logger._exception = e;
                }
            }

            try
            {
                await Context.Message.DeleteAsync();

                await result.DeleteAsync();
            }
            catch (Exception e)
            {
                logger._exception = e;
            }

            logger.PrintLog();
        }
Esempio n. 2
0
        public async Task NewsAsync([Remainder] string mess)
        {
            if (!(await Access("news")))
            {
                return;
            }

            SLog logger = new SLog("News", Context);

            string URL         = "Base/news26052017.jpg";
            bool   islocalfile = true;

            if (mess.IndexOf("image:") == 0)
            {
                mess = mess.Remove(0, 6);
                int tchk = mess.IndexOf(';');
                URL         = mess.Substring(0, tchk);
                mess        = mess.Remove(0, tchk + 2);
                islocalfile = false;
            }

            var result = await Context.Channel.SendMessageAsync("Начата рассылка!\n Ждите, если это сообщение не пропадет, то напишите Sayary.");

            var serv = ConstVariables.CServer[Context.Guild.Id];

            foreach (var server in ConstVariables.CServer)
            {
                if (server.Value.DefaultChannelNewsId == 0)
                {
                    continue;
                }

                try
                {
                    ConstVariables.CDiscord guild = server.Value;

                    if (ConstVariables.ThisTest)
                    {
                        if (server.Value.GuildId != 435485527156981770)
                        {
                            continue;
                        }

                        if (islocalfile)
                        {
                            await guild.GetDefaultNewsChannel().SendFileAsync(URL, " ");
                        }
                        else
                        {
                            await guild.GetDefaultNewsChannel().SendMessageAsync(URL);
                        }

                        await guild.GetDefaultNewsChannel().SendMessageAsync(mess);

                        await guild.GetDefaultNewsChannel().SendMessageAsync("Автор: " + Context.User.Mention);

                        break;
                    }
                    else if (Context.User.Id == ConstVariables.DateBase.OwnerID)
                    {
                        if (islocalfile)
                        {
                            await guild.GetDefaultNewsChannel().SendFileAsync(URL, " ");
                        }
                        else
                        {
                            await guild.GetDefaultNewsChannel().SendMessageAsync(URL);
                        }

                        await guild.GetDefaultNewsChannel().SendMessageAsync(mess);

                        await guild.GetDefaultNewsChannel().SendMessageAsync("Автор: " + Context.User.Mention);
                    }
                    else if (Context.Guild.Id == server.Value.GuildId)
                    {
                        if (islocalfile)
                        {
                            await guild.GetDefaultNewsChannel().SendFileAsync("Base/LegioNews2.png", " ");
                        }
                        else
                        {
                            await guild.GetDefaultNewsChannel().SendMessageAsync(URL);
                        }

                        await guild.GetDefaultNewsChannel().SendMessageAsync(mess);

                        await guild.GetDefaultNewsChannel().SendMessageAsync("Автор: " + Context.User.Mention);

                        break;
                    }
                }
                catch (Exception e)
                {
                    logger._exception = e;
                }
            }

            try
            {
                await Context.Message.DeleteAsync();

                await result.DeleteAsync();
            }
            catch
            {
                Console.WriteLine("Ошибка доступа!");
            }

            logger.PrintLog();
        }