public ActionResult Upsert(PublicationUpsertViewModel model, bool preview = false) { if (!ModelState.IsValid) { InitUpsertBreadcrumb(model); return(View(model)); } if (preview) { model.EnterDate = sessionStorageService.Get <PublicationUpsertViewModel>(model.UniqueId)?.EnterDate; sessionStorageService.Upsert(model); return(RedirectToAction("Preview", new { sessionId = model.UniqueId })); } using (var transaction = ContextManager.NewTransaction()) { model.Id = publicationService.Upsert(Mapper.Map <Publication>(model)); transaction.Commit(); } this.ShowMessage(MessageType.Success, Resource.ChangesSuccessfullySaved); return(RedirectToAction("Index", new PublicationQueryModel { Id = model.Id })); }
private void InitUpsertBreadcrumb(PublicationUpsertViewModel model) { this.InitAdminBreadcrumb( Title, model.Id.HasValue ? string.Format(Resource.Editing, model.Title) : model.Type != null && model.Type.Id == EnumHelper.GetPublicationType(PublicationType.Event) ? Resource.CreateEvent : Resource.CreateNews, true); }
public void PostUpsertInvalidModel() { ////Arrange var model = new PublicationUpsertViewModel(); ////Act SimulateValidation(model, publicationController); var result = publicationController.Upsert(model); ////Assert publicationController.ModelState.IsValid.Should().Be(false); }
public ActionResult Upsert(PublicationType?type = null, Guid?id = null, string sessionId = null) { PublicationUpsertViewModel model; if (id.HasValue) { using (ContextManager.NewConnection()) { model = Mapper.Map <PublicationUpsertViewModel>(publicationService.Get(id.Value, true)); } sessionStorageService.Upsert(model); } else if (sessionId.IsNotNullOrEmpty()) { model = sessionStorageService.Get <PublicationUpsertViewModel>(sessionId); } else if (type.HasValue) { if (!EnumHelper.PublicationTypes.ContainsKey(type.Value) || type.Value == PublicationType.None) { throw new ArgumentOutOfRangeException("type"); } model = new PublicationUpsertViewModel { Type = new Nomenclature { Id = EnumHelper.GetPublicationType(type.Value) } }; } else { throw new WarningException(Resource.NoDataFound); } InitUpsertBreadcrumb(model); return(View(model)); }