public async Task <IActionResult> Register(RegisterVM model)
        {
            if (ModelState.IsValid)
            {
                GGuser newUser = model.ExportGGUser();
                var    result  = await _userManager.CreateAsync(newUser, model.Password);

                if (result.Succeeded)
                {
                    await _signInManager.SignInAsync(newUser, isPersistent : false);

                    var userObj = await _userManager.FindByEmailAsync(model.Email);

                    if (model.AvatarImage != null)
                    {
                        userObj.Avatar = await _helperService.SaveAvatar(model.AvatarImage);
                    }

                    var favoriteGame = await unitOfWork.Games.GetFirstOrDefault(g => g.Title == model.FavoriteGame);

                    UsersGamesRelation newUserGameRelation = new(userObj.Id, favoriteGame.Id);
                    userObj.GamesRelations = new List <UsersGamesRelation>();
                    userObj.GamesRelations.Add(newUserGameRelation);

                    await unitOfWork.Save();

                    return(RedirectToAction("Index", "GamerProfile"));
                }
            }

            return(View(model));
        }