src/pyams_content/component/paragraph/zmi/frame.py
changeset 489 dcdb0ce828f8
parent 487 093f201e3168
child 507 7320a5522ee1
equal deleted inserted replaced
488:826448236ec9 489:dcdb0ce828f8
   205 class FrameParagraphInnerAJAXEditForm(BaseParagraphAJAXEditForm, FrameParagraphInnerEditForm):
   205 class FrameParagraphInnerAJAXEditForm(BaseParagraphAJAXEditForm, FrameParagraphInnerEditForm):
   206     """Framed text paragraph inner edit form, JSON renderer"""
   206     """Framed text paragraph inner edit form, JSON renderer"""
   207 
   207 
   208     def get_ajax_output(self, changes):
   208     def get_ajax_output(self, changes):
   209         output = super(FrameParagraphInnerAJAXEditForm, self).get_ajax_output(changes)
   209         output = super(FrameParagraphInnerAJAXEditForm, self).get_ajax_output(changes)
   210         if 'renderer' in changes.get(IFrameParagraph, ()):
   210         updated = changes.get(IFrameParagraph, ())
       
   211         if 'renderer' in updated:
   211             form = FrameParagraphInnerEditForm(self.context, self.request)
   212             form = FrameParagraphInnerEditForm(self.context, self.request)
   212             form.update()
   213             form.update()
   213             output.setdefault('events', []).append({
   214             output.setdefault('events', []).append({
   214                 'event': 'myams.refresh',
   215                 'event': 'myams.refresh',
   215                 'options': {
   216                 'options': {
   216                     'object_id': '{0}_{1}_{2}'.format(
   217                     'handler': 'MyAMS.skin.refreshWidget',
       
   218                     'parent_id': '{0}_{1}_{2}'.format(
   217                         self.context.__class__.__name__,
   219                         self.context.__class__.__name__,
   218                         getattr(form.getContent(), '__name__', 'noname').replace('++', ''),
   220                         getattr(form.getContent(), '__name__', 'noname').replace('++', ''),
   219                         form.id),
   221                         form.id),
   220                     'content': form.render()
   222                     'widget_name': form.widgets['renderer'].name,
       
   223                     'content': form.widgets['renderer'].render()
   221                 }
   224                 }
   222             })
   225             })
   223         return output
   226         return output
   224 
   227 
   225 
   228