Ensures event messages are passed to Saved events for content/media

This commit is contained in:
Shannon
2015-07-24 12:07:32 +02:00
parent 9406675bf2
commit 8b86276011
3 changed files with 40 additions and 15 deletions

View File

@@ -28,8 +28,10 @@ namespace Umbraco.Core.Events
{
var evtArgs = args(evtMsgs);
if (eventHandler != null)
if (eventHandler != null)
{
eventHandler(sender, evtArgs);
}
return evtArgs.Cancel;
}
@@ -55,15 +57,38 @@ namespace Umbraco.Core.Events
return args.Cancel;
}
/// <summary>
/// Raises the event
/// </summary>
/// <typeparam name="TSender"></typeparam>
/// <typeparam name="TArgs"></typeparam>
/// <param name="eventHandler"></param>
/// <param name="args"></param>
/// <param name="sender"></param>
public static void RaiseEvent<TSender, TArgs>(
/// <summary>
/// Raises the event with EventMessages
/// </summary>
/// <typeparam name="TSender"></typeparam>
/// <typeparam name="TArgs"></typeparam>
/// <param name="eventHandler"></param>
/// <param name="evtMsgs"></param>
/// <param name="args"></param>
/// <param name="sender"></param>
public static void RaiseEvent<TSender, TArgs>(
this TypedEventHandler<TSender, TArgs> eventHandler,
EventMessages evtMsgs,
Func<EventMessages, TArgs> args,
TSender sender)
where TArgs : EventArgs
{
if (eventHandler != null)
{
var evtArgs = args(evtMsgs);
eventHandler(sender, evtArgs);
}
}
/// <summary>
/// Raises the event
/// </summary>
/// <typeparam name="TSender"></typeparam>
/// <typeparam name="TArgs"></typeparam>
/// <param name="eventHandler"></param>
/// <param name="args"></param>
/// <param name="sender"></param>
public static void RaiseEvent<TSender, TArgs>(
this TypedEventHandler<TSender, TArgs> eventHandler,
TArgs args,
TSender sender)

View File

@@ -1002,7 +1002,7 @@ namespace Umbraco.Core.Services
}
if (raiseEvents)
Saved.RaiseEvent(new SaveEventArgs<IContent>(asArray, false), this);
Saved.RaiseEvent(EventMessagesFactory.Get(), messages => new SaveEventArgs<IContent>(asArray, false, messages), this);
Audit(AuditType.Save, "Bulk Save content performed by user", userId == -1 ? 0 : userId, Constants.System.Root);
@@ -1868,7 +1868,7 @@ namespace Umbraco.Core.Services
}
if (raiseEvents)
Saved.RaiseEvent(new SaveEventArgs<IContent>(content, false), this);
Saved.RaiseEvent(EventMessagesFactory.Get(), messages => new SaveEventArgs<IContent>(content, false, messages), this);
//Save xml to db and call following method to fire event through PublishingStrategy to update cache
if (published)
@@ -1934,7 +1934,7 @@ namespace Umbraco.Core.Services
}
if (raiseEvents)
Saved.RaiseEvent(new SaveEventArgs<IContent>(content, false), this);
Saved.RaiseEvent(EventMessagesFactory.Get(), messages => new SaveEventArgs<IContent>(content, false, messages), this);
Audit(AuditType.Save, "Save Content performed by user", userId, content.Id);

View File

@@ -989,7 +989,7 @@ namespace Umbraco.Core.Services
}
if (raiseEvents)
Saved.RaiseEvent(new SaveEventArgs<IMedia>(media, false), this);
Saved.RaiseEvent(EventMessagesFactory.Get(), messages => new SaveEventArgs<IMedia>(media, false, messages), this);
Audit(AuditType.Save, "Save Media performed by user", userId, media.Id);
@@ -1037,7 +1037,7 @@ namespace Umbraco.Core.Services
}
if (raiseEvents)
Saved.RaiseEvent(new SaveEventArgs<IMedia>(asArray, false), this);
Saved.RaiseEvent(EventMessagesFactory.Get(), messages => new SaveEventArgs<IMedia>(asArray, false, messages), this);
Audit(AuditType.Save, "Save Media items performed by user", userId, -1);