src/pyams_content/shared/blog/interfaces/__init__.py
changeset 297 4f385d0a5ce7
parent 291 ec12c83bc8a5
child 492 04503227569d
--- a/src/pyams_content/shared/blog/interfaces/__init__.py	Tue Nov 28 17:24:57 2017 +0100
+++ b/src/pyams_content/shared/blog/interfaces/__init__.py	Tue Nov 28 17:25:50 2017 +0100
@@ -16,13 +16,15 @@
 # import standard library
 
 # import interfaces
-from pyams_content.shared.common.interfaces import ISharedSite, ISharedTool, IWfSharedContent, ISharedContent
+from pyams_content.shared.common.interfaces import ISharedSite, ISharedTool, IWfSharedContent, ISharedContent, \
+    IDeletableElement
 from pyams_sequence.interfaces import ISequentialIdTarget
 from pyams_workflow.interfaces import IWorkflowPublicationSupport
 from zope.container.interfaces import IContainer
 
 # import packages
 from zope.container.constraints import containers, contains
+from zope.interface import Attribute
 
 from pyams_content import _
 
@@ -35,20 +37,22 @@
     """Blog topic interface"""
 
 
-class IBlogPost(ISharedContent):
+class IBlogPost(ISharedContent, IDeletableElement):
     """Workflow managed blog post interface"""
 
     containers('.IBlogFolder')
 
 
-class IBlogFolder(IContainer):
+class IBlogFolder(IContainer, IDeletableElement):
     """Blog folder interface"""
 
     containers('.IBlogManager', '.IBlogFolder')
     contains('.IBlogFolder', '.IBlogPost')
 
 
-class IBlogManager(ISharedSite, ISharedTool, IWorkflowPublicationSupport, ISequentialIdTarget):
+class IBlogManager(ISharedSite, ISharedTool, IWorkflowPublicationSupport, IDeletableElement, ISequentialIdTarget):
     """Blog manager interface"""
 
     contains(IBlogFolder)
+
+    folder_factory = Attribute("Blog folder factory")