コード例 #1
0
        public RoundViewModel(TableHockeyContestRound i_round)
        {
            this.ContestId        = i_round.ContestId;
            this.RoundNumber      = i_round.RoundNumber;
            this.isFirstRound     = i_round.isFirstRound;
            this.isFinalRound     = i_round.isFinalRound;
            this.RoundDescription = Convert.ToString(i_round.RoundNumber);
            this.ContestRoundId   = i_round.TableHockeyContestRoundId;
            m_vmGames             = new List <GameViewModel>();
            m_vmFirstGame         = new List <GameViewModel>();
            int i = 0;

            foreach (TableHockeyGame m_game in i_round.TableHockeyGame)
            {
                if ((m_game.HomePlayerId > 0) && (m_game.AwayPlayerId > 0))
                {
                    GameViewModel m_gamevm = new GameViewModel(m_game);
                    m_vmGames.Add(m_gamevm);
                    if (i == 0)
                    {
                        GameViewModel m_gameVmSingle = new GameViewModel(m_game);
                        m_gameVmSingle.AwayPlayerScore = 0;
                        m_gameVmSingle.HomePlayerScore = 0;
                        m_gameVmSingle.ContestId       = this.ContestId;
                        m_gameVmSingle.RoundNumber     = this.RoundNumber;
                        m_vmFirstGame.Add(m_gameVmSingle);
                        i++;
                    }
                }
            }
        }
コード例 #2
0
        protected void ResultsRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                PlaceHolder PlaceHolder1 = (PlaceHolder)e.Item.FindControl("PlaceHolder1");

                // declare/obtain the value of i given the DataItem
                // e.g.,
                TableHockeyContestRound m_round = (TableHockeyContestRound)e.Item.DataItem;
                for (int m_nCurrentTableNumber = 1; m_nCurrentTableNumber <= m_nMaxNumberOfConcurrentGames; m_nCurrentTableNumber++)
                {
                    List <TableHockeyGame> m_gamesOnCurrentTable = m_round.TableHockeyGame.Where(g => g.TableNumber == m_nCurrentTableNumber).ToList();
                    if (m_gamesOnCurrentTable.Count > 0)
                    {
                        TableHockeyContestRound m_roundGame = new TableHockeyContestRound();
                        Mapper.Map(m_round, m_roundGame);
                        m_roundGame.TableHockeyGame = m_gamesOnCurrentTable;
                        uc.ucEndGameSeries uc = (uc.ucEndGameSeries)LoadControl("~/uc/ucEndGameSeries.ascx");
                        uc.InitControl(m_roundGame);
                        uc.m_nTableNumber = m_nCurrentTableNumber;
                        PlaceHolder1.Controls.Add(uc);
                    }
                }
            }
        }
コード例 #3
0
        protected void RoundRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                PlaceHolder PlaceHolder2 = (PlaceHolder)e.Item.FindControl("PlaceHolder2");

                // declare/obtain the value of i given the DataItem
                // e.g.,
                TableHockeyContestRound      m_round = (TableHockeyContestRound)e.Item.DataItem;
                List <uc.ucViewContestRound> m_ucRoundList;
                if (Session["pgContestSummary.ucRoundList"] != null)
                {
                    m_ucRoundList = (List <uc.ucViewContestRound>)Session["pgContestSummary.ucRoundList"];
                }
                else
                {
                    m_ucRoundList = new List <uc.ucViewContestRound>();
                }

                uc.ucViewContestRound uc = (uc.ucViewContestRound)LoadControl("~/uc/ucViewContestRound.ascx");
                uc.InitControl(m_round);
                m_ucRoundList.Add(uc);
                Session["pgContestSummary.ucRoundList"] = m_ucRoundList;
                if (m_round.isFinalRound)
                {
                    foreach (uc.ucViewContestRound m_uc in m_ucRoundList)
                    {
                        PlaceHolder2.Controls.Add(m_uc);
                    }
                    string m_sRoundHtml = GetSummary(divUcContestRoundPlaceHolder);
                    Session["pgContestSummary.roundHTML"] = m_sRoundHtml;
                }
            }
        }
