--- a/src/pyams_content/shared/common/types.py Tue Jul 17 17:59:54 2018 +0200
+++ b/src/pyams_content/shared/common/types.py Tue Jul 17 18:01:26 2018 +0200
@@ -9,9 +9,6 @@
# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
# FOR A PARTICULAR PURPOSE.
#
-from pyams_content.shared.common.interfaces import ISharedContentFactory
-from pyams_utils.interfaces import ICacheKeyValue
-from pyams_utils.registry import get_local_registry
__docformat__ = 'restructuredtext'
@@ -24,6 +21,7 @@
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.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
@@ -38,6 +36,7 @@
from pyams_content.shared.common import WfSharedContent, IWfSharedContentFactory
from pyams_content.shared.common.manager import SharedTool
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
@@ -168,17 +167,17 @@
def get_all_data_types(request):
- """Get list of all registered data types"""
+ """Get list of all registered data types as JSON object"""
results = []
registry = get_local_registry()
for tool in sorted(registry.getAllUtilitiesRegisteredFor(ITypedSharedTool),
key=lambda x: II18n(x).query_attribute('title', request=request)):
- content_factory = IWfSharedContentFactory(ISharedContentFactory(tool))
manager = ITypedDataManager(tool)
terms = [{
'id': datatype.__name__,
'text': II18n(datatype).query_attribute('label', request=request)
} for datatype in manager.values()]
+ content_factory = IWfSharedContentFactory(ISharedContentFactory(tool))
results.append({
'text': request.localizer.translate(content_factory.content_name),
'disabled': True,