Example #1
0
        public async Task <IActionResult> Pairing(int id, int round)
        {
            var temp = await CallAPI.GetTournoi(id);

            if (temp.Item1)
            {
                return(NotFound());
            }

            Tournoi tournoi = temp.Item2;

            if (tournoi.Over)
            {
                return(NotFound());
            }

            RetourAPI retour = await CallAPI.PairingRound(new Round { IdTournament = id, RoundNumber = round });

            if (!retour.Succes)
            {
                //
            }

            return(RedirectToAction("Tournoi", new { id = id }));
        }
Example #2
0
        public async Task <IActionResult> AddGamePseudoSend([Bind("IdUser, PseudoIgs")] Utilisateur utilisateur)
        {
            if (!int.TryParse(HttpContext.Session.GetString("UserId"), out int SessionId) || SessionId != utilisateur.IdUser)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                using (var httpClient = new HttpClient())
                {
                    using (var response = await httpClient.PostAsJsonAsync("https://localhost:44321/Procedure/UpdateUserIgPseudo", utilisateur))
                    {
                        string apiResponse = await response.Content.ReadAsStringAsync();

                        RetourAPI retourApi = JsonConvert.DeserializeObject <RetourAPI>(apiResponse);
                        if (retourApi.Succes)
                        {
                            return(RedirectToAction("Details", new{ id = utilisateur.IdUser }));
                        }
                    }
                }
            }

            ViewData["Title"] = "Ajouter des pseudos de jeu";
            return(View("~/Views/User/AddGamePseudo.cshtml", utilisateur));
        }
Example #3
0
        public async Task <IActionResult> Edit(int id, [Bind("IdUser,Pseudo,Email,Password,OldPassword,Organizer,Deleted")]
                                               Utilisateur utilisateur)
        {
            if (!int.TryParse(HttpContext.Session.GetString("UserId"), out int SessionId) || id != utilisateur.IdUser || SessionId != utilisateur.IdUser)
            {
                return(NotFound());
            }


            if (ModelState.IsValid)
            {
                using (var httpClient = new HttpClient())
                {
                    using (var response = await httpClient.PostAsJsonAsync("https://localhost:44321/Procedure/EditUser", utilisateur))
                    {
                        string apiResponse = await response.Content.ReadAsStringAsync();

                        RetourAPI retourApi = JsonConvert.DeserializeObject <RetourAPI>(apiResponse);
                        if (retourApi.Succes)
                        {
                            HttpContext.Session.SetString("UserId", utilisateur.IdUser.ToString());
                            HttpContext.Session.SetString("User", utilisateur.Pseudo);
                            HttpContext.Session.SetString("Orga", utilisateur.Organizer.ToString());
                            return(RedirectToAction("Details", new { id = utilisateur.IdUser }));
                        }
                    }
                }
            }

            ViewData["Title"]   = "Modifier votre profil";
            ViewData["Message"] = (utilisateur == null) ? "" : utilisateur.Pseudo ?? "";
            return(View("~/Views/User/UpdateProfil.cshtml", utilisateur));
        }
Example #4
0
        public async Task <IActionResult> Register([Bind("Deck, IdTournament")] Joueur joueur)
        {
            if (joueur.IdTournament < 1 || !int.TryParse(HttpContext.Session.GetString("UserId"), out int IdUser))
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                joueur.User.IdUser = IdUser;


                RetourAPI retourApi = await CallAPI.RegisterTournoi(joueur);

                if (retourApi.Succes)
                {
                    return(RedirectToAction("Details", "Tournois", new{ id = joueur.IdTournament }));
                }

                ViewBag.error = retourApi.Message;
            }

            var temp = await CallAPI.GetTournoi(joueur.IdTournament);

            if (temp.Item1)
            {
                return(NotFound());
            }

            Tournoi tournoi = temp.Item2;

            ViewBag.NbDeck    = tournoi.DeckListNumber;
            ViewData["Title"] = "S'inscire pour " + tournoi.Name;
            return(View("~/Views/Tournoi/Register.cshtml", joueur));
        }
Example #5
0
        public async Task <IActionResult> EndRound(int id, int round)
        {
            var temp = await CallAPI.GetTournoi(id);

            if (temp.Item1)
            {
                return(NotFound());
            }

            Tournoi tournoi = temp.Item2;

            if (tournoi.Over)
            {
                return(NotFound());
            }

            RetourAPI retour = await CallAPI.EndRound(id, round);

            if (!retour.Succes)
            {
                //
            }

            return(RedirectToAction("Tournoi", new { id = id }));
        }