コード例 #4
0
        public void InitControl(TableHockeyContestRound i_TableHockeyRound)
        {
            if (i_TableHockeyRound != null)
            {
                m_round = i_TableHockeyRound;
                Session["ucEndGameSeries.m_round"] = m_round;
            }

            m_vmRound = new RoundViewModel(m_round);
            DataShow(m_vmRound);
        }
コード例 #5
0
        private bool ValidateEnteredEndGames(List <TableHockeyContestRound> m_enteredRounds, out Dictionary <int, int> m_dictPlayersToNextRound)
        {
            int m_nGamesPerRound = m_currentContest.numberOfRounds;

            m_nContestId = m_currentContest.ContestId;
            //Get round for current round number.
            TableHockeyContestRound m_currentRound = m_enteredRounds.Where(g => g.RoundNumber == m_nCurrentRoundNumber).FirstOrDefault();

            //If everything validates, save results to database and display next round.
            m_dictPlayersToNextRound = TableHockeyContestHandler.getPlayersToNextRound(m_currentRound, m_nGamesPerRound);
            int m_nPlayersToNextRound = m_enteredRounds[0].TableHockeyGame.Count / m_nGamesPerRound;

            return(m_dictPlayersToNextRound.Count == m_nPlayersToNextRound);
        }
コード例 #6
0
        public void  InitControl(TableHockeyContestRound i_TableHockeyRound)
        {
            if (i_TableHockeyRound != null)
            {
                m_round = i_TableHockeyRound;
                Session["ucContestRound.m_round"] = m_round;
            }

            m_vmRound = new RoundViewModel(m_round);
            this.GridViewContestRoundGames.DataSource = m_vmRound.m_vmGames;
            this.GridViewContestRoundGames.DataBind();
            Session["ucContestRound.m_vmround"] = m_vmRound;
            m_games = m_vmRound.m_vmGames;
            setUCGUI();
        }
コード例 #7
0
        public List <TableHockeyContestRound> getTableHockeyContestRoundList(int i_nContestId, int i_nNumberOfRounds, bool i_bIsEndGameRound = false)
        {
            List <TableHockeyContestRound> m_lstTableHockeyContestRound = new List <TableHockeyContestRound>();

            for (int i = 0; i < i_nNumberOfRounds; i++)
            {
                TableHockeyContestRound m_currentRound = new TableHockeyContestRound();
                m_currentRound.ContestId      = i_nContestId;
                m_currentRound.RoundNumber    = i + 1;
                m_currentRound.isFirstRound   = (i == 0);
                m_currentRound.isFinalRound   = ((i + 1) == i_nNumberOfRounds);
                m_currentRound.isEndGameRound = i_bIsEndGameRound;
                m_lstTableHockeyContestRound.Add(m_currentRound);
            }
            return(m_lstTableHockeyContestRound);
        }
コード例 #8
0
        private bool displayCurrentRound(int i_nContestId, int i_nCurrentRoundNumber)
        {
            //Populate contest round uc.  Get data for current round.
            bool isFinalRound = false;

            List <TableHockeyContestRound> m_rounds;

            using (var context = new TableHockeyData.UHSSWEB_DEVEntities())
            {
                if (Session["pgEditContestTableEndGame.m_rounds"] == null)
                {
                    m_rounds = (from r in context.TableHockeyContestRound
                                where ((r.ContestId == i_nContestId) && (r.RoundNumber == i_nCurrentRoundNumber))
                                select r).ToList();
                    Session["pgEditContestTableEndGame.m_rounds"] = m_rounds;
                }
                else
                {
                    m_rounds = (List <TableHockeyContestRound>)Session["pgEditContestTableEndGame.m_rounds"];
                }

                //Get entered results from uc and update games for table number.

                if (Session["ucEndGameSeries.m_round"] != null)
                {
                    TableHockeyContestRound m_enteredRound = (TableHockeyContestRound)Session["ucEndGameSeries.m_round"];
                    int m_nEnteredTableNumber = m_enteredRound.TableHockeyGame.FirstOrDefault().TableNumber;
                    var m_gamesOnCurrentTable = m_enteredRound.TableHockeyGame.Where(g => g.TableNumber == m_nEnteredTableNumber);
                    Mapper.Map(m_gamesOnCurrentTable, m_rounds[0].TableHockeyGame.Where(g => g.TableNumber == m_nEnteredTableNumber));
                    Session["ucEndGameSeries.m_round"] = m_rounds[0];
                }

                this.ResultsRepeater.DataSource = m_rounds;
                this.ResultsRepeater.DataBind();

                this.divPreviousRound.Visible = (!m_rounds[0].isFirstRound);
                isFinalRound = m_rounds[0].isFinalRound;
                this.divNextRound.Visible    = (!isFinalRound);
                this.divSave.Visible         = isFinalRound;
                m_sContestRoundPlaceholder   = "Contest round [ROUND]"; //TODO:  Config setting!
                this.LabelContestHeader.Text = m_sContestRoundPlaceholder.Replace("[ROUND]", Convert.ToString(m_nCurrentRoundNumber));
                return(isFinalRound);
            }
        }
