public ActionResult UpdateTournamentView(int id /*[FromForm] TournamentCreateDto tournamentCreateDto*/)
        {
            DeserializeUser deserializable = new DeserializeUser(new HttpContextAccessor());
            UserReadDto     loggedUser     = deserializable.GetLoggedUser();

            if (loggedUser == null)
            {
                return(RedirectToAction("LoginView", "Login", new { area = "" }));
            }

            if (loggedUser.Role == Role.Player)
            {
                return(RedirectToAction("GetAllTournaments", "Tournament", new { area = "" }));
            }
            var tournamentModelFromRepository = _repository.GetTournamentById(id);

            if (tournamentModelFromRepository == null)
            {
                return(NotFound());
            }

            TournamentCreateDto tournamentCreateDto = _mapper.Map <TournamentCreateDto>(tournamentModelFromRepository);

            //_mapper.Map(tournamentCreateDto, tournamentModelFromRepository); //updating

            //_repository.UpdateTournament(tournamentModelFromRepository);
            //_repository.SaveChanges();

            return(View("CreateTournamentView", tournamentCreateDto));
        }
        public ActionResult <TournamentReadDto> CreateTournament([FromForm] TournamentCreateDto tournamentCreateDto)
        {
            Tournament tournament;

            if (tournamentCreateDto.Id != 0)
            {
                tournament          = _repository.GetTournamentById(tournamentCreateDto.Id);
                tournament.Name     = tournamentCreateDto.Name;
                tournament.Date     = tournamentCreateDto.Date;
                tournament.Place    = tournamentCreateDto.Place;
                tournament.DrawSize = tournamentCreateDto.DrawSize;
            }
            else
            {
                tournament = _mapper.Map <Tournament>(tournamentCreateDto);
                _repository.CreateTournament(tournament);
            }
            _repository.SaveChanges();

            //var tournamentReadDto = _mapper.Map<TournamentReadDto>(tournamentModel);

            //return CreatedAtRoute(nameof(GetTournamentById), new {tournamentReadDto.Id}, tournamentReadDto); //create resource -> 201
            return(RedirectToAction(nameof(GetAllTournaments))); //return to GetAllTournaments
        }