public async Task <IActionResult> Index(ProfileModel dataPage) { ViewBag.Title = "Profile"; try { var user = await UserManager.GetUserAsync(HttpContext.User); if (string.IsNullOrEmpty(user.Avatar)) { user.Avatar = "assets/avatars/ava.png"; } dataPage.ProfileUser = user; dataPage.SocialNetwork = new SocialNetwork(); dataPage.PersonalDetails = new PersonalDetails { Birthday = user.Birthday, Gender = user.Gender, StreetAddress = user.StreetAddress, Occupation = user.Occupation, About = user.About }; if (!string.IsNullOrEmpty(user.SocialNetwork)) { dataPage.SocialNetwork = SocialNetwork.FromJson(user.SocialNetwork); } ViewBag.FullName = string.IsNullOrEmpty(user.FullName) ? user.UserName : user.FullName; return(View(dataPage)); } catch (Exception e) { Logger.LogError("ProfileController ==>> Index error: " + e.Message); throw; } }
public async Task <IActionResult> UpdateSocial(ProfileModel model) { try { var user = await UserManager.GetUserAsync(HttpContext.User); var data = model.SocialNetwork; user.SocialNetwork = SocialNetwork.ToJson(data); await UserManager.UpdateAsync(user); return(RedirectToAction("Index", new ProfileModel { Tab = false })); } catch (Exception e) { Logger.LogError("ProfileController ==>> UpdateSocial error: " + e.Message); throw; } }
public static string ToJson(SocialNetwork self) => JsonConvert.SerializeObject(self);