Fixed exceptions when rendering audit trail records for content items which have been deleted.

This commit is contained in:
Daniel Stolt
2014-07-31 01:25:49 +02:00
parent f24cedd425
commit ed8eb3f4c0
2 changed files with 14 additions and 8 deletions

View File

@@ -38,6 +38,7 @@ namespace Orchard.AuditTrail.Providers.Content {
context.Shape.DiffNodes = diffNodes; context.Shape.DiffNodes = diffNodes;
} }
context.Shape.ContentItemId = contentItemId;
context.Shape.ContentItem = contentItem; context.Shape.ContentItem = contentItem;
context.Shape.PreviousVersion = previousVersion; context.Shape.PreviousVersion = previousVersion;
}); });

View File

@@ -4,19 +4,24 @@
@{ @{
var descriptor = (AuditTrailEventDescriptor)Model.Descriptor; var descriptor = (AuditTrailEventDescriptor)Model.Descriptor;
var eventData = (IDictionary<string, object>) Model.EventData; var eventData = (IDictionary<string, object>) Model.EventData;
var contentItemId = (int)Model.ContentItemId;
var contentItem = (ContentItem) Model.ContentItem; var contentItem = (ContentItem) Model.ContentItem;
var contentItemId = contentItem.Id;
var eventVersionNumber = eventData.Get<int>("VersionNumber"); var eventVersionNumber = eventData.Get<int>("VersionNumber");
var eventIsPublished = eventData.Get<bool>("Published"); var isPublishedEvent = eventData.Get<bool>("Published");
var contentType = contentItem.ContentType;
var isLatest = contentItem.VersionRecord.Number == eventVersionNumber;
} }
<section class="audittrail-content-eventsummary"> <section class="audittrail-content-eventsummary">
@if (eventIsPublished || isLatest) { @if (contentItem != null) {
@T("{2} of the {0} {1} was {3}.", contentType.ToLower(), Html.ItemEditLink(contentItem), Html.ActionLink(T("Version {0}", eventVersionNumber).Text, "Detail", "Content", new { area = "Orchard.AuditTrail", id = contentItemId, version = eventVersionNumber }, null), descriptor.Name.Text.ToLower()) var contentType = contentItem.ContentType;
var isLatest = contentItem.VersionRecord.Number == eventVersionNumber;
if (isPublishedEvent || isLatest) {
@T("{0} of the {1} {2} was {3}.", Html.ActionLink(T("Version {0}", eventVersionNumber).Text, "Detail", "Content", new { area = "Orchard.AuditTrail", id = contentItemId, version = eventVersionNumber }, null), contentType.ToLower(), Html.ItemEditLink(contentItem), descriptor.Name.Text.ToLower())
}
else {
@T("The {1} {2} was {3}", contentType.ToLower(), Html.ItemEditLink(contentItem), descriptor.Name.Text.ToLower())
}
} }
else { else {
@T("{0} - {1}", contentType, Html.ItemEditLink(contentItem)) @T("<strong>Version {0}</strong> of content item with ID <strong>{1}</strong> was {2}.", eventVersionNumber, contentItemId, descriptor.Name.Text.ToLower())
} }
</section> </section>