Example #1
0
        public ActionResult Index()
        {
            using (var context = new FcDeHoekContext())
            {
                var model = new HomeModel
                {
                    CurrentDivision = GetCurrentDivision(context),
                    PreviousGame    = GameQueries.GetPreviousGame(context),
                    NextGame        = GameQueries.GetNextGame(context),
                    NextGames       = GameQueries.GetNextGames(context).ToList()
                };

                if (model.PreviousGame != null)
                {
                    model.PreviousGameHomeTeam = TeamQueries.GetTeamById(context, model.PreviousGame.IdHomeTeam);
                    model.PreviousGameAwayTeam = TeamQueries.GetTeamById(context, model.PreviousGame.IdAwayTeam);
                    model.PreviousGameResult   = model.PreviousGameHomeTeam.IdTeam == 1 ? eResult.GetResult(model.PreviousGame.GoalsHomeTeam, model.PreviousGame.GoalsAwayTeam) : eResult.GetResult(model.PreviousGame.GoalsAwayTeam, model.PreviousGame.GoalsHomeTeam);
                }


                if (model.NextGame != null)
                {
                    model.NextGameHomeTeam = TeamQueries.GetTeamById(context, model.NextGame.IdHomeTeam);
                    model.NextGameAwayTeam = TeamQueries.GetTeamById(context, model.NextGame.IdAwayTeam);
                }


                model.AllTeams = context.Teams.ToList();

                return(View(model));
            }
        }
Example #2
0
        private List <GameModel> GetGames(DateTime startDate, DateTime endDate)
        {
            using (var context = new FcDeHoekContext())
            {
                var gameModels = new List <GameModel>();
                var games      = GameQueries.GetAllGamesBetweenDates(context, startDate, endDate).OrderBy(g => g.MatchDate).ToList();
                foreach (var game in games)
                {
                    //var season = SeasonQueries.GetSeasonByDate(context, startDate);
                    gameModels.Add(new GameModel
                    {
                        IdGame          = game.IdGame,
                        AwayTeam        = game.GameAwayTeam.Name,
                        Competition     = game.GameCompetition.Description,
                        HomeTeam        = game.GameHomeTeam.Name,
                        MatchDay        = game.MatchDate,
                        IdAwayTeam      = game.IdAwayTeam,
                        IdHomeTeam      = game.IdHomeTeam,
                        IdCompetition   = game.IdCompetition,
                        IdSeason        = game.IdSeason,
                        IsPostPoned     = game.NotPlayed,
                        Forfait         = game.Forfait,
                        IdPostPonedGame = game.IdPostPonedGame
                    });
                }

                return(gameModels);
            }
        }
        private RecordsModel GetTotals(FcDeHoekContext context)
        {
            var historicData = GetHistoricData(context);
            var tempData     = GetCurrentData(context, historicData);

            return(BuildRecordsModel($"All time records (Goals since {eStatsSince.GoalsStartYear}, Assists since {eStatsSince.AssistsStartYear}", tempData));
        }
Example #4
0
        private List <Player> GetPlayersInGame(FcDeHoekContext context, List <Person> players, int idGame)
        {
            var playerModel = new List <Player>();

            playerModel.Add(new Player
            {
                IdPlayer       = -1,
                PlayerFullName = "Choose Player",
                AssistsGiven   = 0,
                GoalsScored    = 0
            });
            foreach (var player in players)
            {
                var stats = PersonStatisticsQueries.GetByIdPersonAndIdGame(context, player.IdPerson, idGame);
                if (stats != null)
                {
                    playerModel.Add(new Player
                    {
                        IdPlayer       = stats.IdPerson,
                        PlayerFullName = $"{player.Name} {player.FirstName}",
                        GoalsScored    = stats.Goals ?? 0,
                        AssistsGiven   = stats.Assists
                    });
                }
            }

            return(playerModel);
        }
Example #5
0
        public ActionResult SaveFcDeHoekGame(FcDeHoekGameModel model)
        {
            using (var context = new FcDeHoekContext())
            {
                var statsToRemove = context.PersonStatistics.Where(ps => ps.IdGame == model.IdGame).ToList();
                if (statsToRemove.Any())
                {
                    context.PersonStatistics.RemoveRange(statsToRemove);
                    context.SaveChanges();
                }

                foreach (var player in model.PlayersInGame)
                {
                    if (player.IdPlayer != -1)
                    {
                        var stat = new PersonStats
                        {
                            IdGame   = model.IdGame,
                            IdPerson = player.IdPlayer,
                            Assists  = player.AssistsGiven,
                            Goals    = player.GoalsScored,
                            Played   = true
                        };
                        context.PersonStatistics.AddOrUpdate(stat);
                        context.SaveChanges();
                    }
                }

                return(FcDeHoekGameDetail(model.IdGame));
            }
        }
