public virtual PlayerAchievement GetPlayerAchievement(int playerId, AchievementId achievementId)
 {
     return(_dataContext
            .GetQueryable <PlayerAchievement>()
            .Include(pa => pa.Player)
            .FirstOrDefault(pa => pa.AchievementId == achievementId && pa.PlayerId == playerId));
 }
 public virtual PlayerAchievement GetPlayerAchievement(int playerId, AchievementId achievementId)
 {
     return _dataContext
         .GetQueryable<PlayerAchievement>()
         .Include(pa => pa.Player)
         .FirstOrDefault(pa => pa.AchievementId == achievementId && pa.PlayerId == playerId);
 }
Exemple #3
0
        public virtual ActionResult DetailsForCurrentUser(AchievementId achievementId, ApplicationUser currentUser)
        {
            var achievementQuery           = new PlayerAchievementQuery(achievementId, currentUser.Id, currentUser.CurrentGamingGroupId);
            var playerAchievementDetails   = _playerAchievementRetriever.GetPlayerAchievement(achievementQuery);
            var playerAchievementViewModel =
                _transformer.Transform <PlayerAchievementViewModel>(playerAchievementDetails);

            return(View(MVC.Achievement.Views.Details, playerAchievementViewModel));
        }
Exemple #4
0
        public virtual ActionResult Details(AchievementId achievementId, ApplicationUser currentUser)
        {
            if (currentUser != null && currentUser.CurrentGamingGroupId > 0)
            {
                return(DetailsForCurrentUser(achievementId, currentUser));
            }

            var achievement = _achievementRetriever.GetAchievement(achievementId);

            var viewModel = _transformer.Transform <PlayerAchievementViewModel>(achievement);

            return(View(MVC.Achievement.Views.Details, viewModel));
        }
Exemple #5
0
        public virtual ActionResult PlayerAchievement(AchievementId achievementId, int playerId)
        {
            var playerAchievement = _playerAchievementRetriever.GetPlayerAchievement(playerId, achievementId);

            if (playerAchievement == null)
            {
                return(new HttpNotFoundResult());
            }

            var model = _mapperFactory.GetMapper <PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);

            return(View(MVC.Achievement.Views.Details, model));
        }
        public virtual PlayerAchievementDetails GetCurrentPlayerAchievementDetails(AchievementId achievementId, ApplicationUser currentUser)
        {
            var achievement = _achievementRetriever.GetAchievement(achievementId);

            var result = new PlayerAchievementDetails
            {
                AchievementId   = achievementId,
                Description     = achievement.Description,
                IconClass       = achievement.IconClass,
                AchievementName = achievement.Name,
                LevelThresholds = achievement.LevelThresholds
            };

            result.NumberOfPlayersWithThisAchievement = _dataContext.GetQueryable <PlayerAchievement>().Count(y => y.AchievementId == achievementId);

            if (currentUser.UserName == AnonymousApplicationUser.USER_NAME_ANONYMOUS)
            {
                return(result);
            }

            var playerForCurrentUser = _playerRetriever.GetPlayerForCurrentUser(currentUser.Id, currentUser.CurrentGamingGroupId);

            if (playerForCurrentUser != null)
            {
                result.PlayerId   = playerForCurrentUser.Id;
                result.PlayerName = playerForCurrentUser.Name;

                var achievementAwarded = achievement.IsAwardedForThisPlayer(playerForCurrentUser.Id);

                result.AchievementLevel = achievementAwarded.LevelAwarded;
                result.PlayerProgress   = achievementAwarded.PlayerProgress;

                SetRelatedEntities(achievement.Group, result, achievementAwarded.RelatedEntities);
            }

            var playerAchievement = _dataContext
                                    .GetQueryable <PlayerAchievement>()
                                    .FirstOrDefault(x => x.AchievementId == achievementId && x.Player.ApplicationUserId == currentUser.Id);

            if (playerAchievement == null)
            {
                return(result);
            }

            result.DateCreated     = playerAchievement.DateCreated;
            result.LastUpdatedDate = playerAchievement.LastUpdatedDate;

            return(result);
        }
