public async Task<ActionResult> UserProfile() { var uservm = new UserDetailsViewModel(); try { var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); uservm = UserBLL.UserProfile(user); } catch (Exception ex) { Trace.TraceError("Error occured updating user: {0}", ex.ToString()); } return View(uservm); }
public static UserDetailsViewModel UserProfile(CustomUser user) { UserDetailsViewModel uservm = new UserDetailsViewModel(); uservm.UserName = user.UserName; uservm.State = user.State; uservm.FirstName = user.FirstName; uservm.LastName = user.LastName; uservm.Title = user.Title; if (user.Description == null) { uservm.Description = "Please introduce yourself by with a brief description, your current projects, current profession, and at least one interesting fact!"; } else { uservm.Description = user.Description; } if (user.Company == null || user.Company == "Not Listed") { uservm.Company = "Not Listed"; } else { uservm.Company = user.Company; } if (user.Title == null || user.Title == "Web Designer") { uservm.Title = "Web Designer"; } else { uservm.Title = user.Title; } uservm.PhotoPath = user.PhotoPath; return uservm; }
public async Task<ActionResult> UserProfile(UserDetailsViewModel model) { if (ModelState.IsValid) { var user = await UserManager.FindByIdAsync(User.Identity.GetUserId()); if (model.File != null) { try { bool success = ImageUtility.FileExtensionAccepted(Path.GetExtension(model.File.FileName)); if (success) { user.DateUserDetailsUpdated = DateTime.Now; user.PhotoPath = ImageUtility.UpdatePhoto(model.File, ImagePath.ProfileImage); await UserManager.UpdateAsync(user); return RedirectToAction("UserProfile", new { Message = "Your properties have been updated." }); } ModelState.AddModelError("", "There was an error uploading the file"); return View(model); } catch (Exception ex) { Trace.TraceError("There was an issue {0}: ", ex.Message); } } user.Company = model.Company; user.Title = model.Title; user.Description = model.Description; await UserManager.UpdateAsync(user); } return View(model); }