/// <summary> /// Report a post /// </summary> /// <param name="report"></param> public void PostReport(Report report) { var sb = new StringBuilder(); var email = new Email(); sb.AppendFormat("<p>{2}: <a href=\"{0}\">{1}</a></p>", string.Concat(_settingsService.GetSettings().ForumUrl, report.Reporter.NiceUrl), report.Reporter.UserName, _localizationService.GetResourceString("Report.Reporter")); sb.AppendFormat("<p>{2}: <a href=\"{0}\">{1}</a></p>", string.Concat(_settingsService.GetSettings().ForumUrl, report.ReportedPost.Topic.NiceUrl), report.ReportedPost.Topic.Name, _localizationService.GetResourceString("Report.PostReported")); sb.AppendFormat("<p>{0}:</p>", _localizationService.GetResourceString("Report.Reason")); sb.AppendFormat("<p>{0}</p>", report.Reason); email.EmailFrom = _settingsService.GetSettings().NotificationReplyEmail; email.EmailTo = _settingsService.GetSettings().AdminEmailAddress; email.Subject = _localizationService.GetResourceString("Report.PostReport"); email.NameTo = _localizationService.GetResourceString("Report.Admin"); email.Body = _emailService.EmailTemplate(email.NameTo, sb.ToString()); _emailService.SendMail(email); }
/// <summary> /// Report a post /// </summary> /// <param name="report"></param> public void PostReport(Report report) { var sb = new StringBuilder(); var email = new Email(); sb.AppendFormat("<p>{2}: <a href=\"{0}\">{1}</a></p>", string.Concat(_settingsService.GetSettings().ForumUrl.TrimEnd('/'), report.Reporter.NiceUrl), report.Reporter.UserName, _localizationService.GetResourceString("Report.Reporter")); var urlOfPost =$"{_settingsService.GetSettings().ForumUrl.TrimEnd('/')}{report.ReportedPost.Topic.NiceUrl}?order=all#comment-{report.ReportedPost.Id}"; sb.AppendFormat("<p>{2}: <a href=\"{0}\">{1}</a></p>", urlOfPost, report.ReportedPost.Topic.Name, _localizationService.GetResourceString("Report.PostReported")); sb.AppendFormat("<p>{0}:</p>", _localizationService.GetResourceString("Report.Reason")); sb.AppendFormat("<p>{0}</p>", report.Reason); email.EmailTo = _settingsService.GetSettings().AdminEmailAddress; email.Subject = _localizationService.GetResourceString("Report.PostReport"); email.NameTo = _localizationService.GetResourceString("Report.Admin"); email.Body = _emailService.EmailTemplate(email.NameTo, sb.ToString()); _emailService.SendMail(email); }
public ActionResult Report(ReportMemberViewModel viewModel) { if (SettingsService.GetSettings().EnableMemberReporting) { using (var unitOfWork = UnitOfWorkManager.NewUnitOfWork()) { var user = MembershipService.GetUser(viewModel.Id); var report = new Report { Reason = viewModel.Reason, ReportedMember = user, Reporter = LoggedOnReadOnlyUser }; _reportService.MemberReport(report); try { unitOfWork.Commit(); } catch (Exception ex) { unitOfWork.Rollback(); LoggingService.Error(ex); } TempData[AppConstants.MessageViewBagName] = new GenericMessageViewModel { Message = LocalizationService.GetResourceString("Report.ReportSent"), MessageType = GenericMessages.success }; return View(new ReportMemberViewModel { Id = user.Id, Username = user.UserName }); } } return ErrorToHomePage(LocalizationService.GetResourceString("Errors.GenericMessage")); }
public ActionResult Report(ReportPostViewModel viewModel) { if (SettingsService.GetSettings().EnableSpamReporting) { using (UnitOfWorkManager.NewUnitOfWork()) { var post = _postService.Get(viewModel.PostId); var report = new Report { Reason = viewModel.Reason, ReportedPost = post, Reporter = LoggedOnUser }; _reportService.PostReport(report); TempData[AppConstants.MessageViewBagName] = new GenericMessageViewModel { Message = LocalizationService.GetResourceString("Report.ReportSent"), MessageType = GenericMessages.success }; return View(new ReportPostViewModel { PostId = post.Id, PostCreatorUsername = post.User.UserName }); } } return ErrorToHomePage(LocalizationService.GetResourceString("Errors.GenericMessage")); }