Ejemplo n.º 1
0
        private Kalender CreateKalenderMatch(Reeks reeks, TeamMatchEntryType frenoyMatch, string thuisPloegCode)
        {
            var kalender = new Kalender
            {
                FrenoyMatchId = frenoyMatch.MatchId,
                Datum         = frenoyMatch.Date,
                Uur           = new TimeSpan(frenoyMatch.Time.Hour, 0, 0),
                ThuisClubId   = GetClubId(frenoyMatch.HomeClub),
                ThuisPloeg    = ExtractTeamCodeFromFrenoyName(frenoyMatch.HomeTeam),
                UitClubId     = GetClubId(frenoyMatch.AwayClub),
                UitPloeg      = ExtractTeamCodeFromFrenoyName(frenoyMatch.AwayTeam),
                Week          = int.Parse(frenoyMatch.WeekName)
            };

            kalender.ThuisClubPloegId = GetClubPloegId(reeks.Id, kalender.ThuisClubId.Value, kalender.ThuisPloeg);
            kalender.UitClubPloegId   = GetClubPloegId(reeks.Id, kalender.UitClubId.Value, kalender.UitPloeg);

            // In the db the ThuisClubId is always Erembodegem
            kalender.Thuis = kalender.ThuisClubId == _thuisClubId && kalender.ThuisPloeg == thuisPloegCode ? 1 : 0;
            if (kalender.Thuis == 0)
            {
                var thuisClubId      = kalender.ThuisClubId;
                var thuisPloeg       = kalender.ThuisPloeg;
                var thuisClubPloegId = kalender.ThuisClubPloegId;

                kalender.ThuisClubId      = kalender.UitClubId;
                kalender.ThuisPloeg       = kalender.UitPloeg;
                kalender.ThuisClubPloegId = kalender.UitClubPloegId;

                kalender.UitClubId      = thuisClubId;
                kalender.UitPloeg       = thuisPloeg;
                kalender.UitClubPloegId = thuisClubPloegId;
            }
            return(kalender);
        }
Ejemplo n.º 2
0
        public void select_reeksbyID_succes()
        {
            Reeks expected = new Reeks(1, "test1");
            Reeks gotten   = generalManager.ReeksManager.GetById(expected.ID);

            Assert.AreEqual(expected, gotten);
        }
Ejemplo n.º 3
0
        public void select_ReeksByName_succes()
        {
            Reeks expected = new Reeks(1, "test1");
            Reeks gotten   = generalManager.ReeksManager.GetByName(expected.Naam);

            Assert.AreEqual(expected, gotten);
        }
Ejemplo n.º 4
0
        private Reeks CreateReeks(TeamEntryType frenoyTeam)
        {
            var reeks = new Reeks();

            reeks.Competitie = _options.Competitie;
            reeks.ReeksType  = _options.ReeksType;
            reeks.Jaar       = _options.Jaar;
            reeks.LinkId     = $"{frenoyTeam.DivisionId}_{frenoyTeam.Team}";

            if (_isVttl)
            {
                var reeksMatch = VttlReeksRegex.Match(frenoyTeam.DivisionName);
                reeks.ReeksNummer = reeksMatch.Groups[1].Value;
                reeks.ReeksCode   = reeksMatch.Groups[2].Value;
            }
            else
            {
                var reeksMatch = SportaReeksRegex.Match(frenoyTeam.DivisionName.Trim());
                reeks.ReeksNummer = reeksMatch.Groups[1].Value;
                reeks.ReeksCode   = reeksMatch.Groups[2].Value;
            }

            reeks.FrenoyDivisionId = int.Parse(frenoyTeam.DivisionId);
            reeks.FrenoyTeamId     = frenoyTeam.TeamId;
            return(reeks);
        }
        public void Add(Reeks reeks)
        {
            ReeksDB dbreeks         = ConvertToDatalayer.ConvertToReeksDb(reeks);
            var     sqlQueryBuilder = new SqlQueryBuilder <ReeksDB>(dbreeks);

            ExecuteCommand(sqlQueryBuilder.GetInsertCommand());
        }
