src/pyams_content/component/paragraph/zmi/contact.py
changeset 432 a068d20dc9ae
parent 415 43f42d74cdb8
child 435 ce4ae073a7f7
equal deleted inserted replaced
431:a162e9f348f7 432:a068d20dc9ae
    30 
    30 
    31 # import packages
    31 # import packages
    32 from pyams_content.component.paragraph.contact import ContactParagraph
    32 from pyams_content.component.paragraph.contact import ContactParagraph
    33 from pyams_content.component.paragraph.zmi import BaseParagraphAddMenu, BaseParagraphAJAXAddForm, \
    33 from pyams_content.component.paragraph.zmi import BaseParagraphAddMenu, BaseParagraphAJAXAddForm, \
    34     BaseParagraphPropertiesEditForm, BaseParagraphAJAXEditForm
    34     BaseParagraphPropertiesEditForm, BaseParagraphAJAXEditForm
       
    35 from pyams_content.features.renderer.zmi import BaseRenderedContentPreview
    35 from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
    36 from pyams_content.features.renderer.zmi.widget import RendererFieldWidget
    36 from pyams_pagelet.pagelet import pagelet_config
    37 from pyams_pagelet.pagelet import pagelet_config
    37 from pyams_utils.adapter import adapter_config
    38 from pyams_utils.adapter import adapter_config
    38 from pyams_viewlet.viewlet import viewlet_config, BaseContentProvider
    39 from pyams_viewlet.viewlet import viewlet_config
    39 from pyams_zmi.form import AdminDialogAddForm
    40 from pyams_zmi.form import AdminDialogAddForm
    40 from pyramid.view import view_config
    41 from pyramid.view import view_config
    41 from z3c.form import field, button
    42 from z3c.form import field, button
    42 from zope.interface import implementer
    43 from zope.interface import implementer
    43 
    44 
   168 #
   169 #
   169 # Contact paragraph preview
   170 # Contact paragraph preview
   170 #
   171 #
   171 
   172 
   172 @adapter_config(context=(IContactParagraph, IPyAMSLayer), provides=IParagraphPreview)
   173 @adapter_config(context=(IContactParagraph, IPyAMSLayer), provides=IParagraphPreview)
   173 class ContactParagraphPreview(BaseContentProvider):
   174 class ContactParagraphPreview(BaseRenderedContentPreview):
   174     """Contact paragraph preview"""
   175     """Contact paragraph preview"""
   175 
   176 
   176     def __init__(self, context, request):
   177     context_attrs = ('name', 'photo', 'gps_location', 'address')
   177         super(ContactParagraphPreview, self).__init__(context, request)
   178     i18n_context_attrs = ('title', 'charge', )
   178         self.renderer = self.context.get_renderer()
       
   179 
       
   180     language = None
       
   181 
       
   182     def update(self):
       
   183         if self.renderer is not None:
       
   184             self.renderer.language = self.language
       
   185             self.renderer.update()
       
   186 
       
   187     def render(self):
       
   188         if self.renderer is not None:
       
   189             return self.renderer.render()
       
   190         else:
       
   191             return ''