Exemple #7
0
        public virtual ActionResult PlayerAchievement(AchievementId achievementId, int playerId)
        {
            var query = new PlayerAchievementQuery(achievementId, playerId);
            var playerAchievementDetails = _playerAchievementRetriever.GetPlayerAchievement(query);

            if (playerAchievementDetails == null)
            {
                return(new HttpNotFoundResult());
            }

            var playerAchievementViewModel =
                _transformer.Transform <PlayerAchievementViewModel>(playerAchievementDetails);

            return(View(MVC.Achievement.Views.Details, playerAchievementViewModel));
        }
        public virtual ActionResult Details(AchievementId achievementId, ApplicationUser currentUser)
        {
            if (currentUser != null && currentUser.CurrentGamingGroupId > 0)
            {
                return DetailsForCurrentUser(achievementId, currentUser);
            }

            var playerAchievement = new PlayerAchievement
            {
                AchievementId = achievementId,
                PlayerId = 0
            };
            var model = _mapperFactory.GetMapper<PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);
            return View(MVC.Achievement.Views.Details, model);
        }
Exemple #9
0
        public virtual ActionResult Details(AchievementId achievementId, ApplicationUser currentUser)
        {
            if (currentUser != null && currentUser.CurrentGamingGroupId > 0)
            {
                return(DetailsForCurrentUser(achievementId, currentUser));
            }

            var playerAchievement = new PlayerAchievement
            {
                AchievementId = achievementId,
                PlayerId      = 0
            };
            var model = _mapperFactory.GetMapper <PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);

            return(View(MVC.Achievement.Views.Details, model));
        }
        public virtual ActionResult DetailsForCurrentUser(AchievementId achievementId, ApplicationUser currentUser)
        {
            var playerId = _playerRetriever.GetPlayerIdForCurrentUser(currentUser.Id, currentUser.CurrentGamingGroupId);

            var playerAchievement = _playerAchievementRetriever.GetPlayerAchievement(playerId, achievementId);

            if (playerAchievement != null)
            {
                return PlayerAchievement(achievementId, playerId);
            }

            playerAchievement = new PlayerAchievement
            {
                AchievementId = achievementId,
                PlayerId = playerId
            };
            var model = _mapperFactory.GetMapper<PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);
            return View(MVC.Achievement.Views.Details, model);
        }
Exemple #11
0
        public virtual ActionResult DetailsForCurrentUser(AchievementId achievementId, ApplicationUser currentUser)
        {
            var playerId = _playerRetriever.GetPlayerIdForCurrentUser(currentUser.Id, currentUser.CurrentGamingGroupId);

            var playerAchievement = _playerAchievementRetriever.GetPlayerAchievement(playerId, achievementId);

            if (playerAchievement != null)
            {
                return(PlayerAchievement(achievementId, playerId));
            }

            playerAchievement = new PlayerAchievement
            {
                AchievementId = achievementId,
                PlayerId      = playerId
            };
            var model = _mapperFactory.GetMapper <PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);

            return(View(MVC.Achievement.Views.Details, model));
        }
Exemple #12
0
 public IAchievement GetAchievement(AchievementId achievementId)
 {
     return(AchievementFactory.GetAchievementById(achievementId));
 }
Exemple #13
0
        public static IAchievement GetAchievementById(AchievementId id)
        {
            var type = AchievementTypes[id];

            return((IAchievement)EventHandlerObjectFactory.Container.GetInstance(type));
        }
        public virtual ActionResult PlayerAchievement(AchievementId achievementId, int playerId)
        {
            var playerAchievement = _playerAchievementRetriever.GetPlayerAchievement(playerId, achievementId);
            if (playerAchievement == null)
            {
                return new HttpNotFoundResult();
            }

            var model = _mapperFactory.GetMapper<PlayerAchievement, PlayerAchievementViewModel>().Map(playerAchievement);
            return View(MVC.Achievement.Views.Details, model);
        }
 public PlayerAchievementQuery(AchievementId achievementId, string applicationUserId, int gamingGroupId)
 {
     AchievementId     = achievementId;
     ApplicationUserId = applicationUserId;
     GamingGroupId     = gamingGroupId;
 }
 public PlayerAchievementQuery(AchievementId achievementId, int playerId)
 {
     AchievementId = achievementId;
     PlayerId      = playerId;
 }