예제 #1
0
        public async Task <IActionResult> UpdateMatch([Bind("IdTournament, RoundNumber, IdPlayer1, IdPlayer2, Parties")]
                                                      Match match)
        {
            if (match.IdTournament == 0 || !int.TryParse(HttpContext.Session.GetString("UserId"), out int IdUser) || (match.IdPlayer1 != IdUser && match.IdPlayer2 != IdUser))
            {
                return(NotFound());
            }

            var Parties    = match.Parties;
            var retourApis = new List <RetourAPI>();

            foreach (var p in Parties)
            {
                p.IdTournament = match.IdTournament;
                p.RoundNumber  = match.RoundNumber;
                p.IdPlayer1    = match.IdPlayer1;
                p.IdPlayer2    = match.IdPlayer2;
                if (p.ResultPart != null)
                {
                    retourApis.Add(await CallAPI.CreatePartie(p));
                }
            }

            string error = null;

            if (retourApis.Count > 0 && retourApis.All(r => r.Succes))
            {
                error = "Vérifier que les resulta entré sont correcte!";
            }
            return(RedirectToAction("UpdateMatch", new{ idT = match.IdTournament, rn = match.RoundNumber, idP1 = match.IdPlayer1, error }));
        }