--- a/src/pyams_content/shared/common/types.py Sun Jan 06 18:39:25 2019 +0100
+++ b/src/pyams_content/shared/common/types.py Mon Jan 07 09:58:55 2019 +0100
@@ -12,55 +12,51 @@
__docformat__ = 'restructuredtext'
+from persistent import Persistent
+from pyramid.events import subscriber
+from zope.container.contained import Contained
+from zope.container.ordered import OrderedContainer
+from zope.interface import implementer
+from zope.lifecycleevent.interfaces import IObjectAddedEvent
+from zope.location.interfaces import ISublocations
+from zope.schema import getFieldsInOrder
+from zope.schema.fieldproperty import FieldProperty
+from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
+from zope.traversing.interfaces import ITraversable
-# import standard library
-
-# import interfaces
from pyams_content.component.extfile.interfaces import IExtFileContainerTarget
from pyams_content.component.links.interfaces import ILinkContainerTarget
from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget
from pyams_content.component.theme.interfaces import IThemesTarget, IThemesInfo
from pyams_content.interfaces import MANAGE_TOOL_PERMISSION
+from pyams_content.shared.common import WfSharedContent, IWfSharedContentFactory
from pyams_content.shared.common.interfaces import ISharedContentFactory
from pyams_content.shared.common.interfaces.types import IDataType, ISubType, IBaseDataType, ITypedSharedTool, \
ITypedDataManager, DATA_MANAGER_ANNOTATION_KEY, DATA_TYPES_VOCABULARY, DATA_TYPE_FIELDS_VOCABULARY, \
IWfTypedSharedContent, DATA_SUBTYPES_VOCABULARY, ALL_DATA_TYPES_VOCABULARY
+from pyams_content.shared.common.manager import SharedTool
from pyams_form.interfaces.form import IFormContextPermissionChecker
from pyams_i18n.interfaces import II18n
-from zope.lifecycleevent.interfaces import IObjectAddedEvent
-from zope.location.interfaces import ISublocations
-from zope.traversing.interfaces import ITraversable
-
-# import packages
-from persistent import Persistent
-from pyams_content.shared.common import WfSharedContent, IWfSharedContentFactory
-from pyams_content.shared.common.manager import SharedTool
+from pyams_sequence.reference import get_reference_target
from pyams_utils.adapter import adapter_config, ContextAdapter, get_annotation_adapter
from pyams_utils.registry import get_local_registry
from pyams_utils.request import check_request
from pyams_utils.traversing import get_parent
from pyams_utils.vocabulary import vocabulary_config
-from pyramid.events import subscriber
-from zope.container.contained import Contained
-from zope.container.ordered import OrderedContainer
-from zope.interface import implementer
-from zope.schema import getFieldsInOrder
-from zope.schema.fieldproperty import FieldProperty
-from zope.schema.vocabulary import SimpleVocabulary, SimpleTerm
class BaseDataType(Persistent, Contained):
"""Base data type"""
label = FieldProperty(IBaseDataType['label'])
+ source_folder = FieldProperty(IBaseDataType['source_folder'])
navigation_label = FieldProperty(IBaseDataType['navigation_label'])
- tabfolder_label = FieldProperty(IBaseDataType['tabfolder_label'])
- seealso_label = FieldProperty(IBaseDataType['seealso_label'])
- single_label = FieldProperty(IBaseDataType['single_label'])
- seeall_label = FieldProperty(IBaseDataType['seeall_label'])
- next_label = FieldProperty(IBaseDataType['next_label'])
pictogram = FieldProperty(IBaseDataType['pictogram'])
+ def get_source_folder(self):
+ if self.source_folder is not None:
+ return get_reference_target(self.source_folder)
+
@implementer(ISubType, IParagraphContainerTarget, IExtFileContainerTarget, ILinkContainerTarget)
class SubType(BaseDataType):