public JsonResult PublishDocument(int documentId, bool publishDescendants, bool includeUnpublished) { var content = Services.ContentService.GetById(documentId); var doc = new Document(content); //var contentService = (ContentService) Services.ContentService; if (publishDescendants == false) { //var result = contentService.SaveAndPublishInternal(content); var result = doc.SaveAndPublish(UmbracoUser.Id); return Json(new { success = result.Success, message = GetMessageForStatus(result.Result) }); } else { /*var result = ((ContentService) Services.ContentService) .PublishWithChildrenInternal(content, UmbracoUser.Id, includeUnpublished) .ToArray();*/ var result = doc.PublishWithSubs(UmbracoUser.Id, includeUnpublished); return Json(new { success = result.All(x => x.Success), message = GetMessageForStatuses(result.Select(x => x.Result), content) }); } }