public async Task <IActionResult> Create(FighterCreateInputModel input)
        {
            if (!this.ModelState.IsValid)
            {
                var categories = this.categoriesService.GetAll <CategoryDropDownViewModel>();
                input.Categories = categories;
                return(this.View(input));
            }

            var user = await this.userManager.GetUserAsync(this.User);

            var skillId = await this.skillsService.CreateAsync();

            var biographyId = await this.biographiesService.CreateAsync(input.FirstName, input.Nickname, input.LastName, input.BornCountry, input.Age, input.Picture);

            var recordId = await this.recordsService.CreateAsync();

            var fighterId = await this.fightersService.CreateAsync(skillId, biographyId, recordId, input.CategoryId, user);

            await this.usersService.PayForNewFighterAsync(user);

            this.TempData["InfoMessage"] = "Fighter created!";

            return(this.RedirectToAction(nameof(this.ChooseOrganization), new { id = fighterId }));
        }
        public IActionResult Create()
        {
            var categories = this.categoriesService.GetAll <CategoryDropDownViewModel>();

            var viewModel = new FighterCreateInputModel
            {
                Categories = categories,
            };

            return(this.View(viewModel));
        }