Ejemplo n.º 6
0
 public void StelIn(string spelernaam, int mutsNummer, bool isDoelman, bool isReserve, Reeks reeks)
 {
     SpelerNaam = spelernaam;
     MutsNummer = mutsNummer;
     IsDoelman  = isDoelman;
     IsReserve  = isReserve;
     Reeks      = reeks;
 }
Ejemplo n.º 7
0
        public void DeleteReeks_succesvol()
        {
            int   begincount = generalManager.ReeksManager.GetAll().Count;
            Reeks reeks      = generalManager.ReeksManager.GetById(1);

            generalManager.ReeksManager.Delete(reeks);
            Assert.IsTrue(generalManager.ReeksManager.GetAll().Count == begincount - 1);
        }
Ejemplo n.º 8
0
        public void updateReeks_succesvol()
        {
            Reeks og = generalManager.ReeksManager.GetById(1);

            og.Naam = "inserted test value";
            generalManager.ReeksManager.Update(og);
            Assert.AreEqual(og.Naam, "inserted test value");
        }
 public void StelIn(string _spelerNaam, int _rugNummer, bool _isVluchter, bool _isInLotto, Reeks _reeks)
 {
     spelerNaam = _spelerNaam;
     rugNummer  = _rugNummer;
     isVluchter = _isVluchter;
     isInLotto  = _isInLotto;
     reeks      = _reeks;
 }
Ejemplo n.º 10
0
        private ClubPloeg CreateClubPloeg(Reeks reeks, RankingEntryType frenoyTeam)
        {
            var clubPloeg = new ClubPloeg();

            clubPloeg.ReeksId = reeks.Id;
            clubPloeg.ClubId  = GetClubId(frenoyTeam.TeamClub);
            clubPloeg.Code    = ExtractTeamCodeFromFrenoyName(frenoyTeam.Team);
            return(clubPloeg);
        }
 public void Update(Reeks Reeks)
 {
     {
         ReeksDB newReeks = ConvertToDatalayer.ConvertToReeksDb(Reeks);
         var     command  = new SqlCommand("update Reeks set id = @id, Name = @name WHERE id = @id");
         command.Parameters.Add(new SqlParameter("id", newReeks.ID));
         command.Parameters.Add(new SqlParameter("name", newReeks.Naam));
         ExecuteCommand(command);
     }
 }
Ejemplo n.º 12
0
        public void Add_Reeks_No_Error()
        {
            Reeks testreeks = new Reeks(5, "test1");

            generalManager.ReeksManager.Add(testreeks);

            Reeks reeksFromDb = generalManager.ReeksManager.GetById(5);

            Assert.AreEqual(testreeks, reeksFromDb);
        }
Ejemplo n.º 13
0
 public void Delete(Reeks reeks)
 {
     if (GetById(reeks.ID) != null)
     {
         this._reeksRepository.DeleteById(reeks.ID);
     }
     else
     {
         throw new ArgumentException("trying to delete a series that does not exist");
     }
 }
Ejemplo n.º 14
0
 public void Add(Reeks reeks)
 {
     if (DoubleReeksNotFound(reeks))
     {
         this._reeksRepository.Add(reeks);
     }
     else
     {
         throw new ArgumentException("Reeks bestaat al");
     }
 }
Ejemplo n.º 15
0
 private Boolean DoubleReeksNotFound(Reeks reeks)
 {
     //     if (this._reeksRepository.GetAll().Any(i => i.ID == reeks.ID && i.Naam.ToLower() == reeks.Naam.ToLower())) //weg moeten doen voor toevoegen, sinds nieuwe altijd id 0 hebben?
     if (this._reeksRepository.GetAll().Any(i => i.Naam == reeks.Naam))
     {
         return(false);
     }
     else
     {
         return(true);
     }
 }
