Fixed the content edit action to not blow up when there is not contentItem for the id

--HG--
branch : dev
This commit is contained in:
Nathan Heskew
2010-07-13 11:30:39 -07:00
parent 7c11b79b7d
commit e4a20d7039

View File

@@ -126,17 +126,27 @@ namespace Orchard.Core.Contents.Controllers {
public ActionResult Edit(int id) { public ActionResult Edit(int id) {
var contentItem = _contentManager.Get(id, VersionOptions.Latest); var contentItem = _contentManager.Get(id, VersionOptions.Latest);
if (contentItem == null)
return new NotFoundResult();
var model = new EditItemViewModel { var model = new EditItemViewModel {
Id = id, Id = id,
Content = _contentManager.BuildEditorModel(contentItem) Content = _contentManager.BuildEditorModel(contentItem)
}; };
PrepareEditorViewModel(model.Content); PrepareEditorViewModel(model.Content);
return View("Edit", model); return View("Edit", model);
} }
[HttpPost] [HttpPost]
public ActionResult Edit(EditItemViewModel model) { public ActionResult Edit(EditItemViewModel model) {
var contentItem = _contentManager.Get(model.Id, VersionOptions.DraftRequired); var contentItem = _contentManager.Get(model.Id, VersionOptions.DraftRequired);
if (contentItem == null)
return new NotFoundResult();
model.Content = _contentManager.UpdateEditorModel(contentItem, this); model.Content = _contentManager.UpdateEditorModel(contentItem, this);
if (!ModelState.IsValid) { if (!ModelState.IsValid) {
_transactionManager.Cancel(); _transactionManager.Cancel();