Example #6
0
        private List <GameModel> GetGameModels(FcDeHoekContext context, DateTime fixtureDate)
        {
            var gameModels     = new List <GameModel>();
            var gamesToProcess = GameQueries.GetAllGamesBetweenDates(context, fixtureDate.AddDays(-3), fixtureDate.AddDays(4)).ToList();

            foreach (var game in gamesToProcess)
            {
                gameModels.Add(new GameModel
                {
                    AwayTeam      = game.GameAwayTeam.Name,
                    Competition   = game.GameCompetition.Description,
                    Forfait       = game.Forfait,
                    GoalsAwayTeam = game.GoalsAwayTeam,
                    GoalsHomeTeam = game.GoalsHomeTeam,
                    HomeTeam      = game.GameHomeTeam.Name,
                    IdHomeTeam    = game.IdHomeTeam,
                    IdAwayTeam    = game.IdAwayTeam,
                    IdCompetition = game.IdCompetition,
                    IdGame        = game.IdGame,
                    IsPostPoned   = game.NotPlayed,
                    MatchDay      = game.MatchDate
                });
            }

            return(gameModels);
        }
        public ActionResult AssistDetail(int idSeason)
        {
            using (var context = new FcDeHoekContext())
            {
                var tempData = GetTempDataForDetail(idSeason, context).OrderByDescending(td => td.Assists).ToList();
                var season   = SeasonQueries.GetById(context, idSeason);

                var keyValue = idSeason == -1 || season == null
                    ? "All Time Assists"
                    : $"Assists {season.SeasonStartYear} - {season.SeasonEndYear}";

                var model         = new Dictionary <string, List <RecordsPlayer> >();
                var playerRecords = new List <RecordsPlayer>();
                foreach (var data in tempData)
                {
                    if (data.Assists != 0)
                    {
                        playerRecords.Add(new RecordsPlayer
                        {
                            Player = data.Player,
                            Stat   = data.Assists
                        });
                    }
                }

                model.Add(keyValue, playerRecords);

                return(View("Detail", model));
            }
        }
        private static List <RecordsTempData> GetHistoricData(FcDeHoekContext context, int idSeason = -1)
        {
            var tempDataList = new List <RecordsTempData>();
            var allPlayers   = PersonQueries.GetPlayers(context).ToList();

            foreach (var player in allPlayers)
            {
                var historicStats = idSeason != -1
                    ? HistoricStatsQueries.GetByIdPlayer(context, player.IdPerson).Where(hs => hs.IdSeason == idSeason).ToList()
                    : HistoricStatsQueries.GetByIdPlayer(context, player.IdPerson).ToList();

                if (historicStats.Any())
                {
                    var tempData = new RecordsTempData
                    {
                        IdPlayer = player.IdPerson,
                        Player   = $"{player.Name} {player.FirstName}"
                    };

                    foreach (var stat in historicStats)
                    {
                        tempData.Goals     += stat.Goals ?? 0;
                        tempData.Assists   += stat.Assists ?? 0;
                        tempData.Penalties += stat.Penalties ?? 0;
                    }

                    tempDataList.Add(tempData);
                }
            }

            return(tempDataList);
        }
        public ActionResult EditPerson(int idPerson)
        {
            using (var context = new FcDeHoekContext())
            {
                if (idPerson == 0)
                {
                    return(View("Detail", new PersonModel()));
                }

                var person      = PersonQueries.GetById(context, idPerson);
                var personModel = new PersonModel
                {
                    IdPerson            = person.IdPerson,
                    BirthDate           = person.BirthDate,
                    FirstName           = person.FirstName,
                    IsStaff             = person.IsStaff,
                    IsPlayer            = person.IsPlayer,
                    Name                = person.Name,
                    PerkezNumber        = person.PerkezNumber,
                    PhoneNumber         = person.PhoneNumber,
                    Picture             = person.PicturePath,
                    Function            = person.Function ?? eFunction.Player,
                    FunctionDescription = eFunction.GetFunctionDescription(person.Function ?? eFunction.Player)
                };
                return(View("Detail", personModel));
            }
        }
