0

We have a page with a rich text editor. If the content being edited contains an image and the user is using Firefox and they have the Pinterest browser button installed, then the following HTML gets added to the end of the rich text content in the editor. You can see it in there using the Source button in the editor's toolbar and when the form is submitted, the added HTML gets included with it and sent to the server.

<p><span style="border-radius: 2px; text-indent: 20px; width: auto; padding: 0px 4px 0px 0px; text-align: center; font: bold 11px/20px &quot;Helvetica Neue&quot;,Helvetica,sans-serif; color: rgb(255, 255, 255); background: rgb(189, 8, 28) url(&quot;data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMzBweCIgd2lkdGg9IjMwcHgiIHZpZXdCb3g9Ii0xIC0xIDMxIDMxIj48Zz48cGF0aCBkPSJNMjkuNDQ5LDE0LjY2MiBDMjkuNDQ5LDIyLjcyMiAyMi44NjgsMjkuMjU2IDE0Ljc1LDI5LjI1NiBDNi42MzIsMjkuMjU2IDAuMDUxLDIyLjcyMiAwLjA1MSwxNC42NjIgQzAuMDUxLDYuNjAxIDYuNjMyLDAuMDY3IDE0Ljc1LDAuMDY3IEMyMi44NjgsMC4wNjcgMjkuNDQ5LDYuNjAxIDI5LjQ0OSwxNC42NjIiIGZpbGw9IiNmZmYiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLXdpZHRoPSIxIj48L3BhdGg+PHBhdGggZD0iTTE0LjczMywxLjY4NiBDNy41MTYsMS42ODYgMS42NjUsNy40OTUgMS42NjUsMTQuNjYyIEMxLjY2NSwyMC4xNTkgNS4xMDksMjQuODU0IDkuOTcsMjYuNzQ0IEM5Ljg1NiwyNS43MTggOS43NTMsMjQuMTQzIDEwLjAxNiwyMy4wMjIgQzEwLjI1MywyMi4wMSAxMS41NDgsMTYuNTcyIDExLjU0OCwxNi41NzIgQzExLjU0OCwxNi41NzIgMTEuMTU3LDE1Ljc5NSAxMS4xNTcsMTQuNjQ2IEMxMS4xNTcsMTIuODQyIDEyLjIxMSwxMS40OTUgMTMuNTIyLDExLjQ5NSBDMTQuNjM3LDExLjQ5NSAxNS4xNzUsMTIuMzI2IDE1LjE3NSwxMy4zMjMgQzE1LjE3NSwxNC40MzYgMTQuNDYyLDE2LjEgMTQuMDkzLDE3LjY0MyBDMTMuNzg1LDE4LjkzNSAxNC43NDUsMTkuOTg4IDE2LjAyOCwxOS45ODggQzE4LjM1MSwxOS45ODggMjAuMTM2LDE3LjU1NiAyMC4xMzYsMTQuMDQ2IEMyMC4xMzYsMTAuOTM5IDE3Ljg4OCw4Ljc2NyAxNC42NzgsOC43NjcgQzEwLjk1OSw4Ljc2NyA4Ljc3NywxMS41MzYgOC43NzcsMTQuMzk4IEM4Ljc3NywxNS41MTMgOS4yMSwxNi43MDkgOS43NDksMTcuMzU5IEM5Ljg1NiwxNy40ODggOS44NzIsMTcuNiA5Ljg0LDE3LjczMSBDOS43NDEsMTguMTQxIDkuNTIsMTkuMDIzIDkuNDc3LDE5LjIwMyBDOS40MiwxOS40NCA5LjI4OCwxOS40OTEgOS4wNCwxOS4zNzYgQzcuNDA4LDE4LjYyMiA2LjM4NywxNi4yNTIgNi4zODcsMTQuMzQ5IEM2LjM4NywxMC4yNTYgOS4zODMsNi40OTcgMTUuMDIyLDYuNDk3IEMxOS41NTUsNi40OTcgMjMuMDc4LDkuNzA1IDIzLjA3OCwxMy45OTEgQzIzLjA3OCwxOC40NjMgMjAuMjM5LDIyLjA2MiAxNi4yOTcsMjIuMDYyIEMxNC45NzMsMjIuMDYyIDEzLjcyOCwyMS4zNzkgMTMuMzAyLDIwLjU3MiBDMTMuMzAyLDIwLjU3MiAxMi42NDcsMjMuMDUgMTIuNDg4LDIzLjY1NyBDMTIuMTkzLDI0Ljc4NCAxMS4zOTYsMjYuMTk2IDEwLjg2MywyNy4wNTggQzEyLjA4NiwyNy40MzQgMTMuMzg2LDI3LjYzNyAxNC43MzMsMjcuNjM3IEMyMS45NSwyNy42MzcgMjcuODAxLDIxLjgyOCAyNy44MDEsMTQuNjYyIEMyNy44MDEsNy40OTUgMjEuOTUsMS42ODYgMTQuNzMzLDEuNjg2IiBmaWxsPSIjYmQwODFjIj48L3BhdGg+PC9nPjwvc3ZnPg==&quot;) no-repeat scroll 3px 50% / 14px 14px; position: absolute; opacity: 0.85; z-index: 8675309; display: none; cursor: pointer; border: medium none; top: 520px; left: 1368px;">Save</span></p>

