Ejemplo n.º 1
0
        public IHttpActionResult GetCurrentUserInfo(int userId)
        {
            User user;

            if (userId == 0)
            {
                var userEmail = User.Identity.Name;
                user = _repositoryFactory.UserRepository.Find(r => r.Email == userEmail);
            }
            else
            {
                user = _repositoryFactory.UserRepository.Find(userId);
            }

            var wordLevelManager = new WordLevelManager(_repositoryFactory);
            var wordStat         = wordLevelManager.GetUserWordsStat(user.Id);

            var userStatModel = new UserStatModel
            {
                NickName   = user.NickName,
                Email      = user.Email,
                WordsCount = wordStat.Item1,
                WordsLevel = wordStat.Item2,
                Id         = user.Id,
                UniqueId   = UserProvider.GetUserUniqueId(user.Id.ToString())
            };

            this.BuildWordStat(userStatModel);

            return(Json(userStatModel));
        }
Ejemplo n.º 2
0
        public IHttpActionResult GetCurrentUserInfo(int userId)
        {
            User user;

            if (userId == 0)
            {
                var userEmail = User.Identity.Name;
                user = _repositoryFactory.UserRepository.Find(r => r.Email == userEmail);
            }
            else
            {
                user = _repositoryFactory.UserRepository.Find(userId);
            }

            var wordLevelManager = new WordLevelManager(_repositoryFactory);
            var wordLevel        = wordLevelManager.GetUserWordsLevel(user.Id);

            var userStatModel = new UserStatModel
            {
                ActivityLevel    = user.ActivityLevel,
                NickName         = user.NickName,
                Email            = user.Email,
                LastActivityDate = user.LastActivity.ToShortDateString(),
                WordsLevel       = wordLevel,
                Id = user.Id
            };

            return(Json(userStatModel));
        }
        public IHttpActionResult UpdateWordStatus([FromBody] WordUpdateModel wordUpdateModel)
        {
            var wordLevelManager = new WordLevelManager(_repositoryFactory);

            var resultWord = wordLevelManager.SetWordLevel(
                wordUpdateModel.WordId,
                wordUpdateModel.IsTrueAnswer, wordUpdateModel.TestType);

            var responseModel = new ResponseModel();

            if (resultWord == null)
            {
                responseModel.IsError      = true;
                responseModel.ErrorMessage = "Error occurred! Word was not updated";
            }

            return(Json(responseModel));
        }