Example #10
0
        private ScoreModel GetScores(DateTime?fixtureDate)
        {
            using (var context = new FcDeHoekContext())
            {
                if (fixtureDate == null)
                {
                    fixtureDate = DateTime.Now.GetFirstDayOfWeek(CultureInfo.CurrentCulture);
                }

                var allGames     = GameQueries.GetAllGamesByIdSeason(context, SeasonQueries.GetSeasonByDate(context, (DateTime)fixtureDate)?.IdSeason ?? SeasonQueries.GetCurrentSeason(context).IdSeason).OrderBy(g => g.MatchDate).ToList();
                var allPlayWeeks = new List <DateTime>();
                foreach (var game in allGames)
                {
                    if (!allPlayWeeks.Contains(game.MatchDate))
                    {
                        allPlayWeeks.Add(game.MatchDate);
                    }
                }

                var model = new ScoreModel
                {
                    AllFixtureDates = allPlayWeeks,
                    Games           = GetGameModels(context, (DateTime)fixtureDate)
                };

                model.FixtureDate = model.Games.FirstOrDefault()?.MatchDay ?? DateTime.Now;

                return(model);
            }
        }
        public ActionResult Save(PersonModel model)
        {
            using (var context = new FcDeHoekContext())
            {
                Person person;
                if (model.IdPerson == 0)
                {
                    person = new Person();
                }
                else
                {
                    person = PersonQueries.GetById(context, model.IdPerson);
                }

                person.BirthDate    = model.BirthDate;
                person.FirstName    = model.FirstName;
                person.IsPlayer     = model.IsPlayer;
                person.IsStaff      = model.IsStaff;
                person.Name         = model.Name;
                person.PerkezNumber = model.PerkezNumber;
                person.PhoneNumber  = model.PhoneNumber;
                person.PicturePath  = model.Picture;
                person.Function     = model.Function;

                context.Persons.AddOrUpdate(person);
                context.SaveChanges();
            }

            return(RedirectToAction("Index"));
        }
        private List <PersonModel> GetPersons()
        {
            using (var context = new FcDeHoekContext())
            {
                var models  = new List <PersonModel>();
                var persons = context.Persons.ToList();
                foreach (var person in persons)
                {
                    models.Add(new PersonModel
                    {
                        IdPerson            = person.IdPerson,
                        Name                = person.Name,
                        FirstName           = person.FirstName,
                        IsPlayer            = person.IsPlayer,
                        IsStaff             = person.IsStaff,
                        PerkezNumber        = person.PerkezNumber,
                        Picture             = person.PicturePath,
                        BirthDate           = person.BirthDate,
                        PhoneNumber         = person.PhoneNumber,
                        Function            = person.Function ?? eFunction.Player,
                        FunctionDescription = eFunction.GetFunctionDescription(person.Function ?? eFunction.Player)
                    });
                }

                return(models);
            }
        }
Example #13
0
 private static string SetSeason()
 {
     using (var context = new FcDeHoekContext())
     {
         var season = SeasonQueries.GetCurrentSeason(context);
         return($"{season.SeasonStartYear} - {season.SeasonEndYear}");
     }
 }
Example #14
0
 private string GetSeason(int idSeason)
 {
     using (var context = new FcDeHoekContext())
     {
         var season = SeasonQueries.GetById(context, idSeason);
         return(season == null ? string.Empty : $"{season.SeasonStartYear} - {season.SeasonEndYear}");
     }
 }
Example #15
0
 private HistoricStatsModel EmptyModel(FcDeHoekContext context)
 {
     return(new HistoricStatsModel
     {
         AllPlayers = GetAllPlayers(context),
         AllSeasons = GetAllSeasons(context)
     });
 }
Example #16
0
 private string GetPlayerName(int idPerson)
 {
     using (var context = new FcDeHoekContext())
     {
         var player = PersonQueries.GetById(context, idPerson);
         return(player == null ? string.Empty : $"{player.Name} {player.FirstName}");
     }
 }
