from Products.CMFCore.TypesTool import FactoryTypeInformation
from Products.CMFCore.utils import getToolByName
from types import InstanceType
+import config
from AccessControl import ClassSecurityInfo, Unauthorized
from Products.CMFCore.permissions import View, ModifyPortalContent, \
def addMosaicBlockInformation(self, id=None, blockType = '', metaFti = None, REQUEST=None) :
"""Add a MosaicBlock"""
- mosaicTool = self.mosaic_tool
if blockType :
- metaFtis = mosaicTool.getDefaultBlockMetaFtis()
+ metaFtis = config.getDefaultBlockMetaFtis()
if not metaFtis.has_key(blockType) :
raise ValueError, "Unknown block type : %s" % blockType
else :
return FactoryTypeInformation._getFactoryMethod(self, container)
raise Unauthorized, ('Cannot create %s' % self.getId())
-
-
- security.declarePrivate('_finishConstruction')
- def _finishConstruction(self, ob) :
- """Finish the construction of a content block object."""
- if hasattr(ob, '_setPortalTypeName'):
- ob._setPortalTypeName(self.getId())
-
+
+
+ security.declarePrivate('_constructInstance')
+ def _constructInstance(self, container, id, *args, **kw):
+ ob = super(MosaicBlockInformation, self)._constructInstance(container, id, *args, **kw)
typesTool = getToolByName(self, 'portal_types')
# Add and init slots in block
kw[key] = value
typesTool.constructContent(si.type, ob, si.id, **kw)
-
- if self.notify_wf :
- ob.notifyWorkflowCreated()
return ob