Ejemplo n.º 16
0
        public void Initialize()
        {
            Reeks reeks1 = new Reeks(1, "test1");
            Reeks reeks2 = new Reeks(2, "test2");
            Reeks reeks3 = new Reeks(3, "test3");
            Reeks reeks4 = new Reeks(4, "test4");

            generalManager.ReeksManager.Add(reeks1);
            generalManager.ReeksManager.Add(reeks2);
            generalManager.ReeksManager.Add(reeks3);
            generalManager.ReeksManager.Add(reeks4);
        }
        static public List <Reeks> ConvertToReeksen(List <ReeksDB> reeksen)
        {
            List <Reeks> converteduitgevers = new List <Reeks>();

            foreach (var a in reeksen)
            {
                Reeks Ca = new Reeks(a.ID, a.Naam);
                converteduitgevers.Add(Ca);
            }

            return(converteduitgevers);
        }
Ejemplo n.º 18
0
        public void select_StripByName_succes()
        {
            Reeks         reeks   = generalManager.ReeksManager.GetById(4);
            Auteur        auteur  = generalManager.AuteurManager.GetById(4);
            List <Auteur> auteurs = new List <Auteur>();

            auteurs.Add(auteur);
            Uitgeverij Uitgeverij = generalManager.UitgeverijManager.GetById(4);
            Strip      expected   = new Strip(1, "test1", 1, auteurs, reeks, Uitgeverij);
            Strip      gotten     = generalManager.StripManager.GetByName(expected.StripTitel);

            Assert.AreEqual(expected, gotten);
        }
Ejemplo n.º 19
0
        public void select_StripbyID_succes()
        {
            Reeks reeks = new Reeks(4, "test");

            generalManager.ReeksManager.Add(reeks);
            Auteur auteur = new Auteur(4, "test");

            generalManager.AuteurManager.Add(auteur);
            List <Auteur> auteurs = new List <Auteur>();

            auteurs.Add(auteur);
            Uitgeverij Uitgeverij = new Uitgeverij(4, "Uitgeverij");

            generalManager.UitgeverijManager.Add(Uitgeverij);
            Strip expected = new Strip(1, "test1", 1, auteurs, reeks, Uitgeverij);
            Reeks gotten   = generalManager.ReeksManager.GetById(expected.ID);

            Assert.AreEqual(expected, gotten);
        }
Ejemplo n.º 20
0
        public void Add(Strip strip)
        {
            if (DoubleStripNotFound(strip))
            {
                for (int i = 0; i < strip.Auteurs.Count; i++)
                {
                    // does this fruit exist
                    Auteur auteur = _gm.AuteurManager.GetByName(strip.Auteurs[i].Naam);
                    // yes good gimme

                    if (auteur != null)
                    {
                        strip.Auteurs[i] = auteur;
                    }
                    // no make new bosbes error
                    else
                    {
                        throw new ArgumentException("the author does not exist");
                    }
                }
                Reeks reeks = _gm.ReeksManager.GetByName(strip.Reeks.Naam);
                if (reeks != null)
                {
                    strip.Reeks = reeks;
                }
                else
                {
                    throw new ArgumentException("de reeks bestaat niet");
                }
                Uitgeverij uitgeverij = _gm.UitgeverijManager.GetByName(strip.Uitgeverij.Naam);
                if (uitgeverij != null)
                {
                    strip.Uitgeverij = uitgeverij;
                }
                else
                {
                    throw new ArgumentException("uitgeverij bestaat niet");
                }

                this._stripRepository.Add(strip);
            }
        }
