public async Task <IActionResult> GetReview(Guid id) { var review = await _reviewsRepository.GetByIdAsync(id); var reviewToReturn = _mapper.Map <ReviewDto>(review); return(Ok(reviewToReturn)); }
public async Task <IActionResult> Delete(int id) { var rev = await _reviewsRepository.GetByIdAsync(id); if (HttpContext.User.IsInRole("Admin")) { try { _reviewsRepository.Delete(rev); await _reviewsRepository.SaveChangesAsync(); return(RedirectToAction("Index", "Reviews", new { message = "Відгук успішно видалено!" })); } catch { return(RedirectToAction("Index", "Reviews", new { error = "Під час видалення відгуку сталася помилка!" })); } } else { var user = await _userManager.GetUserAsync(HttpContext.User); if (rev.Reviewer.UserId == user.Id) { _reviewsRepository.Delete(rev); await _reviewsRepository.SaveChangesAsync(); return(RedirectToAction("Profile", "Account", new { message = "Відгук успішно видалено!" })); } return(RedirectToAction("Public", "Reviews", new { error = "Ви намагаєтесь видалити чужий відгук!" })); } }