mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2026-01-22 21:02:08 +08:00
Hooking up Removing/Removed events to fire when DefaultContentManager.Remove is called (this fixes the bug where deleting a blog post doesn't decrement its blog post count).
--HG-- extra : convert_revision : svn%3A5ff7c347-ad56-4c35-b696-ccb81de16e03/trunk%4045369
This commit is contained in:
@@ -207,6 +207,12 @@ namespace Orchard.ContentManagement {
|
|||||||
|
|
||||||
public virtual void Remove(ContentItem contentItem) {
|
public virtual void Remove(ContentItem contentItem) {
|
||||||
var activeVersions = _contentItemVersionRepository.Fetch(x => x.ContentItemRecord == contentItem.Record && (x.Published || x.Latest));
|
var activeVersions = _contentItemVersionRepository.Fetch(x => x.ContentItemRecord == contentItem.Record && (x.Published || x.Latest));
|
||||||
|
var context = new RemoveContentContext(contentItem);
|
||||||
|
|
||||||
|
foreach (var handler in Handlers) {
|
||||||
|
handler.Removing(context);
|
||||||
|
}
|
||||||
|
|
||||||
foreach (var version in activeVersions) {
|
foreach (var version in activeVersions) {
|
||||||
if (version.Published) {
|
if (version.Published) {
|
||||||
version.Published = false;
|
version.Published = false;
|
||||||
@@ -215,7 +221,10 @@ namespace Orchard.ContentManagement {
|
|||||||
version.Latest = false;
|
version.Latest = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
//TODO: fire content handler events
|
|
||||||
|
foreach (var handler in Handlers) {
|
||||||
|
handler.Removed(context);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
protected virtual ContentItem BuildNewVersion(ContentItem existingContentItem) {
|
protected virtual ContentItem BuildNewVersion(ContentItem existingContentItem) {
|
||||||
|
|||||||
Reference in New Issue
Block a user