ChessSharp.Web.Controllers.ChallengeController.RespondToChallenge C# (CSharp) Method

RespondToChallenge() private method

private RespondToChallenge ( long challengeId, bool accepted ) : void
challengeId long
accepted bool
return void
        private void RespondToChallenge(long challengeId, bool accepted)
        {
            var challenge = UnitOfWork.Find<Challenge>(challengeId);

            if (accepted)
            {
                var board = new Board();
                var squares = board.Squares.SelectMany(s => s);

                var game = new Game
                {
                    DarkPlayer = challenge.DarkPlayer,
                    LightPlayer = challenge.LightPlayer,
                    Name = challenge.Title,
                    Challenge = challenge,
                };

                foreach (var square in squares)
                {
                    square.Game = game;
                    square.ChessPiece = (ChessPiece) square.ChessPiece; //TODO: Why did I do this?
                    UnitOfWork.Add(square);
                }

                UnitOfWork.Add(game);
            }

            challenge.Accepted = accepted;
            UnitOfWork.Commit();
        }