public async Task <IActionResult> ChangeProfilePicture() { var user = await _userManager.GetUserAsync(User); if (user == null) { throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'."); } if (!await this._userManager.IsInRoleAsync(user, WebConstants.HairdresserRole)) { return(RedirectToAction("Index", "Home")); } var model = new ChangeProfilePicture() { ProfilePictureContent = user.ProfilePicture, StatusMessage = StatusMessage }; return(View(model)); }
public async Task <IActionResult> ChangeProfilePicture(ChangeProfilePicture model) { if (!ModelState.IsValid) { return(View(model)); } var user = await _userManager.GetUserAsync(User); if (user == null) { throw new ApplicationException($"Unable to load user with ID '{_userManager.GetUserId(User)}'."); } var uploadedPicture = this.pictureService.PictureToByteArray(model.ProfilePictureFile); await this.userService.ChangeProfilePicture(user.Id, uploadedPicture); model.ProfilePictureContent = uploadedPicture; StatusMessage = "Your profile picture has been changed."; return(View(model)); }