The embedded background image is the pinterest icon. This happens on both Windows and Mac, but only in Firefox. Does not happen in Chrome or Safari. I was unable to test IE11 because the button failed to install.

Is there a way to prevent plugins from modifying rich text editor content? Or, is there a way to tell the pinterest plugin specifically to stay out of the editor or even just the page?

Josh Coady
  • 2,089
  • 2
  • 18
  • 25
  • 1
    Possible duplicate of [How to stop extensions/add ons like grammarly on contenteditable editors](http://stackoverflow.com/questions/37444906/how-to-stop-extensions-add-ons-like-grammarly-on-contenteditable-editors) – the8472 Jul 29 '16 at 04:27

1 Answers1

0

The short answer is that you can't prevent a Firefox add-on from modifying your webpage, if the extension desires to do so. Firefox add-ons run with the privileges of the browser. Thus, they can have complete control over what is displayed, how it is displayed, or even if your page is displayed at all. Your question is, at its essence, the same as "Can I prevent the Firefox browser from displaying my page the way that Firefox wants to display it?"

You have to work with the fact that it is going to do whatever it is choosing to do. If you desire your website to work with the Firefox browser with this extension installed you must work around whatever it is that the extension is doing to your website.

There are a variety of possible strategies (not an all-inclusive list):

  1. Contact Pinerest and inform them of the problem. It sounds like the add-on is causing harm to your website. This is probably not intentional. Have them file a bug. If it is affecting your site, it is probably affecting others.

  2. Have your server detect the additional HTML code in the input and just automatically remove it.

  3. Experiment with different HTML structures for your webpage to try to find one that results in the extension putting the code somewhere it does not get included in the data sent to your server.

    If it was me, I would take a good look at the source code for the Pinterest add-on. Like most Firefox add-ons, it is plain JavaScript. You should be able to determine the criteria that it is using to choose where to put the HTML code it is inserting. Once you know that, it should be reasonably easy to design your page such that the add-on does not interfere with something you care about. To save you a bit of searching, the URL for the add-on is, currently, here. You should use "Save Link As" to save that .xpi file to somewhere. Then change the .xpi file extension to .zip. You should then be able to extract all the files for the add-on from the package. It is a normal bootstrapped add-on.

Community
  • 1
  • 1
Makyen
  • 31,849
  • 12
  • 86
  • 121
  • 1. Tried this, but their contact form wouldnt let me submit (and also doesnt let me select an appropriate product). I will try again, maybe not including the html. 2. This was my fallback, but was hoping for something better because it could break if they change their html format. 3. Taking a look now, hopefully they have some undocumented keepaway tag.. – Josh Coady Aug 01 '16 at 17:16