1

Embedding video content is possible only using a simple text editor. Using WYSIWYG dialog data is serialized in the tag which is showing blank white space on the product page.

If IFrame is inserted with a simple text editor it works fine on the product page, but when someone makes an edit with WYSIWYG editor, the code gets also transformed in the code which is showing blank space on the product page.

<iframe width="560" height="315" src="https://www.youtube.com/embed/XXXXXXXXXX" frameborder="0" allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
<p><img height="315" src="http://hajdi.test/js/tiny_mce/themes/advanced/img/trans.gif" width="560" data-mce-json="{'video':{},'params':{'src':'https://www.youtube.com/embed/XXXXXXXXXX','frameborder':'0'},'hspace':null,'vspace':null,'align':null,'bgcolor':null}" /></p>

Looks like a bug same as described here: https://github.com/magento/magento2/issues/18550

I have exactly the same problem with Magento 1.9.4.4.

2 Answers 2

1

The error originates in js/tiny_mce/plugins/media/editor_plugin.js where there is a wrong (= not minified) variable name used, but as the validation is within the aforementioned try-catch statement, execution fails silently.

try{G=JSON.parse(G);}catch(e){return;}

needs to be

try{G=h.parse(G);}catch(e){return;}
0

I had the same problem with Magento 1.9.4.3, I resolved it as described below:

in the file: js/tiny_mce/plugins/media/editor_plugin_src.js, i replaced this line:

try {
  data = JSON.parse (data);
} catch (e) {
  return;
}

by this one :

data = JSON.parse (data);

and I minify this file, then I copy the content of this file to the file : js/tiny_mce/plugins/media/editor_plugin.js

I hope that help you

1
  • I have already solved the problem by updating the whole TinyMCE js library to the latest version of 3.x > 3.5.12. Just checked if there was a change you described and it was. Maybe this change is really all that is needed, but updating the whole library also can't be wrong, right? Thank you for your answer!
    – Jure
    May 5, 2020 at 10:19

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.