private CommentReport MapReportCommentViewModel(CommentReportViewModel viewModel, string callerId) { return(new CommentReport { PostId = viewModel.PostId, ReportedByUserId = callerId, Message = viewModel.Message, CreatedDate = DateTime.Now, }); }
private CommentReport MapTicketViewModelIntoDataObject(CommentReportViewModel viewModel, string callerId) { return(new CommentReport { ReportedByUserId = callerId, PostId = viewModel.PostId, EntityId = viewModel.EntityId, Message = viewModel.Message, CreatedDate = DateTime.Now }); }
public async Task <IActionResult> ReportComment(CommentReportViewModel viewModel) { var callerId = GetCallerId(); var commentReport = MapReportCommentViewModel(viewModel, callerId); commentReport.Id = await _ticketsRepository.ReportComment(commentReport); return(new OkObjectResult(new { Message = "Report added", postReport = commentReport })); }
public async Task <IActionResult> Report(CommentReportViewModel model) { if (ModelState.IsValid) { try { var dto = mapper.Map <CommentReportViewModel, ReportedCommentDTO>(model); dto.ReporterId = userManager.GetUserId(HttpContext.User); dto.CreatorId = this.commentService.GetCommentAuthorId(model.CommentId); int result = await this.reportService.ReportComment(dto); var log = new Log { LogType = LogType.ReportedAComment, ResourceId = model.CommentId, UserId = this.userManager.GetUserId(this.HttpContext.User), DateTime = DateTime.Now }; int id = await this.logService.AddLog(log); this.TempData["Success"] = Constants.Message.SuccessfulReport; return(this.RedirectToAction("Details", "Offer", new { id = model.OfferId })); } catch (Exception ex) { this.TempData["Error"] = ex.Message; return(this.RedirectToAction("Details", "Offer", new { id = model.OfferId })); } } else { foreach (var error in ModelState.Values.SelectMany(p => p.Errors)) { this.TempData["Error"] += error.ErrorMessage + Environment.NewLine; } return(this.RedirectToAction("Offer", "Details", new { id = model.OfferId })); } }