diff -r a5e56749ca3d -r 3d259e1718ef src/pyams_content/component/paragraph/zmi/preview.py --- a/src/pyams_content/component/paragraph/zmi/preview.py Fri Oct 12 14:33:03 2018 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,56 +0,0 @@ -# -# Copyright (c) 2008-2015 Thierry Florac -# All Rights Reserved. -# -# This software is subject to the provisions of the Zope Public License, -# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution. -# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED -# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED -# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS -# FOR A PARTICULAR PURPOSE. -# - -__docformat__ = 'restructuredtext' - - -# import standard library - -# import interfaces -from pyams_content.component.paragraph.interfaces import IParagraphContainerTarget, IParagraphContainer, \ - IParagraphRenderer -from pyams_content.features.renderer.interfaces import ISharedContentRenderer -from pyams_skin.layer import IPyAMSLayer - -# import packages -from pyams_content.features.renderer.skin import BaseContentRenderer -from pyams_utils.adapter import adapter_config - - -@adapter_config(name='paragraphs-render', context=(IParagraphContainerTarget, IPyAMSLayer), - provides=ISharedContentRenderer) -class ParagraphsContainerRenderer(BaseContentRenderer): - """Paragraphs container renderer""" - - weight = 10 - - def __init__(self, context, request): - super(ParagraphsContainerRenderer, self).__init__(context, request) - paragraphs = [para for para in IParagraphContainer(self.context).values() - if para.visible] - registry = self.request.registry - self.renderers = [registry.queryMultiAdapter((paragraph, self.request), IParagraphRenderer) - for paragraph in paragraphs] - - def update(self): - super(ParagraphsContainerRenderer, self).update() - for renderer in self.renderers: - if renderer is not None: - renderer.language = self.language - renderer.update() - - def render(self): - result = '' - for renderer in self.renderers: - if renderer is not None: - result += renderer.render() - return result