public ScoreboardViewModel(IEnumerable <Player> players)
        {
            _dialogService   = new DialogService();
            _settingsService = new SettingsService();
            _gameRepo        = new GameRepository();
            _playerGameRepo  = new PlayerGameRepository();

            game                   = new Game();
            game.multicolour       = Convert.ToBoolean(_settingsService.GetMulticolour());
            game.multiColourIsWild = Convert.ToBoolean(_settingsService.GetMulticolourIsWild());
            game.players           = new ObservableCollection <Player>(players);
            game.dateTime          = DateTime.Now;

            colours = new ObservableCollection <SuitColour>
            {
                new SuitColour("Red"),
                new SuitColour("Blue"),
                new SuitColour("Green"),
                new SuitColour("Yellow"),
                new SuitColour("White")
            };

            if (game.multicolour && !game.multiColourIsWild)
            {
                colours.Add(new SuitColour("Multi"));
            }

            foreach (Player player in game.players)
            {
                player.achievements = new ObservableCollection <Achievement>();
            }
        }
 public AchievementService(Game Game)
 {
     game            = Game;
     playerRepo      = new PlayerRepository();
     achievementRepo = new AchievementRepository();
     playerGameRepo  = new PlayerGameRepository();
 }
        public ScoreboardViewModel(IEnumerable <Player> Players)
        {
            _dialogService   = new DialogService();
            _gameRepo        = new GameRepository();
            _playerGameRepo  = new PlayerGameRepository();
            _settingsService = new SettingsService();
            game             = new Game();

            game.round         = 1;
            game.dateTime      = DateTime.Now;
            game.isPointsBased = Convert.ToBoolean(_settingsService.GetGameType());
            game.length        = Convert.ToInt32(_settingsService.GetGameLength());
            game.players       = new ObservableCollection <Player>(Players);

            foreach (Player player in game.players)
            {
                player.achievements = new ObservableCollection <Achievement>();

                if (game.isPointsBased)
                {
                    player.totalScore = game.length;
                }
                else
                {
                    player.totalScore = 66;
                }

                game.currentPlayer = game.players[0];
            }
        }
        public JsonNetResult GetAllPlayerGames()
        {
            var results = new PlayerGameRepository().GetAllPlayerGames();

            return(new JsonNetResult(new
            {
                Data = results
            }, JsonRequestBehavior.DenyGet));
        }
        public JsonNetResult GetPlayerGameById(int id)
        {
            var playerGameById = new PlayerGame();

            try
            {
                var repo = new PlayerGameRepository();
                playerGameById = repo.GetPlayerGameById(id);
            }
            catch (Exception)
            {
                throw;
            }

            return(new JsonNetResult(new
            {
                Data = playerGameById
            }, JsonRequestBehavior.DenyGet));
        }
        public JsonNetResult DeletePlayerGameById(int id)
        {
            string errorMessage = string.Empty;

            try
            {
                var repo = new PlayerGameRepository();
                var playerGameToDelete = repo.GetPlayerGameById(id);
                repo.RemovePlayerGame(playerGameToDelete);
            }
            catch (Exception e)
            {
                errorMessage = e.Message;
            }

            return(new JsonNetResult(new
            {
                ErrorMessage = errorMessage
            }, JsonRequestBehavior.DenyGet));
        }
        public JsonNetResult UpdatePlayerGame(PlayerGame playerGame)
        {
            string errorMessage = string.Empty;

            try
            {
                var repo           = new PlayerGameRepository();
                var playerToUpdate = repo.GetPlayerGameById(playerGame.PlayerGameId);
                playerToUpdate.GameId   = playerGame.Game.GameId;
                playerToUpdate.PlayerId = playerGame.Player.PlayerId;
                repo.SaveChanges();
            }
            catch (Exception e)
            {
                errorMessage = e.Message;
            }

            return(new JsonNetResult(new
            {
                ErrorMessage = errorMessage
            }, JsonRequestBehavior.DenyGet));
        }
 public PlayerGameController(PlayerGameRepository playergameRepository, IEntityMapper <PlayerGame, PlayerGameViewModel> entityToVmMapper, IEntityMapper <PlayerGameViewModel, PlayerGame> vmToEntityMapper)
 {
     this.playergameRepository = playergameRepository;
     this.entityToVmMapper     = entityToVmMapper;
     this.vmToEntityMapper     = vmToEntityMapper;
 }