31 |
31 |
32 # import packages |
32 # import packages |
33 from pyams_content.component.gallery.paragraph import Gallery |
33 from pyams_content.component.gallery.paragraph import Gallery |
34 from pyams_content.component.paragraph.zmi import BaseParagraphAJAXAddForm, BaseParagraphAJAXEditForm, \ |
34 from pyams_content.component.paragraph.zmi import BaseParagraphAJAXAddForm, BaseParagraphAJAXEditForm, \ |
35 BaseParagraphAddMenu, BaseParagraphPropertiesEditForm |
35 BaseParagraphAddMenu, BaseParagraphPropertiesEditForm |
|
36 from pyams_content.features.renderer.zmi import BaseRenderedContentPreview |
36 from pyams_content.features.renderer.zmi.widget import RendererFieldWidget |
37 from pyams_content.features.renderer.zmi.widget import RendererFieldWidget |
37 from pyams_content.shared.common.zmi import WfSharedContentPermissionMixin |
38 from pyams_content.shared.common.zmi import WfSharedContentPermissionMixin |
38 from pyams_pagelet.pagelet import pagelet_config |
39 from pyams_pagelet.pagelet import pagelet_config |
39 from pyams_skin.viewlet.toolbar import ToolbarAction |
40 from pyams_skin.viewlet.toolbar import ToolbarAction |
40 from pyams_template.template import template_config |
41 from pyams_template.template import template_config |
41 from pyams_utils.adapter import adapter_config |
42 from pyams_utils.adapter import adapter_config |
42 from pyams_utils.url import absolute_url |
43 from pyams_utils.url import absolute_url |
43 from pyams_viewlet.viewlet import viewlet_config, BaseContentProvider |
44 from pyams_viewlet.viewlet import viewlet_config |
44 from pyams_zmi.form import AdminDialogAddForm, InnerAdminDisplayForm |
45 from pyams_zmi.form import AdminDialogAddForm, InnerAdminDisplayForm |
45 from pyramid.view import view_config |
46 from pyramid.view import view_config |
46 from z3c.form import field, button |
47 from z3c.form import field, button |
47 from zope.interface import implementer, Interface |
48 from zope.interface import implementer, Interface |
48 |
49 |
182 modal_target = True |
183 modal_target = True |
183 stop_propagation = True |
184 stop_propagation = True |
184 |
185 |
185 |
186 |
186 # |
187 # |
187 # Gallery paragraph summary |
188 # Gallery paragraph preview |
188 # |
189 # |
189 |
190 |
190 @adapter_config(context=(IGalleryParagraph, IPyAMSLayer), provides=IParagraphPreview) |
191 @adapter_config(context=(IGalleryParagraph, IPyAMSLayer), provides=IParagraphPreview) |
191 class GalleryParagraphPreview(BaseContentProvider): |
192 class GalleryParagraphPreview(BaseRenderedContentPreview): |
192 """Gallery preview""" |
193 """Gallery preview""" |
193 |
|
194 def __init__(self, context, request): |
|
195 super(GalleryParagraphPreview, self).__init__(context, request) |
|
196 self.renderer = self.context.get_renderer(request) |
|
197 |
|
198 language = None |
|
199 |
|
200 def update(self): |
|
201 if self.renderer is not None: |
|
202 self.renderer.language = self.language |
|
203 self.renderer.update() |
|
204 |
|
205 def render(self): |
|
206 if self.renderer is not None: |
|
207 return self.renderer.render() |
|
208 else: |
|
209 return '' |
|