public IHttpActionResult Post(NewsCreateModel news) { bool isAdmin = this.User.IsInRole(DataModelConstants.AdminRole); if (news != null && this.ModelState.IsValid && isAdmin) { var databaseNews = new News { Content = news.Content, Title = news.Title, CreatedOn = DateTime.Now }; context.News.Add(databaseNews); context.SaveChanges(); return(Ok(new { id = databaseNews.Id, content = databaseNews.Content, title = databaseNews.Title, createdOn = databaseNews.CreatedOn, })); } else { return(this.BadRequest(this.ModelState)); } }
public ActionResult Create([Bind(Include = "Title,Text,File")] NewsCreateModel model) { if (ModelState.IsValid) { News news = new News { Title = model.Title, Text = model.Text, Created = DateTime.Now, Modified = DateTime.Now }; if (model.File != null && model.File.ContentLength > 0) { var fileExtension = Path.GetExtension(model.File.FileName); var fileName = Path.GetFileNameWithoutExtension(model.File.FileName) + "-" + DateTime.Now.ToString("yyyyMMdd_HHmmssfff") + fileExtension; var path = Path.Combine(Server.MapPath("~/Img/news"), fileName); model.File.SaveAs(path); news.PicturePath = "/Img/news/" + fileName; } db.news.Add(news); db.SaveChanges(); TempData["AlertMessage"] = "The News has created succesfully"; return(RedirectToAction("List")); } TempData["AlertMessage"] = "Something gone wrong. Try again please!"; return(RedirectToAction("List")); }
public async Task <IHttpActionResult> Create(NewsCreateModel createModel) { if (!ModelState.IsValid) { return(BadRequest()); } //if (!_permissionsService.Check(new PermissionSettingIdentity(PermissionActionEnum.Create, // PermissionResourceTypeEnum.News))) if (!await _newsService.CanCreateAsync(createModel.GroupId)) { return(StatusCode(HttpStatusCode.Forbidden)); } var newsBaseCreateModel = await MapToNewsAsync(createModel); var activityId = await _newsService.CreateAsync(newsBaseCreateModel); await OnNewsCreatedAsync(activityId, createModel); var newsViewModel = await GetViewModelAsync(_newsService.Get(activityId)); ReloadFeed(); return(Ok(newsViewModel.Links.Details)); }
public void Create(string createdBy, NewsCreateModel newsCreateModel) { _repository.CreateNews( News.CreateNews( newsCreateModel.Title, newsCreateModel.Description, createdBy ) ); }
public IActionResult CreateNews(string createdBy, [Bind("Title, Description")] NewsCreateModel newsCreateModel) { if (!ModelState.IsValid) { return(View(newsCreateModel)); } _service.Create(createdBy, newsCreateModel); return(RedirectToAction(nameof(Index))); }
protected virtual NewsBase MapToNews(NewsCreateModel createModel) { var news = createModel.Map <NewsBase>(); news.MediaIds = news.MediaIds.Concat(_mediaHelper.CreateMedia(createModel)); news.PublishDate = createModel.PublishDate.ToUniversalTime(); news.UnpublishDate = createModel.UnpublishDate?.ToUniversalTime(); news.EndPinDate = createModel.EndPinDate?.ToUniversalTime(); news.CreatorId = _intranetUserService.GetCurrentUserId(); return(news); }
protected virtual NewsCreateModel GetCreateModel(IActivityCreateLinks links) { var mediaSettings = _newsService.GetMediaSettings(); var model = new NewsCreateModel { PublishDate = DateTime.UtcNow, OwnerId = _intranetUserService.GetCurrentUser().Id, ActivityType = _activityTypeProvider[ActivityTypeId], Links = links, MediaRootId = mediaSettings.MediaRootId }; return(model); }
protected override void OnNewsCreated(Guid activityId, NewsCreateModel model) { var news = _newsService.Get(activityId); var groupId = Request.QueryString.GetGroupIdOrNone(); groupId.IfSome(id => _groupActivityService.AddRelation(id, activityId)); if (model is NewsExtendedCreateModel extendedModel) { _activityTagsHelper.ReplaceTags(activityId, extendedModel.TagIdsData); } ResolveMentions(model.Description, news); }
public virtual ActionResult Create(NewsCreateModel createModel) { if (!ModelState.IsValid) { return(RedirectToCurrentUmbracoPage(Request.QueryString)); } var newsBaseCreateModel = MapToNews(createModel); var activityId = _newsService.Create(newsBaseCreateModel); OnNewsCreated(activityId, createModel); string redirectUri = _activityLinkService.GetLinks(activityId).Details; return(Redirect(redirectUri)); }
protected override void OnNewsCreated(Guid activityId, NewsCreateModel model) { var groupId = Request.QueryString.GetGroupId(); if (groupId.HasValue) { _groupActivityService.AddRelation(groupId.Value, activityId); var news = _newsService.Get(activityId); news.GroupId = groupId; } if (model is NewsExtendedCreateModel extendedModel) { _activityTagsHelper.ReplaceTags(activityId, extendedModel.TagIdsData); } }
private async Task OnNewsCreatedAsync(Guid activityId, NewsCreateModel model) { var news = _newsService.Get(activityId); if (model.GroupId.HasValue) { await _groupActivityService.AddRelationAsync(model.GroupId.Value, activityId); news.GroupId = model.GroupId.Value; } await _activityTagsHelper.ReplaceTagsAsync(activityId, model.TagIdsData); await ResolveMentionsAsync(model.Description, news); }
public void Create_WhenCalled_ExpectedToCreateNews() { //Arrange var sut = CreateSut(); var newsCreateModel = new NewsCreateModel { Title = "for tests", Description = "Sure!" }; //Act sut.Create("A user made for testing!", newsCreateModel); //Assert Assert.AreEqual(Mock.Newses.Count, 6); }
private async Task <NewsBase> MapToNewsAsync(NewsCreateModel createModel) { var news = createModel.Map <NewsBase>(); news.MediaIds = news.MediaIds.Concat(_mediaHelper.CreateMedia(createModel, MediaFolderTypeEnum.NewsContent)); news.PublishDate = createModel.PublishDate.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.PublishDate); news.UnpublishDate = createModel.UnpublishDate?.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.UnpublishDate.Value); news.EndPinDate = createModel.EndPinDate?.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.EndPinDate.Value); news.CreatorId = await _intranetMemberService.GetCurrentMemberIdAsync(); if (await IsPinAllowedAsync()) { news.IsPinned = createModel.IsPinned; } return(news); }
protected virtual NewsBase MapToNews(NewsCreateModel createModel) { var news = createModel.Map <NewsBase>(); news.MediaIds = news.MediaIds.Concat(_mediaHelper.CreateMedia(createModel)); news.PublishDate = createModel.PublishDate.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.PublishDate); news.UnpublishDate = createModel.UnpublishDate?.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.UnpublishDate.Value); news.EndPinDate = createModel.EndPinDate?.ToUniversalTime().WithCorrectedDaylightSavingTime(createModel.EndPinDate.Value); news.CreatorId = _intranetMemberService.GetCurrentMemberId(); if (!IsPinAllowed()) { news.IsPinned = false; news.EndPinDate = null; } return(news); }
protected virtual void OnNewsCreated(Guid activityId, NewsCreateModel model) { }