mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
#165: Added short event name for sorting purposes.
This commit is contained in:
@@ -42,7 +42,7 @@ namespace Orchard.AuditTrail.Controllers {
|
||||
var eventDescriptors = eventDescriptorsQuery.ToDictionary(x => x.Event);
|
||||
var recordViewModelsQuery =
|
||||
from record in pageOfData
|
||||
let descriptor = eventDescriptors.ContainsKey(record.Event) ? eventDescriptors[record.Event] : default(AuditTrailEventDescriptor)
|
||||
let descriptor = eventDescriptors.ContainsKey(record.FullEventName) ? eventDescriptors[record.FullEventName] : default(AuditTrailEventDescriptor)
|
||||
where descriptor != null
|
||||
select new AuditTrailEventSummaryViewModel {
|
||||
Record = record,
|
||||
@@ -66,7 +66,7 @@ namespace Orchard.AuditTrail.Controllers {
|
||||
return new HttpUnauthorizedResult();
|
||||
|
||||
var record = _auditTrailManager.GetRecord(id);
|
||||
var descriptor = _auditTrailManager.DescribeEvent(record.Event);
|
||||
var descriptor = _auditTrailManager.DescribeEvent(record.FullEventName);
|
||||
var detailsShape = _displayBuilder.BuildDisplay(record, "Detail");
|
||||
var viewModel = new AuditTrailDetailsViewModel {
|
||||
Record = record,
|
||||
|
@@ -1,10 +1,8 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using Orchard.AuditTrail.Models;
|
||||
using Orchard.AuditTrail.Providers.Content;
|
||||
using Orchard.AuditTrail.Services;
|
||||
using Orchard.AuditTrail.Services.Models;
|
||||
using Orchard.AuditTrail.Settings;
|
||||
using Orchard.AuditTrail.ViewModels;
|
||||
using Orchard.ContentManagement;
|
||||
@@ -53,7 +51,7 @@ namespace Orchard.AuditTrail.Drivers {
|
||||
from e in c.Events
|
||||
select e;
|
||||
var recordViewModels = from record in pageOfData
|
||||
let descriptor = eventDescriptors.FirstOrDefault(x => x.Event == record.Event)
|
||||
let descriptor = eventDescriptors.FirstOrDefault(x => x.Event == record.FullEventName)
|
||||
where descriptor != null
|
||||
select new AuditTrailEventSummaryViewModel {
|
||||
Record = record,
|
||||
|
@@ -35,7 +35,8 @@ namespace Orchard.AuditTrail.ImportExport {
|
||||
|
||||
foreach (var record in records) {
|
||||
root.Add(new XElement("Event",
|
||||
CreateAttribute("Name", record.Event),
|
||||
CreateAttribute("Name", record.EventName),
|
||||
CreateAttribute("FullName", record.FullEventName),
|
||||
CreateAttribute("Category", record.Category),
|
||||
CreateAttribute("User", record.UserName),
|
||||
CreateAttribute("CreatedUtc", record.CreatedUtc),
|
||||
|
@@ -22,7 +22,8 @@ namespace Orchard.AuditTrail.ImportExport {
|
||||
|
||||
foreach (var eventElement in recipeContext.RecipeStep.Step.Elements()) {
|
||||
var record = new AuditTrailEventRecord {
|
||||
Event = eventElement.Attr<string>("Name"),
|
||||
EventName = eventElement.Attr<string>("Name"),
|
||||
FullEventName = eventElement.Attr<string>("FullName"),
|
||||
Category = eventElement.Attr<string>("Category"),
|
||||
UserName = eventElement.Attr<string>("User"),
|
||||
CreatedUtc = eventElement.Attr<DateTime>("CreatedUtc"),
|
||||
|
@@ -10,7 +10,8 @@ namespace Orchard.AuditTrail {
|
||||
.Column<int>("Id", c => c.PrimaryKey().Identity())
|
||||
.Column<DateTime>("CreatedUtc")
|
||||
.Column<string>("UserName", c => c.WithLength(64))
|
||||
.Column<string>("Event", c => c.WithLength(256))
|
||||
.Column<string>("EventName", c => c.WithLength(128))
|
||||
.Column<string>("FullEventName", c => c.WithLength(512))
|
||||
.Column<string>("Category", c => c.WithLength(64))
|
||||
.Column<int>("ContentItemVersion_Id")
|
||||
.Column<string>("EventData", c => c.Unlimited())
|
||||
|
@@ -5,7 +5,8 @@ namespace Orchard.AuditTrail.Models {
|
||||
public virtual int Id { get; set; }
|
||||
public virtual DateTime CreatedUtc { get; set; }
|
||||
public virtual string UserName { get; set; }
|
||||
public virtual string Event { get; set; }
|
||||
public virtual string EventName { get; set; }
|
||||
public virtual string FullEventName { get; set; }
|
||||
public virtual string Category { get; set; }
|
||||
public virtual string EventData { get; set; }
|
||||
public virtual string EventFilterKey { get; set; }
|
||||
|
@@ -18,21 +18,16 @@ namespace Orchard.AuditTrail.Services {
|
||||
|
||||
public dynamic BuildDisplay(AuditTrailEventRecord record, string displayType) {
|
||||
var eventData = _serializer.Deserialize(record.EventData);
|
||||
var descriptor = _auditTrailManager.DescribeEvent(record.Event);
|
||||
var descriptor = _auditTrailManager.DescribeEvent(record.FullEventName);
|
||||
var auditTrailEventShape = New.AuditTrailEvent(Record: record, EventData: eventData, Descriptor: descriptor);
|
||||
var metaData = (ShapeMetadata)auditTrailEventShape.Metadata;
|
||||
metaData.DisplayType = displayType;
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent_{0}", displayType));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent__{0}", record.Category));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent_{0}__{1}", displayType, record.Category));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent__{0}__{1}", record.Category, GetShortEventName(record.Event)));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent_{0}__{1}__{2}", displayType, record.Category, GetShortEventName(record.Event)));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent__{0}__{1}", record.Category, record.EventName));
|
||||
metaData.Alternates.Add(String.Format("AuditTrailEvent_{0}__{1}__{2}", displayType, record.Category, record.EventName));
|
||||
return auditTrailEventShape;
|
||||
}
|
||||
|
||||
private string GetShortEventName(string fullyQualifiedEventName) {
|
||||
var index = fullyQualifiedEventName.LastIndexOf('.') + 1;
|
||||
return fullyQualifiedEventName.Substring(index);
|
||||
}
|
||||
}
|
||||
}
|
@@ -73,7 +73,7 @@ namespace Orchard.AuditTrail.Services {
|
||||
|
||||
switch (orderBy) {
|
||||
case AuditTrailOrderBy.EventAscending:
|
||||
query = query.OrderBy(x => x.Event).ThenByDescending(x => x.Id);
|
||||
query = query.OrderBy(x => x.EventName).ThenByDescending(x => x.Id);
|
||||
break;
|
||||
case AuditTrailOrderBy.CategoryAscending:
|
||||
query = query.OrderBy(x => x.Category).ThenByDescending(x => x.Id);
|
||||
@@ -139,7 +139,8 @@ namespace Orchard.AuditTrail.Services {
|
||||
|
||||
var record = new AuditTrailEventRecord {
|
||||
Category = eventDescriptor.CategoryDescriptor.Category,
|
||||
Event = eventDescriptor.Event,
|
||||
EventName = eventName,
|
||||
FullEventName = eventDescriptor.Event,
|
||||
CreatedUtc = _clock.UtcNow,
|
||||
UserName = user != null ? user.UserName : null,
|
||||
EventData = _serializer.Serialize(context.EventData),
|
||||
|
Reference in New Issue
Block a user