public static ViewModels.Archive ToViewModel(this Models.Archive model) { ViewModels.Archive result = null; if (model != null) { result = new ViewModels.Archive(); if (model.Collection != null) { result.Collection = model.Collection.ToViewModel(); } if (model.DateReleased != null) { result.DateReleased = (DateTime)model.DateReleased; } result.HtmlContent = model.HtmlContent; if (model.Id != null) { result.Id = model.Id.ToString(); } result.TextContent = model.TextContent; result.MinistryText = model.MinistryText; result.Title = model.Title; result.Preview = model.Preview; result.Body = model.Body; } return(result); }
public static Models.Archive FromViewModel(this ViewModels.Archive viewModel) { Models.Archive result = null; if (viewModel != null) { result = new Models.Archive(); if (viewModel.Collection != null) { result.Collection = viewModel.Collection.FromViewModel(); } if (viewModel.DateReleased != null) { result.DateReleased = (DateTime)viewModel.DateReleased; } result.HtmlContent = viewModel.HtmlContent; if (viewModel.Id != null) { result.Id = new ObjectId(viewModel.Id); } result.TextContent = viewModel.TextContent; result.MinistryText = viewModel.MinistryText; result.Title = viewModel.Title; result.Preview = viewModel.Preview; result.Body = viewModel.Body; } return(result); }
public IActionResult AddArchive([FromBody] ViewModels.Archive data) { Models.Archive newArchive = data.FromViewModel(); // first add the collection. ViewModels.Collection c = data.Collection; Models.Collection dbCollection = null; if (!string.IsNullOrEmpty(c.Id)) { dbCollection = db.GetCollection(new ObjectId(c.Id)); } else { // try to find it by searching other fields. dbCollection = db.GetCollection(c.StartDate, c.EndDate, c.Name); } if (dbCollection == null) { Models.Collection newCollection = c.FromViewModel(); dbCollection = db.CreateCollection(newCollection); } if (dbCollection != null) { newArchive.Collection = dbCollection; } db.CreateArchive(newArchive); return(new ObjectResult(newArchive.ToViewModel())); }