コード例 #1
0
ファイル: DataManager.cs プロジェクト: tyshaw1994/MonaBot
        public async Task <PhantomThief> GetUserData(PhantomThief user, SocketMessage message)
        {
            var userFileData = System.IO.File.ReadAllText(userDataFilePath);
            List <PhantomThief> phantomThieves = JsonConvert.DeserializeObject <List <PhantomThief> >(userFileData);

            PhantomThief intendedUser = (from ph in phantomThieves
                                         where ph.UserId == user.UserId
                                         select ph).First();

            if (intendedUser == null)
            {
                await ManageUserData(message.Author, message.Channel);
            }

            intendedUser = (from ph in phantomThieves
                            where ph.UserId == user.UserId
                            select ph).First();

            if (intendedUser == null)
            {
                throw new Exception("User was not found or created successfully.");
            }

            return(intendedUser);
        }
コード例 #2
0
ファイル: DataManager.cs プロジェクト: tyshaw1994/MonaBot
        public async Task <PhantomThief> GetUserData(ulong UserId)
        {
            var userFileData = System.IO.File.ReadAllText(userDataFilePath);
            List <PhantomThief> phantomThieves = JsonConvert.DeserializeObject <List <PhantomThief> >(userFileData);

            PhantomThief intendedUser = (from ph in phantomThieves
                                         where ph.UserId == UserId
                                         select ph).First();

            if (intendedUser == null)
            {
                throw new Exception("User was not found or created successfully.");
            }

            return(intendedUser);
        }
コード例 #3
0
ファイル: DataManager.cs プロジェクト: tyshaw1994/MonaBot
        public async Task UpdateUserData(PhantomThief user)
        {
            var userFileData = System.IO.File.ReadAllText(userDataFilePath);
            List <PhantomThief> phantomThieves = JsonConvert.DeserializeObject <List <PhantomThief> >(userFileData);

            PhantomThief intendedUser = (from ph in phantomThieves
                                         where ph.UserId == user.UserId
                                         select ph).First();

            int index = phantomThieves.IndexOf(intendedUser);

            phantomThieves[index] = user;

            userFileData = JsonConvert.SerializeObject(phantomThieves, Formatting.Indented);
            System.IO.File.WriteAllText(userDataFilePath, userFileData);

            await events.Log(new LogMessage(LogSeverity.Info, "UpdateUserData", "User " + user.UserName + " updated in UserData store"));
        }
コード例 #4
0
ファイル: DataManager.cs プロジェクト: tyshaw1994/MonaBot
        public async Task UpdateUserOnlineTime(ulong Id)
        {
            var userFileData = System.IO.File.ReadAllText(userDataFilePath);
            List <PhantomThief> phantomThieves = JsonConvert.DeserializeObject <List <PhantomThief> >(userFileData);

            PhantomThief intendedUser = (from ph in phantomThieves
                                         where ph.UserId == Id
                                         select ph).First();

            intendedUser.LastOnlineTime = DateTime.UtcNow;
            intendedUser.LastStatus     = UserStatus.Online;

            int index = phantomThieves.IndexOf(intendedUser);

            phantomThieves[index] = intendedUser;

            userFileData = JsonConvert.SerializeObject(phantomThieves, Formatting.Indented);
            System.IO.File.WriteAllText(userDataFilePath, userFileData);

            //await events.Log(new LogMessage(LogSeverity.Info, "UpdateUserOnlineTime", "User " + intendedUser.UserName + " LastOnlineTime updated in UserData store"));
        }