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)); }
public static GGUserSimpleDto CreateFromUser(GGuser user) { return(new GGUserSimpleDto() { NickName = user.NickName, Country = user.Country, City = user.City }); }
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" }; }