public async Task <IActionResult> ChangeImage() { User currentUser = await userService.GetCurrentUserAsync(HttpContext); ChangeImageViewModel model = new ChangeImageViewModel { UserId = currentUser.Id }; return(View(model)); }
// Prevents unnecessary errors to just keep it async #pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously public async Task <IViewComponentResult> InvokeAsync(bool isGroup, string groupName) #pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously { ChangeImageViewModel viewModel = new ChangeImageViewModel(); if (isGroup) { viewModel.IsGroup = isGroup; viewModel.GroupName = groupName; } return(View(viewModel)); }
public async Task <IActionResult> ChangeImage(ChangeImageViewModel model) { User currentUser = await userService.GetCurrentUserAsync(HttpContext); if (ModelState.IsValid && (model.UserId == currentUser.Id || User.IsInRole("Admin"))) { var newImage = await fileService.AddImage(model.Image); var result = await profileService.ChangeImage(model.UserId, newImage); if (result.Succedeed) { return(RedirectToAction("Index")); } } return(BadRequest()); }