src/pyams_content/component/paragraph/zmi/video.py
changeset 489 dcdb0ce828f8
parent 487 093f201e3168
child 527 5dd1aa8bedd9
--- a/src/pyams_content/component/paragraph/zmi/video.py	Tue Mar 20 13:50:46 2018 +0100
+++ b/src/pyams_content/component/paragraph/zmi/video.py	Tue Mar 20 13:51:32 2018 +0100
@@ -185,10 +185,9 @@
                             'object_name': associations_table.id,
                             'table': associations_table.render()}
             })
-        if ('data' in updated) or ('renderer' in updated):
-            if 'data' in updated:
-                # we have to commit transaction to be able to handle blobs...
-                ITransactionManager(self.context).get().commit()
+        if 'data' in updated:
+            # we have to commit transaction to be able to handle blobs...
+            ITransactionManager(self.context).get().commit()
             form = VideoParagraphPropertiesInnerEditForm(self.context, self.request)
             form.update()
             output.setdefault('events', []).append({
@@ -201,6 +200,21 @@
                     'content': form.render()
                 }
             })
+        elif 'renderer' in updated:
+            form = VideoParagraphPropertiesInnerEditForm(self.context, self.request)
+            form.update()
+            output.setdefault('events', []).append({
+                'event': 'myams.refresh',
+                'options': {
+                    'handler': 'MyAMS.skin.refreshWidget',
+                    'parent_id': '{0}_{1}_{2}'.format(
+                        self.context.__class__.__name__,
+                        getattr(form.getContent(), '__name__', 'noname').replace('++', ''),
+                        form.id),
+                    'widget_name': form.widgets['renderer'].name,
+                    'content': form.widgets['renderer'].render()
+                }
+            })
         return output