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 |