Example #17
0
 // GET: Records
 public ActionResult Index()
 {
     using (var context = new FcDeHoekContext())
     {
         var model = new List <RecordsModel>();
         model.Add(GetTotals(context));
         model.AddRange(GetTotalsBySeason(context));
         return(View(model));
     }
 }
        private List <GameModel> GetGameModels(FcDeHoekContext context, List <Game> calendars, bool setIsNextGame = true)
        {
            var  games    = new List <GameModel>();
            Game nextGame = null;

            if (setIsNextGame)
            {
                nextGame = GameQueries.GetNextGame(context);
            }



            foreach (var calendar in calendars)
            {
                if (calendar.GameCompetition == null)
                {
                    calendar.GameCompetition = context.BaseDomains.FirstOrDefault(bd => bd.IdBaseDomain == calendar.IdCompetition);
                }

                if (calendar.GameHomeTeam == null)
                {
                    calendar.GameHomeTeam = TeamQueries.GetTeamById(context, calendar.IdHomeTeam);
                }

                if (calendar.GameAwayTeam == null)
                {
                    calendar.GameAwayTeam = TeamQueries.GetTeamById(context, calendar.IdAwayTeam);
                }


                games.Add(new GameModel
                {
                    IdGame      = calendar.IdGame,
                    Competition = calendar.GameCompetition?.Description,
                    MatchDay    = calendar.MatchDate.Date,
                    IdHomeTeam  = calendar.IdHomeTeam,
                    HomeTeam    = calendar.GameHomeTeam?.Name,
                    AwayTeam    = calendar.GameAwayTeam?.Name,
                    IdAwayTeam  = calendar.IdAwayTeam,
                    GameResult  = calendar.IdHomeTeam == 1 ? eResult.GetResult(calendar.GoalsHomeTeam, calendar.GoalsAwayTeam) : eResult.GetResult(calendar.GoalsAwayTeam, calendar.GoalsHomeTeam),
                    Result      = calendar.NotPlayed
                        ? "Afgelast"
                        : !calendar.Forfait
                            ? calendar.GoalsHomeTeam != null
                                ? $"{calendar.GoalsHomeTeam} - {calendar.GoalsAwayTeam}"
                                : " - "
                            : calendar.GoalsHomeTeam != null
                                ? $"{calendar.GoalsHomeTeam} - {calendar.GoalsAwayTeam} (F.F.)"
                                : "F.F.",
                    IsNextGame = calendar.IdGame == nextGame?.IdGame
                });
            }

            return(games);
        }
Example #19
0
        public static IQueryable <Game> GetNextGames(FcDeHoekContext context)
        {
            var gameFcDeHoek = GetNextGame(context);

            if (gameFcDeHoek == null)
            {
                return(null);
            }

            return(context.Games.Where(g => g.MatchDate == gameFcDeHoek.MatchDate));
        }
Example #20
0
        private List <PersonModel> GetStaff()
        {
            using (var context = new FcDeHoekContext())
            {
                var models  = new List <PersonModel>();
                var persons = PersonQueries.GetStaff(context).ToList();
                foreach (var person in persons)
                {
                    models.Add(MapPersonToPersonModel(context, person));
                }

                return(models);
            }
        }
Example #21
0
        private List <HistoricStatsModel> GetHistoricStats()
        {
            using (var context = new FcDeHoekContext())
            {
                var models        = new List <HistoricStatsModel>();
                var historicStats = context.HistoricStatses.ToList();
                foreach (var stat in historicStats)
                {
                    models.Add(MapHistoricStatToModel(stat));
                }

                return(models);
            }
        }
        private Dictionary <DateTime, List <GameModel> > GetGamesPerDate(FcDeHoekContext context, List <Game> calendars)
        {
            var dictionary    = new Dictionary <DateTime, List <GameModel> >();
            var currentSeason = SeasonQueries.GetCurrentSeason(context);
            var gamesDeHoek   = GameQueries.GetAllGamesByIdSeasonAndIdTeam(context, currentSeason.IdSeason, 1).OrderBy(g => g.MatchDate).ToList();

            foreach (var deHoekGame in gamesDeHoek)
            {
                var gamesForMatchDate = calendars.Where(c => c.MatchDate == deHoekGame.MatchDate).ToList();
                dictionary.Add(deHoekGame.MatchDate, GetGameModels(context, gamesForMatchDate, false));
            }

            return(dictionary);
        }
Example #23
0
 public void SeasonContainsData()
 {
     using (var context = new FcDeHoekContext())
     {
         var seasons = context.Seasons.ToList();
         Assert.IsNotNull(seasons);
         Assert.IsNotEmpty(seasons);
         foreach (var season in seasons)
         {
             Console.WriteLine(
                 $"show me {season.IdSeason} - {season.SeasonStartYear} - {season.SeasonEndYear} - {season.Division}");
         }
     }
 }