コード例 #9
0
        private bool displayCurrentRound(int i_nContestId, int i_nCurrentRoundNumber)
        {
            //Populate contest round uc.  Get data for current round.
            bool isFinalRound = false;

            using (var context = new TableHockeyData.UHSSWEB_DEVEntities())
            {
                TableHockeyContestRound m_round = context.TableHockeyContestRound.FirstOrDefault(r => (r.ContestId == i_nContestId) && (r.RoundNumber == i_nCurrentRoundNumber));
                this.ucContestRound1.InitControl(m_round);
                this.divPreviousRound.Visible = (!m_round.isFirstRound);
                isFinalRound = m_round.isFinalRound;
                this.divNextRound.Visible    = (!isFinalRound);
                this.divSave.Visible         = isFinalRound;
                this.divEndGame.Visible      = isFinalRound;
                m_sContestRoundPlaceholder   = "Contest round [ROUND]"; //TODO:  Config setting!
                this.LabelContestHeader.Text = m_sContestRoundPlaceholder.Replace("[ROUND]", Convert.ToString(m_nCurrentRoundNumber));
            }
            return(isFinalRound);
        }
コード例 #10
0
        public static Dictionary <int, int> getPlayersToNextRound(TableHockeyContestRound i_enteredRound, int i_nGamesPerSeries)
        {
            int m_nNumberOfGamesToWinSeries = Convert.ToInt32((1 + i_nGamesPerSeries) / 2.0);
            Dictionary <int, int> m_dictPlayersToNextRound = new Dictionary <int, int>();

            if (i_enteredRound.TableHockeyGame.Count > 0)
            {
                for (int m_nTableNumber = 1; m_nTableNumber <= PageUtility.m_nMaxNumberOfConcurrentGames; m_nTableNumber++)
                {
                    int m_nHomeWon      = 0;
                    int m_nAwayWon      = 0;
                    var m_gamesForTable = i_enteredRound.TableHockeyGame.Where(g => g.TableNumber == m_nTableNumber);
                    foreach (TableHockeyGame m_game in m_gamesForTable)
                    {
                        if ((m_game.AwayPlayerScore >= 0) && (m_game.HomePlayerScore >= 0))
                        {
                            if (m_game.AwayPlayerScore > m_game.HomePlayerScore)
                            {
                                m_nAwayWon++;
                            }
                            if (m_game.HomePlayerScore > m_game.AwayPlayerScore)
                            {
                                m_nHomeWon++;
                            }
                        }
                    }
                    TableHockeyGame m_firstGame = m_gamesForTable.FirstOrDefault();
                    if (m_nAwayWon == m_nNumberOfGamesToWinSeries)
                    {
                        m_dictPlayersToNextRound.Add(m_firstGame.TableNumber, m_firstGame.AwayPlayerId);
                    }
                    if (m_nHomeWon == m_nNumberOfGamesToWinSeries)
                    {
                        m_dictPlayersToNextRound.Add(m_firstGame.TableNumber, m_firstGame.HomePlayerId);
                    }
                }
            }
            return(m_dictPlayersToNextRound);
        }
