コード例 #1
0
        public async Task RemovefavoriteChars(int id)
        {
            try
            {
                if (id > 0)
                {
                    UserManager urmngr = new UserManager();
                    var         usr    = await urmngr.GetUserbyId(Convert.ToString(Context.User.Id));

                    FavoriteCharactersManager fvmngr = new FavoriteCharactersManager();
                    if (usr != null)
                    {
                        await fvmngr.DelFavoritesByid(Convert.ToString(usr.Id), id);
                        await ReplyAsync(Context.User.Mention + "You succesfully removed  yor favorite Character/s");
                    }
                    else
                    {
                        await ReplyAsync(Context.User.Mention + "You arre nto registered with this server");
                    }
                }
            }
            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
            }
        }
コード例 #2
0
        public async Task EditfavoriteChars(int id, string char2)
        {
            try
            {
                if (id > 0 && char2 != null)
                {
                    UserManager urmngr = new UserManager();
                    var         usr    = await urmngr.GetUserbyId(Convert.ToString(Context.User.Id));

                    FavoriteCharactersManager fvmngr = new FavoriteCharactersManager();
                    if (usr != null)
                    {
                        await fvmngr.EditFavorite(Convert.ToString(usr.Id), id, char2);
                        await ReplyAsync(Context.User.Mention + "You modified  yor favorite Character/s");
                    }
                    else
                    {
                        await ReplyAsync(Context.User.Mention + "You are not registered with this server");
                    }
                }
            }
            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
            }
        }
コード例 #3
0
        public async Task  AddfavoriteChars(string chars)
        {
            try
            {
                if (chars != null)
                {
                    UserManager urmngr = new UserManager();

                    var usr = await urmngr.GetUserbyId(Convert.ToString(Context.User.Id));

                    FavoriteCharactersManager fvmngr = new FavoriteCharactersManager();

                    if (usr != null)
                    {
                        await fvmngr.AddFavorite(usr.Id, chars, Convert.ToString(Context.Guild.Id));
                        await ReplyAsync(Context.User.Mention + "You succesfully registered yor favorite Character/s");
                    }
                    else
                    {
                        await ReplyAsync(Context.User.Mention + "You arre nto registered with this server");
                    }
                }
            }
            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
            }
        }
コード例 #4
0
        public async Task GetfavoriteChars()
        {
            try
            {
                UserManager urmngr = new UserManager();
                var         usr    = await urmngr.GetUserbyId(Convert.ToString(Context.User.Id));

                FavoriteCharactersManager fvmngr = new FavoriteCharactersManager();
                if (usr != null)
                {
                    var favs = fvmngr.GetUserFavorite(usr.Id);


                    string msg = "";

                    StringBuilder bld = new StringBuilder();


                    if (favs != null)
                    {
                        bld.AppendLine(String.Format("{0} your favorite characters : ", Context.User.Mention));


                        foreach (var f in favs)
                        {
                            bld.AppendLine(String.Format("Id:{0}", f.Id));
                            bld.AppendLine(String.Format("Name :{0}", Format.Sanitize(f.CharacterName)));
                            bld.AppendLine(String.Format("Date :{0} ", f.AddedAt.ToLongDateString()));
                            ViewFavoriteCharacter vchar = new ViewFavoriteCharacter();
                            vchar.ImportModel(f);
                            bld.AppendLine(String.Format("ServerName :{0} ", vchar.ServerName));
                        }
                        // var t = bld.ToString();
                        msg = bld.ToString();
                        // await ReplyAsync(Context.User.Mention + msg);
                        var channel = await Context.User.GetOrCreateDMChannelAsync();

                        if (channel != null)
                        {
                            await channel.SendMessageAsync(msg);
                        }
                    }
                    else
                    {
                        await ReplyAsync(Context.User.Mention + "You dont have added favorite characters");
                    }
                }
                else
                {
                    await ReplyAsync("You are not registered with this server or you dont have added favorite characters");
                }
            }


            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
            }
        }
コード例 #5
0
        public async Task UnRegisterBot()
        {
            try
            {
                UserManager urmngr = new UserManager();

                FavoriteCharactersManager favmngr = new FavoriteCharactersManager();
                await favmngr.DelFavorites(Convert.ToString(Context.User.Id));

                await urmngr.DeleteUser(Context.User);

                await ReplyAsync("You succesfully unregistered with the server");
            }
            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
            }
        }
コード例 #6
0
        public override async Task GuildMemberUpdated(SocketGuildUser arg1, SocketGuildUser arg2)
        {
            try
            {
                await base.GuildMemberUpdated(arg1, arg2);


                if (arg1.Status != arg2.Status && arg1.IsBot == false && arg2.IsBot == false)
                {
                    if (arg1.Status != Discord.UserStatus.Online && arg2.Status == Discord.UserStatus.Online)
                    // && arg2.Status!= Discord.UserStatus.DoNotDisturb && arg2.)
                    {
                        UserManager usermngr = new UserManager();
                        var         user     = await usermngr.GetUserbyId(Convert.ToString(arg1.Id));

                        if (user != null)
                        {
                            DateTime           date     = DateTime.Now;
                            GiftHistoryManager giftmngr = new GiftHistoryManager();


                            var birth = user.Birthday;
                            if (date.Day == birth.Day && date.Month == birth.Month)
                            {
                                FavoriteCharactersManager fvmngr = new FavoriteCharactersManager();

                                var fchar = fvmngr.GetUserFavorite(Convert.ToString(user.Id));
                                if (fchar != null && await giftmngr.isGiftGiven(user.Id, Convert.ToString(arg1.Guild.Id), DateTime.Now.Year) == false)
                                {
                                    int    i   = 0;
                                    Random rnd = new Random();
                                    i = rnd.Next(fchar.Count - 1);
                                    if (i > 0)
                                    {
                                        DanbooruDownloader san  = new DanbooruDownloader();
                                        string             file = await san.DownloadRandomimage(fchar[i].CharacterName);

                                        var dmchannel = await arg1.GetOrCreateDMChannelAsync();

                                        if (dmchannel != null)
                                        {
                                            if (file == null)
                                            {
                                                //await dmchannel.SendMessageAsync(String.Format("Did not find a random image to send you {0} from danbooru complex for {1}.",
                                                //    arg2.Mention, fchar[i].CharacterName));
                                                return;
                                            }
                                            Stream fil = File.OpenRead(file);

                                            await dmchannel.SendFileAsync(fil, file, String.Format("{0} Happy Birthday ! Sending you a random image for : {1} from danbooru (based boards )  as a present!"
                                                                                                   , arg2.Mention, fchar[i].CharacterName));
                                        }
                                        File.Delete(file);
                                        await giftmngr.AddGift(user.Id, fchar[i].CharacterName, Convert.ToString(arg1.Guild.Id));
                                    }
                                }
                            }
                        }
                    }
                }



                //return Task.CompletedTask;
            }
            catch (Exception ex)
            {
                CommonTools.ErrorReporting(ex);
                //return Task.CompletedTask;
            }
        }