137 class VerbatimParagraphInnerAJAXEditForm(BaseParagraphAJAXEditForm, VerbatimParagraphInnerEditForm): |
137 class VerbatimParagraphInnerAJAXEditForm(BaseParagraphAJAXEditForm, VerbatimParagraphInnerEditForm): |
138 """Verbatim paragraph inner edit form, JSON renderer""" |
138 """Verbatim paragraph inner edit form, JSON renderer""" |
139 |
139 |
140 def get_ajax_output(self, changes): |
140 def get_ajax_output(self, changes): |
141 output = super(VerbatimParagraphInnerAJAXEditForm, self).get_ajax_output(changes) |
141 output = super(VerbatimParagraphInnerAJAXEditForm, self).get_ajax_output(changes) |
142 if 'renderer' in changes.get(IVerbatimParagraph, ()): |
142 updated = changes.get(IVerbatimParagraph, ()) |
|
143 if 'renderer' in updated: |
143 form = VerbatimParagraphInnerEditForm(self.context, self.request) |
144 form = VerbatimParagraphInnerEditForm(self.context, self.request) |
144 form.update() |
145 form.update() |
145 output.setdefault('events', []).append({ |
146 output.setdefault('events', []).append({ |
146 'event': 'myams.refresh', |
147 'event': 'myams.refresh', |
147 'options': { |
148 'options': { |
148 'object_id': '{0}_{1}_{2}'.format( |
149 'handler': 'MyAMS.skin.refreshWidget', |
|
150 'parent_id': '{0}_{1}_{2}'.format( |
149 self.context.__class__.__name__, |
151 self.context.__class__.__name__, |
150 getattr(form.getContent(), '__name__', 'noname').replace('++', ''), |
152 getattr(form.getContent(), '__name__', 'noname').replace('++', ''), |
151 form.id), |
153 form.id), |
152 'content': form.render() |
154 'widget_name': form.widgets['renderer'].name, |
|
155 'content': form.widgets['renderer'].render() |
153 } |
156 } |
154 }) |
157 }) |
155 return output |
158 return output |
156 |
159 |
157 |
160 |