コード例 #11
0
        private List <TableHockeyGame> getTableHockeyEndGameListForCurrentRound(TableHockeyContest i_contest, List <TableHockeyContestPlayer> i_contestPlayers)
        {
            //Get game list for end game. Always add full number of possible games per round. If a match series ends prematurely, games are returned as "scoreless".
            using (var context = new TableHockeyData.UHSSWEB_DEVEntities())
            {
                var roundsQuery = from r in context.TableHockeyContestRound
                                  where r.ContestId == i_contest.ContestId
                                  select r;

                List <TableHockeyContestRound> m_lstTableHockeyRounds = (List <TableHockeyContestRound>)roundsQuery.ToList();
                List <TableHockeyGame>         m_lstTableHockeyGames  = new List <TableHockeyGame>();

                int      m_nGamesPerRound = i_contest.numberOfRounds;
                DateTime m_dStartDate     = DateTime.Now;

                //Create game list for current round.

                TableHockeyContestRound m_round = m_lstTableHockeyRounds[m_queueHandler.m_nCurrentRoundNumber - 1];
                for (int k = 0; k < m_queueHandler.m_dictGamePlayersPerRound[m_queueHandler.m_nCurrentRoundNumber - 1].Count; k += 2)
                {
                    for (int i = 0; i < m_nGamesPerRound; i++)
                    {
                        TableHockeyGame m_currentGame = new TableHockeyGame();
                        m_currentGame.ContestId                 = i_contest.ContestId;
                        m_currentGame.GameStartDate             = m_dStartDate;
                        m_currentGame.isFinalGame               = i_contest.isFinalGameContest;
                        m_currentGame.TableNumber               = (int)(k / 2.0) + 1;
                        m_currentGame.TableHockeyContestRoundId = m_round.TableHockeyContestRoundId;
                        m_currentGame.HomePlayerId              = m_queueHandler.m_dictGamePlayersPerRound[m_queueHandler.m_nCurrentRoundNumber - 1].ElementAt(k).Key;
                        m_currentGame.AwayPlayerId              = m_queueHandler.m_dictGamePlayersPerRound[m_queueHandler.m_nCurrentRoundNumber - 1].ElementAt(k + 1).Key;
                        m_currentGame.IdlePlayerId              = -1;
                        m_lstTableHockeyGames.Add(m_currentGame);
                    }
                }
                return(m_lstTableHockeyGames);
            }
        }
コード例 #12
0
        public void getUCGUI()
        {
            //Update if any changed players.
            bool m_bHasChanges = (bool)Session["ucEndGameSeries.hasChanges"];

            if (m_bHasChanges)
            {
                m_vmRound = (RoundViewModel)Session["ucEndGameSeries.m_vmround"];
                m_round   = (TableHockeyContestRound)Session["ucEndGameSeries.m_round"];
            }

            int m_nNumberOfGamesWonHome = 0;
            int m_nNumberOfGamesWonAway = 0;

            for (int iCount = 0; iCount < this.GridViewEndGames.Rows.Count; iCount++)
            {
                TextBox  currentHomeScore      = (TextBox)this.GridViewEndGames.Rows[iCount].FindControl("TextBoxHomePlayerScore");
                TextBox  currentAwayScore      = (TextBox)this.GridViewEndGames.Rows[iCount].FindControl("TextBoxAwayPlayerScore");
                CheckBox currentHasSuddenDeath = (CheckBox)this.GridViewEndGames.Rows[iCount].FindControl("CheckBoxSuddenDeath");
                int      m_nCurrentGameId      = Convert.ToInt32(this.GridViewEndGames.Rows[iCount].Cells[0].Text);
                var      m_currentVmGame       = m_vmRound.m_vmGames.Find(g => g.GameId == m_nCurrentGameId);
                var      m_currentGame         = m_round.TableHockeyGame.FirstOrDefault(g => g.GameId == m_nCurrentGameId);
                int      m_nHomeScore          = -1;
                bool     m_bParseHomeScoreOk   = int.TryParse(currentHomeScore.Text, out m_nHomeScore);
                if (!m_bParseHomeScoreOk)
                {
                    m_nHomeScore = -1;
                }
                if (m_bParseHomeScoreOk || (currentHomeScore.Text.Trim().Equals("")))
                {
                    if (m_currentVmGame != null)
                    {
                        m_currentVmGame.HomePlayerScore = m_nHomeScore;
                        m_currentVmGame.hasSuddenDeath  = currentHasSuddenDeath.Checked;
                    }
                    if (m_currentGame != null)
                    {
                        m_currentGame.HomePlayerScore      = m_nHomeScore;
                        m_currentGame.hasSuddenDeath       = currentHasSuddenDeath.Checked;
                        Session["ucEndGameSeries.m_round"] = m_round;
                    }
                }

                int  m_nAwayScore        = -1;
                bool m_bParseAwayScoreOk = int.TryParse(currentAwayScore.Text, out m_nAwayScore);
                if (!m_bParseAwayScoreOk)
                {
                    m_nAwayScore = -1;
                }
                if (m_bParseAwayScoreOk || (currentAwayScore.Text.Trim().Equals("")))
                {
                    if (m_currentVmGame != null)
                    {
                        m_currentVmGame.AwayPlayerScore = m_nAwayScore;
                        m_currentVmGame.hasSuddenDeath  = currentHasSuddenDeath.Checked;
                    }
                    if (m_currentGame != null)
                    {
                        m_currentGame.AwayPlayerScore      = m_nAwayScore;
                        m_currentGame.hasSuddenDeath       = currentHasSuddenDeath.Checked;
                        Session["ucEndGameSeries.m_round"] = m_round;
                    }
                }

                if ((m_bParseAwayScoreOk) && (m_nHomeScore >= 0) && (m_nAwayScore >= 0))
                {
                    if (m_nHomeScore > m_nAwayScore)
                    {
                        m_nNumberOfGamesWonHome++;
                    }
                    if (m_nAwayScore > m_nHomeScore)
                    {
                        m_nNumberOfGamesWonAway++;
                    }
                }
            }
            //Set overall game standings.
            m_vmRound.m_vmFirstGame[0].HomePlayerScore = m_nNumberOfGamesWonHome;
            m_vmRound.m_vmFirstGame[0].AwayPlayerScore = m_nNumberOfGamesWonAway;
        }
