public async Task <ActionResult> CreateNews(CreateNewsItemModel model) { if (!ModelState.IsValid) { return(View("CreateNewsModal", model)); } var result = await NewsWriter.CreateNewsItem(User.Identity.GetUserId(), model); if (!ModelState.IsWriterResultValid(result)) { return(View("CreateNewsModal", model)); } return(CloseModal(result)); }
public async Task <IWriterResult> CreateNewsItem(string userId, CreateNewsItemModel model) { using (var context = DataContextFactory.CreateContext()) { var sanitizer = new HtmlSanitizer(); var newsItem = new Entity.NewsItem { Status = Enums.NewsStatus.Active, Timestamp = DateTime.UtcNow, Title = model.Title, Content = sanitizer.Sanitize(model.Content), UserId = userId }; context.NewsItem.Add(newsItem); await context.SaveChangesAsync().ConfigureAwait(false); return(new WriterResult(true, "Successfully created news item")); } }