Example #6
0
        public async Task <IActionResult> EndTournoi(Tournoi tournoi)
        {
            if (tournoi == null || tournoi.IdTournament < 1 || tournoi.Deleted != null)
            {
                return(NotFound());
            }

            if (tournoi.Deleted != null)
            {
                return(NotFound());
            }

            if (tournoi.Over)
            {
                return(NotFound());
            }

            RetourAPI retour = await CallAPI.EndTournoi(tournoi);

            if (retour.Succes)
            {
                return(RedirectToAction("Details", "Tournois", new { id = tournoi.IdTournament }));
            }

            return(RedirectToAction("EndTournoi", new { id = tournoi.IdTournament }));
        }
Example #7
0
        public async Task <IActionResult> CreateNextRound(int id, int round)
        {
            var temp = await CallAPI.GetTournoi(id);

            if (temp.Item1)
            {
                return(NotFound());
            }

            Tournoi tournoi = temp.Item2;

            if (tournoi.Over)
            {
                return(NotFound());
            }

            RetourAPI retour = await CallAPI.CreateRound(new Round { IdTournament = id, RoundNumber = (round + 1), StartRound = DateTime.UtcNow });

            if (!retour.Succes)
            {
                //
            }

            return(RedirectToAction("Tournoi", new { id = id }));
        }
Example #8
0
        public async Task <IActionResult> DeleteConfirmed(int id)
        {
            using (var httpClient = new HttpClient())
            {
                RetourAPI retourApi = await CallAPI.DeleteTournoi(id);

                if (retourApi.Succes)
                {
                    return(RedirectToAction(nameof(Index)));
                }

                return(RedirectToAction(nameof(Delete), id));
            }
        }
Example #9
0
        public async Task <IActionResult> Create([Bind("IdUser,Pseudo,Email,Password,Organizer,Deleted")]
                                                 Utilisateur user)
        {
            if (ModelState.IsValid)
            {
                RetourAPI retourApi = await CallAPI.InsertUser(user);

                if (retourApi.Succes)
                {
                    ViewData["Title"] = "Merci de vous ĂȘtes inscrit";

                    return(View("~/Views/User/InscriptionReussie.cshtml"));
                }

                ViewBag.error = retourApi.Message;
            }

            ViewData["Title"] = "S'inscrire";
            return(View("~/Views/User/Inscription.cshtml", user));
        }
Example #10
0
        public async Task <IActionResult> DeleteConfirmed([Bind("IdUser,Password")] Utilisateur utilisateur)
        {
            using (var httpClient = new HttpClient())
            {
                using (var response = await httpClient.PostAsJsonAsync("https://localhost:44321/Procedure/DeleteUser", utilisateur))
                {
                    string apiResponse = await response.Content.ReadAsStringAsync();

                    RetourAPI retourApi = JsonConvert.DeserializeObject <RetourAPI>(apiResponse);
                    if (retourApi.Succes)
                    {
                        return(RedirectToAction("Delete", new { id = utilisateur.IdUser }));
                    }
                    else
                    {
                        HttpContext.Session.Clear();
                    }
                }
            }

            return(RedirectToAction(nameof(Index)));
        }
Example #11
0
        public async Task <IActionResult> Unregister([Bind("IdTournament")] Tournoi Tournoi)
        {
            if (Tournoi.IdTournament < 1 || !int.TryParse(HttpContext.Session.GetString("UserId"), out int IdUser))
            {
                return(NotFound());
            }

            var joueur = new Joueur();

            joueur.User.IdUser  = IdUser;
            joueur.IdTournament = Tournoi.IdTournament;


            RetourAPI retourApi = await CallAPI.UnregisterTournoi(joueur);

            if (retourApi.Succes)
            {
                return(RedirectToAction("Index"));
            }

            return(RedirectToAction("Unregister", new{ IdTournoi = Tournoi.IdTournament, error = retourApi.Message }));
        }
Example #12
0
        public async Task <IActionResult> Edit(int id, [Bind("IdTournament,Name,Date,Description,IdGame,MaxNumberPlayer,DeckListNumber,Ppwin,Ppdraw,Pplose,Over,Deleted,Dotation")]
                                               Tournoi tournoi)
        {
            if (id != tournoi.IdTournament)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                RetourAPI retourApi = await CallAPI.UpdateTournoi(tournoi);

                if (retourApi.Succes)
                {
                    return(RedirectToAction("Details", new { id = tournoi.IdTournament }));
                }
            }

            IEnumerable <ViewJeu> Jeus = await CallAPI.GetAllJeus();

            ViewData["AllGame"] = new SelectList(Jeus, "IdGame", "Name", tournoi.jeu.IdGame);
            ViewData["Title"]   = "Modifier un tournoi";
            return(View("~/Views/Tournoi/Edit.cshtml", tournoi));
        }