public IActionResult Delete([FromQuery] DeleteChapterDto chapterDto) { try { if (_httpContextAccessor.GetCurrentUserId() != chapterDto.AuthorId) { throw new UnauthorizedAccessException("You are not authorized to delete the specified chapter."); } var result = _chapterService.Delete(chapterDto.ChapterId, chapterDto.AuthorId); if (result) { return(Ok()); } else { return(NoContent()); } } catch (Exception ex) { Console.WriteLine($"Encountered exception while attempting to delete chapter. Message: {ex.Message}"); Console.WriteLine(ex.StackTrace); return(BadRequest(new ErrorResponseDto(ex))); } }
public async Task <IActionResult> DeleteChapterFromFanfic([Required] string id) { if (ModelState.IsValid && User.Identity.IsAuthenticated) { ApplicationUser user = await _authenticationManager.UserManager.FindByNameAsync(User.Identity.Name); ChapterDTO chapter = await _chapterService.GetById(id); FanficDTO fanfic = await _fanficService.GetById(chapter.FanficId); if (fanfic == null) { return(NotFound()); } if (fanfic.ApplicationUserId == user.Id || await _authenticationManager.UserManager.IsInRoleAsync(user, "Admin")) { await DeleteChapterRatings(id); ChapterDTO deletedChapter = await _chapterService.Delete(id); return(Ok(_mapper.Map <ChapterDTO, ChapterModel>(deletedChapter))); } } return(BadRequest(ModelState)); }
public IActionResult Delete(int id) { _chapterService.Delete(id); return(Ok(new { message = "Successfully deleted chapter." })); }
public IActionResult Delete(int chapterId) { var chapter = _chapterService.Get(chapterId); int fanficId = chapter.Fanfic.Id; _chapterService.Delete(chapter); return(RedirectToAction("Read", "Fanfic", new { id = fanficId })); }
public IActionResult Delete(int id) { if (!ModelState.IsValid) { return(new BadRequestObjectResult(ModelState)); } _chapterService.Delete(id); _chapterService.SaveChanges(); return(new OkObjectResult(id)); }
private async Task <List <ChapterDTO> > DeleteFanficChapters(string id) { List <ChapterDTO> chapters = _chapterService.GetFanficChapters(id).ToList(); if (chapters == null) { return(new List <ChapterDTO>()); } foreach (var chapter in chapters) { await DeleteChapterRatings(chapter.Id); await _chapterService.Delete(chapter.Id); } return(chapters); }
public JsonResult Delete(int id = 0) { try { var entity = _ChapterService.GetById(id); if (entity == null) { return(Json(new { Status = Successed.Empty }, JsonRequestBehavior.AllowGet)); } _ChapterService.Delete(entity); return(Json(new { Status = Successed.Ok }, JsonRequestBehavior.AllowGet)); } catch (Exception) { return(Json(new { Status = Successed.Error }, JsonRequestBehavior.AllowGet)); } }
public ActionResult Delete(ChapterViewModel viewModel) { if (ModelState.IsValid) { var result = _chapterService.Delete(viewModel.ChapterId); if (result.Success) { var bodySubject = "Web portal changes - Chapter delete"; var message = "ClassName :" + viewModel.ClassName + ", SubjectName :" + viewModel.SubjectName + " deleted Successfully"; SendMailToAdmin(message, viewModel.Name, bodySubject); Success(result.Results.FirstOrDefault().Message); ModelState.Clear(); } else { _logger.Warn(result.Results.FirstOrDefault().Message); Warning(result.Results.FirstOrDefault().Message, true); } } return(RedirectToAction("Index")); }
public BaseResponse <bool> Delete(Guid id) { return(_chapterService.Delete(id)); }