Example #24
0
 private UserModel GetUser(int idUser)
 {
     using (var context = new FcDeHoekContext())
     {
         var user = UserQueries.GetById(context, idUser);
         return(new UserModel
         {
             IdUser = user.IdUser,
             UserName = user.UserName,
             IsAdmin = user.IsAdmin,
             Obsolete = user.Obsolete
         });
     }
 }
Example #25
0
        public ActionResult SeasonDetail(int idSeason)
        {
            using (var context = new FcDeHoekContext())
            {
                var season = new Season();
                if (idSeason != 0)
                {
                    season = SeasonQueries.GetById(context, idSeason);
                }


                return(View(MapSeasonToSeasonModel(season, null)));
            }
        }
Example #26
0
        public ActionResult EditGame(int idGame)
        {
            using (var context = new FcDeHoekContext())
            {
                GameManagerModel manageModel;

                if (idGame == 0)
                {
                    manageModel = new GameManagerModel
                    {
                        Games = new List <GameModel> {
                            new GameModel()
                        },
                        Teams            = context.Teams.ToList(),
                        CompetitionTypes = eCompetitionType.GetAllCompetitionTypes(),
                        AddAnother       = false
                    };
                }
                else
                {
                    var game = GameQueries.GetById(context, idGame);
                    manageModel = new GameManagerModel
                    {
                        Games = new List <GameModel> {
                            new GameModel
                            {
                                AwayTeam      = game.GameAwayTeam.Name,
                                Competition   = game.GameCompetition.Description,
                                Forfait       = game.Forfait,
                                GoalsHomeTeam = game.GoalsHomeTeam,
                                GoalsAwayTeam = game.GoalsAwayTeam,
                                GameResult    = 0,
                                HomeTeam      = game.GameHomeTeam.Name,
                                IdAwayTeam    = game.IdAwayTeam,
                                IdCompetition = game.IdCompetition,
                                IdGame        = game.IdGame,
                                IdHomeTeam    = game.IdHomeTeam,
                                MatchDay      = game.MatchDate
                            }
                        },
                        Teams            = context.Teams.ToList(),
                        CompetitionTypes = eCompetitionType.GetAllCompetitionTypes(),
                        AddAnother       = false
                    };
                }

                return(View("Detail", manageModel));
            }
        }
Example #27
0
        private List <SeasonModel> GetAllSeasons()
        {
            using (var context = new FcDeHoekContext())
            {
                var seasons       = context.Seasons.ToList();
                var currentSeason = SeasonQueries.GetCurrentSeason(context);
                var seasonModels  = new List <SeasonModel>();
                foreach (var season in seasons)
                {
                    seasonModels.Add(MapSeasonToSeasonModel(season, currentSeason));
                }

                return(seasonModels);
            }
        }
 public ActionResult AllGames()
 {
     using (var context = new FcDeHoekContext())
     {
         var currentSeason = SeasonQueries.GetCurrentSeason(context);
         var calendars     = GameQueries.GetAllGamesByIdSeason(context, currentSeason.IdSeason).OrderBy(g => g.MatchDate).ToList();
         var model         = new FullCalendarModel
         {
             SeasonDescription =
                 $"{currentSeason.SeasonStartYear} - {currentSeason.SeasonEndYear}",
             GamesPerDate = GetGamesPerDate(context, calendars)
         };
         return(View(model));
     }
 }
Example #29
0
        private List <HistoricPlayer> GetAllPlayers(FcDeHoekContext context)
        {
            var players = context.Persons.Where(p => p.IsPlayer).ToList();
            var models  = new List <HistoricPlayer>();

            foreach (var player in players)
            {
                models.Add(new HistoricPlayer
                {
                    IdPlayer = player.IdPerson,
                    Player   = $"{player.Name} {player.FirstName}"
                });
            }

            return(models);
        }
Example #30
0
        public ActionResult Save(ScoreModel model)
        {
            using (var context = new FcDeHoekContext())
            {
                foreach (var gameModel in model.Games)
                {
                    var game = GameQueries.GetById(context, gameModel.IdGame);
                    game.GoalsHomeTeam = gameModel.GoalsHomeTeam;
                    game.GoalsAwayTeam = gameModel.GoalsAwayTeam;
                    context.Games.AddOrUpdate(game);
                    context.SaveChanges();
                }

                return(RedirectToAction("EditScores", new { fixtureDate = model.FixtureDate }));
            }
        }