Ejemplo n.º 21
0
        public void Initialize()
        {
            Reeks reeks = generalManager.ReeksManager.GetById(4);

            Auteur auteur = generalManager.AuteurManager.GetById(4);

            List <Auteur> auteurs = new List <Auteur>();

            auteurs.Add(auteur);
            Uitgeverij Uitgeverij = generalManager.UitgeverijManager.GetById(4);

            Strip strip1 = new Strip(1, "test1", 1, auteurs, reeks, Uitgeverij);
            Strip strip2 = new Strip(2, "test2", 2, auteurs, reeks, Uitgeverij);
            Strip strip3 = new Strip(3, "test3", 3, auteurs, reeks, Uitgeverij);
            Strip strip4 = new Strip(4, "test4", 4, auteurs, reeks, Uitgeverij);

            generalManager.StripManager.Add(strip1);
            generalManager.StripManager.Add(strip2);
            generalManager.StripManager.Add(strip3);
            generalManager.StripManager.Add(strip4);
        }
Ejemplo n.º 22
0
        //Bereken Round Robin Wedstrijden
        public List <Wedstrijd> CalculateRoundRobinGames(Reeks r)
        {
            #region Initialize
            List <Ploeg>     PloegHulp       = r.Ploegen.ToList();
            List <Wedstrijd> RoundRobinGames = new List <Wedstrijd>();
            int aantalRondes = r.WedstrijdDefinition.AantalRoundRobin;

            int initialN = PloegHulp.Count;
            int n        = PloegHulp.Count;
            //If number of teams is odd ==> odd one dummy team
            if (n % 2 == 1)
            {
                PloegHulp.Add(new Ploeg()
                {
                    Ploegnaam = "Bye"
                });
                n = n + 1;
            }
            int[,] indices          = new int[n / 2, 2];
            Wedstrijd[,] Roundrobin = new Wedstrijd[(n - 1) * aantalRondes, n / 2];
            #endregion

            # region First round
            for (int i = 0; i < n / 2; i++)
Ejemplo n.º 23
0
        static public ReeksDB ConvertToReeksDb(Reeks reeks)
        {
            ReeksDB convertedReeks = new ReeksDB(reeks.ID, reeks.Naam);

            return(convertedReeks);
        }
        static public Reeks ConvertToReeks(ReeksDB reeks)
        {
            Reeks convertedReeks = new Reeks(reeks.ID, reeks.Naam);

            return(convertedReeks);
        }
Ejemplo n.º 25
0
        public void CreateReeksNoId_Empty_Name_ThrowsArgumentException()
        {
            Reeks r;

            Assert.ThrowsException <System.ArgumentException>(() => r = new Reeks(""));
        }
Ejemplo n.º 26
0
 public Wielrenner(string _spelerNaam, int _rugNummer, bool _isVluchter, bool _isInLotto, Reeks _reeks)
 {
     StelIn(_spelerNaam, _rugNummer, _isVluchter, _isInLotto, _reeks);
 }
        private void Button_Aanmaken_Click(object sender, RoutedEventArgs e)
        {
            ExtraInfo_TextBox.Text = "";
            string fouten = "";

            Reeks         reeks1      = new Reeks();
            Uitgeverij    uitgeverij1 = new Uitgeverij();
            List <Auteur> auteurLijst = new List <Auteur>();

            string titel      = TextBox_titel.Text;
            string nr         = TextBox_nr.Text;
            string reeks      = TextBox_reeks.Text;
            string uitgeverij = TextBox_uitgeverij.Text;
            string auteurs    = TextBox_auteurs.Text;

            //Controleren of leeg
            Boolean ietsLeeg = false;

            if (TextBox_auteurs.Text == "" || TextBox_titel.Text == "" || TextBox_nr.Text == "" || TextBox_reeks.Text == "" || TextBox_uitgeverij.Text == "")
            {
                fouten   = fouten + "U heeft iets niet ingevuld.";
                ietsLeeg = true;
                ExtraInfo_TextBox.Text = fouten;
            }

            //  //foutcode eventueel teruggeven
            try
            {
                String[] strlist = auteurs.Split(",", StringSplitOptions.RemoveEmptyEntries);
                reeks1      = new Reeks(reeks);
                uitgeverij1 = new Uitgeverij(uitgeverij);


                foreach (var item in strlist)
                {
                    auteurLijst.Add(new Auteur(item.Trim()));
                }

                Strip newStrip = new Strip(generalManager.StripManager.GetAll().OrderBy(b => b.ID).Last().ID + 1, titel, Convert.ToInt32(nr), auteurLijst, reeks1, uitgeverij1);

                string           messageBoxText = "Wilt u deze strip aanmaken: \n " + newStrip.ToString();
                string           caption        = "Strip Aanmaken?";
                MessageBoxButton button         = MessageBoxButton.YesNo;
                MessageBoxImage  icon           = MessageBoxImage.Question;

                // Display message box
                MessageBoxResult result = MessageBox.Show(messageBoxText, caption, button, icon);


                // Process message box results
                switch (result)
                {
                case MessageBoxResult.Yes:

                    // User pressed Yes button
                    this.DialogResult = true;
                    //try
                    //{
                    generalManager.StripManager.Add(newStrip);
                    //break;
                    //}
                    //catch (Exception ex) {

                    //    messageBoxText = fouten + "\n" + ex.ToString();
                    //     button = MessageBoxButton.OK;
                    //     icon = MessageBoxImage.Information;


                    //    // Display message box
                    //     result = MessageBox.Show(messageBoxText, caption, button, icon);

                    //    // Process message box results
                    //    switch (result)
                    //    {
                    //        case MessageBoxResult.OK:
                    //            // User pressed Yes button
                    //            this.DialogResult = true;

                    //            break;
                    //    }
                    break;
                //}
                //catch (Exception ex)
                //{
                //    throw new Exception(ex.ToString());
                //    break;
                //}



                case MessageBoxResult.No:
                    // User pressed No button
                    // nothing happends
                    break;
                }
            }
            catch (Exception ex) { ExtraInfo_TextBox.Text = fouten + "\n" + ex.ToString(); }
        }
Ejemplo n.º 28
0
        public void Sync()
        {
            // TODO: map all other results of the teams in the division aswell...

            var frenoyTeams = _frenoy.GetClubTeams(new GetClubTeamsRequest
            {
                Club   = _options.FrenoyClub,
                Season = _options.FrenoySeason
            });

            foreach (var frenoyTeam in frenoyTeams.TeamEntries)
            {
                // Create new division=reeks for each team in the club
                // Check if it already exists: Two teams could play in the same division
                Reeks reeks = _db.Reeksen.SingleOrDefault(x => x.FrenoyDivisionId.ToString() == frenoyTeam.DivisionId);
                if (reeks == null)
                {
                    reeks = CreateReeks(frenoyTeam);
                    _db.Reeksen.Add(reeks);
                    CommitChanges();

                    // Create the teams in the new division=reeks
                    var frenoyDivision = _frenoy.GetDivisionRanking(new GetDivisionRankingRequest
                    {
                        DivisionId = frenoyTeam.DivisionId
                    });
                    foreach (var frenoyTeamsInDivision in frenoyDivision.RankingEntries)
                    {
                        var clubPloeg = CreateClubPloeg(reeks, frenoyTeamsInDivision);
                        _db.ClubPloegen.Add(clubPloeg);
                    }
                    CommitChanges();
                }

                // Add Erembodegem players to the home team
                var ploeg = _db.ClubPloegen.Single(x => x.ClubId == _thuisClubId && x.ReeksId == reeks.Id && x.Code == frenoyTeam.Team);
                if (MapTeamPlayers)
                {
                    var players = _options.Players[ploeg.Code];
                    foreach (var playerName in players)
                    {
                        var clubPloegSpeler = new ClubPloegSpeler
                        {
                            Kapitein    = playerName == players.First() ? TeamPlayerType.Captain : TeamPlayerType.Standard,
                            SpelerId    = GetSpelerId(playerName),
                            ClubPloegId = ploeg.Id
                        };
                        _db.ClubPloegSpelers.Add(clubPloegSpeler);
                    }
                    CommitChanges();
                }

                // Create the matches=kalender table in the new  division=reeks
                var matches = _frenoy.GetMatches(new GetMatchesRequest
                {
                    Club                 = _options.FrenoyClub,
                    Season               = _options.FrenoySeason,
                    DivisionId           = reeks.FrenoyDivisionId.ToString(),
                    Team                 = ploeg.Code,
                    WithDetailsSpecified = true,
                    WithDetails          = true,
                });

                foreach (TeamMatchEntryType frenoyMatch in matches.TeamMatchesEntries.Where(x => x.HomeTeam.Trim() != "Vrij" && x.AwayTeam.Trim() != "Vrij"))
                {
                    Debug.Assert(frenoyMatch.DateSpecified);
                    Debug.Assert(frenoyMatch.TimeSpecified);

                    // Kalender entries
                    var kalender = _db.Kalender.SingleOrDefault(x => x.FrenoyMatchId == frenoyMatch.MatchId);
                    if (kalender == null)
                    {
                        kalender = CreateKalenderMatch(reeks, frenoyMatch, ploeg.Code);
                        _db.Kalender.Add(kalender);
                    }

                    // Wedstrijdverslagen
                    if (frenoyMatch.MatchDetails != null && frenoyMatch.MatchDetails.DetailsCreated)
                    {
                        bool isForfeit = frenoyMatch.Score == null || frenoyMatch.Score.ToLowerInvariant().Contains("ff") || frenoyMatch.Score.ToLowerInvariant().Contains("af");

                        var verslag = _db.Verslagen.SingleOrDefault(x => x.KalenderId == kalender.Id);
                        if (verslag == null)
                        {
                            verslag = new Verslag
                            {
                                Kalender           = kalender,
                                KalenderId         = kalender.Id,
                                IsSyncedWithFrenoy = true,
                                SpelerId           = Constants.SuperPlayerId,
                            };
                            if (!isForfeit)
                            {
                                verslag.UitslagThuis = int.Parse(frenoyMatch.Score.Substring(0, frenoyMatch.Score.IndexOf("-")));
                                verslag.UitslagUit   = int.Parse(frenoyMatch.Score.Substring(frenoyMatch.Score.IndexOf("-") + 1));
                                verslag.WO           = 0;
                            }
                            else
                            {
                                verslag.WO = 1;
                            }
                            _db.Verslagen.Add(verslag);
                        }

                        bool deleteExisting = true;
                        if (!isForfeit)
                        {
                            if (deleteExisting)
                            {
                                var oldVerslagSpelers = _db.VerslagenSpelers.Where(x => x.MatchId == verslag.KalenderId).ToArray();
                                _db.VerslagenSpelers.RemoveRange(oldVerslagSpelers);

                                AddVerslagPlayers(frenoyMatch.MatchDetails.HomePlayers.Players, verslag, true);
                                AddVerslagPlayers(frenoyMatch.MatchDetails.AwayPlayers.Players, verslag, false);
                            }

                            var hasIndividualMatches = _db.VerslagenIndividueel.Any(x => x.MatchId == verslag.KalenderId);
                            if (!hasIndividualMatches)
                            {
                                int id = 0;
                                foreach (var frenoyIndividual in frenoyMatch.MatchDetails.IndividualMatchResults)
                                {
                                    var matchResult = new VerslagIndividueel
                                    {
                                        Id                    = id--,
                                        MatchId               = verslag.KalenderId,
                                        MatchNumber           = int.Parse(frenoyIndividual.Position),
                                        HomePlayerUniqueIndex = int.Parse(frenoyIndividual.HomePlayerUniqueIndex),
                                        OutPlayerUniqueIndex  = int.Parse(frenoyIndividual.AwayPlayerUniqueIndex),
                                        WalkOver              = WalkOver.None
                                    };
                                    if (frenoyIndividual.IsHomeForfeited || frenoyIndividual.IsAwayForfeited)
                                    {
                                        matchResult.WalkOver = frenoyIndividual.IsHomeForfeited ? WalkOver.Home : WalkOver.Out;
                                    }
                                    else
                                    {
                                        matchResult.HomePlayerSets = int.Parse(frenoyIndividual.HomeSetCount);
                                        matchResult.OutPlayerSets  = int.Parse(frenoyIndividual.AwaySetCount);
                                    }
                                    _db.VerslagenIndividueel.Add(matchResult);
                                }
                            }
                        }
                    }
                    CommitChanges();
                }
            }
        }
Ejemplo n.º 29
0
 private ClubPloeg CreateClubPloeg(Reeks reeks, RankingEntryType frenoyTeam)
 {
     var clubPloeg = new ClubPloeg();
     clubPloeg.ReeksId = reeks.Id;
     clubPloeg.ClubId = GetClubId(frenoyTeam.TeamClub);
     clubPloeg.Code = ExtractTeamCodeFromFrenoyName(frenoyTeam.Team);
     return clubPloeg;
 }
Ejemplo n.º 30
0
        private Reeks CreateReeks(TeamEntryType frenoyTeam)
        {
            var reeks = new Reeks();
            reeks.Competitie = _options.Competitie;
            reeks.ReeksType = _options.ReeksType;
            reeks.Jaar = _options.Jaar;
            reeks.LinkId = $"{frenoyTeam.DivisionId}_{frenoyTeam.Team}";

            if (_isVttl)
            {
                var reeksMatch = VttlReeksRegex.Match(frenoyTeam.DivisionName);
                reeks.ReeksNummer = reeksMatch.Groups[1].Value;
                reeks.ReeksCode = reeksMatch.Groups[2].Value;
            }
            else
            {
                var reeksMatch = SportaReeksRegex.Match(frenoyTeam.DivisionName.Trim());
                reeks.ReeksNummer = reeksMatch.Groups[1].Value;
                reeks.ReeksCode = reeksMatch.Groups[2].Value;
            }

            reeks.FrenoyDivisionId = int.Parse(frenoyTeam.DivisionId);
            reeks.FrenoyTeamId = frenoyTeam.TeamId;
            return reeks;
        }
Ejemplo n.º 31
0
        private Kalender CreateKalenderMatch(Reeks reeks, TeamMatchEntryType frenoyMatch, string thuisPloegCode)
        {
            var kalender = new Kalender
            {
                FrenoyMatchId = frenoyMatch.MatchId,
                Datum = frenoyMatch.Date,
                Uur = new TimeSpan(frenoyMatch.Time.Hour, 0, 0),
                ThuisClubId = GetClubId(frenoyMatch.HomeClub),
                ThuisPloeg = ExtractTeamCodeFromFrenoyName(frenoyMatch.HomeTeam),
                UitClubId = GetClubId(frenoyMatch.AwayClub),
                UitPloeg = ExtractTeamCodeFromFrenoyName(frenoyMatch.AwayTeam),
                Week = int.Parse(frenoyMatch.WeekName)
            };

            kalender.ThuisClubPloegId = GetClubPloegId(reeks.Id, kalender.ThuisClubId.Value, kalender.ThuisPloeg);
            kalender.UitClubPloegId = GetClubPloegId(reeks.Id, kalender.UitClubId.Value, kalender.UitPloeg);

            // In the db the ThuisClubId is always Erembodegem
            kalender.Thuis = kalender.ThuisClubId == _thuisClubId && kalender.ThuisPloeg == thuisPloegCode ? 1 : 0;
            if (kalender.Thuis == 0)
            {
                var thuisClubId = kalender.ThuisClubId;
                var thuisPloeg = kalender.ThuisPloeg;
                var thuisClubPloegId = kalender.ThuisClubPloegId;

                kalender.ThuisClubId = kalender.UitClubId;
                kalender.ThuisPloeg = kalender.UitPloeg;
                kalender.ThuisClubPloegId = kalender.UitClubPloegId;

                kalender.UitClubId = thuisClubId;
                kalender.UitPloeg = thuisPloeg;
                kalender.UitClubPloegId = thuisClubPloegId;
            }
            return kalender;
        }