Esempio n. 1
0
        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));
        }
Esempio n. 2
0
 public static GGUserSimpleDto CreateFromUser(GGuser user)
 {
     return(new GGUserSimpleDto()
     {
         NickName = user.NickName,
         Country = user.Country,
         City = user.City
     });
 }
Esempio n. 3
0
        public UserEditVM(GGuser user, List <GameAccount> gameAccounts)
        {
            if (user.Id == 0)
            {
                throw new ArgumentNullException("User id is 0");
            }

            Id          = user.Id;
            FirstName   = user.FirstName;
            LastName    = user.LastName;
            NickName    = user.NickName;
            Description = user.Description;
            Country     = user.Country;
            City        = user.City;
            Avatar      = user.Avatar;

            const int lolId       = 2;
            const int dotaId      = 1;
            const int overwatchId = 3;

            var dotaAccount      = gameAccounts.FirstOrDefault(gameAccount => gameAccount.GameId == 1);
            var lolAccount       = gameAccounts.FirstOrDefault(gameAccount => gameAccount.GameId == 2);
            var overwatchAccount = gameAccounts.FirstOrDefault(gameAccount => gameAccount.GameId == 3);

            SteamId     = dotaAccount == null  ? "" : dotaAccount.AccountIdentifier2;
            BattleTag   = overwatchAccount == null  ? "" : overwatchAccount.AccountIdentifier;
            LolUsername = lolAccount == null  ? "" : lolAccount.NickName;


            //Initialize regions for dropdown lists
            BattleNetRegions = new List <string>()
            {
                "us", "eu", "asia"
            };
            RiotGamesRegions = new List <string>()
            {
                "BR1", "EUN1", "EUW1", "JP1", "KR", "LA1", "LA2", "NA1",
                "OC1", "RU", "TR1"
            };
        }