コード例 #13
0
        protected void ResultsRepeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                PlaceHolder PlaceHolder1 = (PlaceHolder)e.Item.FindControl("PlaceHolder1");

                // declare/obtain the value of i given the DataItem
                // e.g.,
                TableHockeyContestRound m_round = (TableHockeyContestRound)e.Item.DataItem;
                Dictionary <int, uc.ucViewEndGameSeries> m_ucList;
                if (Session["pgContestSummary.ucList"] != null)
                {
                    m_ucList = (Dictionary <int, uc.ucViewEndGameSeries>)Session["pgContestSummary.ucList"];
                }
                else
                {
                    m_ucList = new Dictionary <int, uc.ucViewEndGameSeries>();
                }

                for (int m_nCurrentTableNumber = 1; m_nCurrentTableNumber <= m_nMaxNumberOfConcurrentGames; m_nCurrentTableNumber++)
                {
                    List <TableHockeyGame> m_gamesOnCurrentTable = m_round.TableHockeyGame.Where(g => g.TableNumber == m_nCurrentTableNumber).ToList();
                    if (m_gamesOnCurrentTable.Count > 0)
                    {
                        TableHockeyContestRound m_roundGame = new TableHockeyContestRound();
                        Mapper.Map(m_round, m_roundGame);
                        m_roundGame.TableHockeyGame = m_gamesOnCurrentTable;
                        uc.ucViewEndGameSeries uc = (uc.ucViewEndGameSeries)LoadControl("~/uc/ucViewEndGameSeries.ascx");
                        uc.InitControl(m_roundGame, 25 * (m_round.RoundNumber - 1));
                        uc.m_nTableNumber = m_nCurrentTableNumber;
                        int m_nNumberOfRounds = Convert.ToInt32(Session["pgContestSummary.m_nNumberOfRounds"]);
                        //Get qualifying players from current round.
                        Dictionary <int, int> m_playersToNextRound = TableHockeyContestHandler.getPlayersToNextRound(m_round, m_gamesOnCurrentTable.Count);
                        if (m_playersToNextRound.Count > 0)
                        {
                            //Get qualifying player for current table number.
                            int m_nQualifyingPlayerForCurrentTableNumber = m_playersToNextRound[m_nCurrentTableNumber];
                            if (m_round.isFinalRound)
                            {
                                m_ucList.Add(8, uc);
                                Session["pgContestSummary.ucList"] = m_ucList;
                            }
                            if (m_round.RoundNumber == (m_nNumberOfRounds - 1))
                            {
                                //Get previous round.
                                TableHockeyContestRound m_prevRound = (TableHockeyContestRound)Session["pgContestSummary.previousRound"];
                                //Match qualifying player id with either home or away player.
                                if ((m_nCurrentTableNumber == 1) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(4, uc);
                                }
                                if ((m_nCurrentTableNumber == 2) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(12, uc);
                                }
                                //TODO: Analogt för följande omgångar. Traversera över m_playersToNextRound
                                Session["pgContestSummary.ucList"] = m_ucList;
                            }
                            if (m_round.RoundNumber == (m_nNumberOfRounds - 2))
                            {
                                //Get previous round.
                                TableHockeyContestRound m_prevRound = (TableHockeyContestRound)Session["pgContestSummary.previousRound"];
                                List <TableHockeyGame>  m_prevGamesOnCurrentTable = m_prevRound.TableHockeyGame.Where(g => g.TableNumber == m_nCurrentTableNumber).ToList();
                                if ((m_nCurrentTableNumber == 1) &&
                                    ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).AwayPlayerId)))
                                {
                                    m_ucList.Add(2, uc);
                                }
                                if ((m_nCurrentTableNumber == 2) &&
                                    ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).AwayPlayerId)))
                                {
                                    m_ucList.Add(6, uc);
                                }
                                if ((m_nCurrentTableNumber == 3) &&
                                    ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).AwayPlayerId)))
                                {
                                    m_ucList.Add(10, uc);
                                }
                                if ((m_nCurrentTableNumber == 4) &&
                                    ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(m_gamesOnCurrentTable.Count).AwayPlayerId)))
                                {
                                    m_ucList.Add(14, uc);
                                }
                                Session["pgContestSummary.ucList"] = m_ucList;
                            }
                            if (m_round.RoundNumber == (m_nNumberOfRounds - 3))
                            {
                                //Get previous round.
                                //TODO:  Fixa för åttondel analogt med kvartsfinal ovan! Gnetigt men det går! 2013-07-23.
                                TableHockeyContestRound m_prevRound = (TableHockeyContestRound)Session["pgContestSummary.previousRound"];
                                List <TableHockeyGame>  m_prevGamesOnCurrentTable = m_prevRound.TableHockeyGame.Where(g => g.TableNumber == m_nCurrentTableNumber).ToList();
                                if ((m_nCurrentTableNumber == 1) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(1, uc);
                                }
                                if ((m_nCurrentTableNumber == 2) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(3, uc);
                                }
                                if ((m_nCurrentTableNumber == 3) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(5, uc);
                                }
                                if ((m_nCurrentTableNumber == 4) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(7, uc);
                                }
                                if ((m_nCurrentTableNumber == 5) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(9, uc);
                                }
                                if ((m_nCurrentTableNumber == 6) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(11, uc);
                                }
                                if ((m_nCurrentTableNumber == 7) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(13, uc);
                                }
                                if ((m_nCurrentTableNumber == 8) && ((m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).HomePlayerId) || (m_nQualifyingPlayerForCurrentTableNumber == m_prevRound.TableHockeyGame.ElementAt(0).AwayPlayerId)))
                                {
                                    m_ucList.Add(15, uc);
                                }
                                Session["pgContestSummary.ucList"] = m_ucList;
                            }
                        }
                    }
                }
                Session["pgContestSummary.previousRound"] = m_round;
                if (m_round.isFirstRound)
                {
                    for (int iCount = 1; iCount < 15; iCount++)
                    {
                        uc.ucViewEndGameSeries m_uc;
                        if (m_ucList.ContainsKey(iCount))
                        {
                            m_uc = m_ucList[iCount];
                            PlaceHolder1.Controls.Add(m_uc);
                        }
                    }
                    string m_sEndGameHtml = GetSummary(divUcEndGamePlaceHolder);
                    Session["pgContestSummary.endGameHTML"] = m_sEndGameHtml;
                }
            }
        }