pepper.com platforms don't work with seamonkey anymore
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
pepper.com platforms don't work with seamonkey anymore
Since yesterday the pepper.com shopping deal platforms stops working with seamonkey (tested 2.53.4 + 2.53.5b1 Linux 64bit with fresh profile): A lot of elements are just grey rectangles and I cannot click accept-buttons in the cookie-dialog.
Other browsers (firefox, chromium, opera) works without problems on this plattform.
Other browsers (firefox, chromium, opera) works without problems on this plattform.
Last edited by Kermit00 on November 7th, 2020, 1:27 am, edited 1 time in total.
-
- Posts: 290
- Joined: August 7th, 2015, 9:15 am
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
Re: pepper.com platforms don't work with seamonkey anymore
Linux 64 again don't work here: Did you test a national community like e.g. https://www.hotukdeals.com/
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
Re: pepper.com platforms don't work with seamonkey anymore
SM 2.57 from WG9s works, but a couple of my addons don't work there
-
- Posts: 290
- Joined: August 7th, 2015, 9:15 am
Re: pepper.com platforms don't work with seamonkey anymore
I have tested the nl and german sites without problems.
This site also just works fine here with 2.53.6Kermit00 wrote:Did you test a national community like e.g. https://www.hotukdeals.com/
-
- Posts: 48
- Joined: November 7th, 2020, 7:56 am
Re: pepper.com platforms don't work with seamonkey anymore
Yeah, looks like a SeaMonkey bug - it doesn't send cookies with requests for scripts of type "module", so the server returns 403, so the site breaks. Ironically, my old firefox 53 does send cookies and the server returns 200, but the browser doesn't understand the new syntax used in those scripts.
As a workaround, you can use a userscript that replaces scripts of type "module" with regular scripts. Something like this:
Source, in case pastebin goes down:
As a workaround, you can use a userscript that replaces scripts of type "module" with regular scripts. Something like this:
Code: Select all
https://pastebin.com/G3cqS2fz
Code: Select all
// ==UserScript==
// @id hotukdeals.com_fix_sm_module@z117::gmscripts
// @namespace z117::gmscripts
// @name hotukdeals.com_fix_sm_module
// @version 1.0
// @author z117
// @description HotUkDeals.com - fix loading of module scripts in SeaMonkey.
// @include *://www.hotukdeals.com/
// @include *://*.hotukdeals.com/
// @include *://www.hotukdeals.com/*
// @include *://*.hotukdeals.com/*
// @run-at document-start
// ==/UserScript==
+function()
{
function nl_to_arr(nl)
{
if ( ! nl) { return []; }
return nl instanceof Array ? nl : [].concat.apply([], nl);
}
new MutationObserver(function(mutations, observer){
observer.disconnect();
try {
mutations.forEach(function(m){
if (m.type !== "childList") { return; }
nl_to_arr(m.addedNodes).forEach(function(n){
if ( ! n || n.nodeType !== 1 /*ELEMENT_NODE*/) { return; }
if (n.nodeName.toLowerCase() !== "script") { return; }
if ( ! n.src || n.type !== "module") { return; }
var elm = document.createElement("script");
elm.type = "text/javascript";
elm.src = n.src;
(document.head || document.body || document.documentElement).appendChild(elm);
});
});
} finally {
observer.observe(document, {childList: true, subtree: true});
}
}).observe(document, {childList: true, subtree: true});
}();
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
Re: pepper.com platforms don't work with seamonkey anymore
Thanks for the workaround! Indeed, with the userscript activated I'm able to accept the cookie-dialog. But the missing elemtens/functions on the sites (grey rectangles) stay. So there seems to be more bugs/incompatibilities.
-
- Posts: 1361
- Joined: December 15th, 2015, 1:20 pm
Re: pepper.com platforms don't work with seamonkey anymore
www.hotukdeals.com needs dom.moduleScripts.enabled/set to true but this still has a few problems. Might even crash on some sites. It is on my short list but even the short list is a bit long
-
- Posts: 48
- Joined: November 7th, 2020, 7:56 am
Re: pepper.com platforms don't work with seamonkey anymore
Right, that workaround was for 2.53.2 which I didn't notice I was using at the time. Sorry for that. With 2.53.4 it's a bit different (and messy) story. It does send cookies for modules, so it gets those scripts just fine, but it also loads legacy versions of those module scripts, and this gets in the way later and you end up with a mix of old and new code calling each other, which doesn't go well (i get "ReferenceError: jQuery is not defined" in the console). So to make this work in 2.53.4, you also need to block scripts coming from "hotukdeals.com/assets/js/legacy/". You'll need an adblocker for this because this can't be done with a userscript. And if you want to use another site from their network, e.g. promodescuentos.com, you'll need to repeat all the steps for it, i.e. add 4 @include entries to the userscript and block scripts coming from "promodescuentos.com/assets/js/legacy/". Honestly, at this point I'd rather use a different browser version.
Also, I screwed up a bit with the @include directives in the userscript. They should go like this:
Also, I screwed up a bit with the @include directives in the userscript. They should go like this:
Code: Select all
// @include *://hotukdeals.com/
// @include *://*.hotukdeals.com/
// @include *://hotukdeals.com/*
// @include *://*.hotukdeals.com/*
-
- Posts: 48
- Joined: November 7th, 2020, 7:56 am
Re: pepper.com platforms don't work with seamonkey anymore
If you ever get around to this, here's something to sort out.frg wrote:http://www.hotukdeals.com needs dom.moduleScripts.enabled/set to true but this still has a few problems. Might even crash on some sites. It is on my short list but even the short list is a bit long :)
Enabled (set to true): loads the files (obviously), doesn't send cookies, and gets 403 because they use captcha: https://imgur.com/a/XQ9bIRj
Disabled (set to false): still loads the files, and sends cookies: https://imgur.com/a/OtJf5oD
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
Re: pepper.com platforms don't work with seamonkey anymore
Sorry, now I productivly changed to 2.53.6, but the userscript don't work anymore (also corrected the @include directives). I'm using Greasemonkey to mess up with userscripts.
But thanks for the tipp with "dom.moduleScripts.enabled"! With that workaround everything seems to work again! All jquery errors disappeared.
But thanks for the tipp with "dom.moduleScripts.enabled"! With that workaround everything seems to work again! All jquery errors disappeared.
-
- Posts: 48
- Joined: November 7th, 2020, 7:56 am
Re: pepper.com platforms don't work with seamonkey anymore
Well, since their legacy scripts seem to work just fine and only missing jquery, a simpler "solution" is to just load it and leave everything else alone. So here's a shorter version of the userscript that just loads jquery: https://pastebin.com/pMsDh9Yy
As for the userscript not working in 2.53.6, I have no idea, sorry. :) Maybe Greasemonkey uses a different matching algorithm for @includes (I'm using Scriptish) so the script doesn't get called at all. We could try to make it work, but only if *you* want to, but I think at this point it's not really necessary because it seems like you're already good with 2.53.6.
Code: Select all
// ==UserScript==
// @id hotukdeals.com_fix_sm_module@z117::gmscripts
// @namespace z117::gmscripts
// @name HotUkDeals.com - fix loading of jquery in SeaMonkey.
// @version 1.0
// @author z117
// @description
// @include *://hotukdeals.com/
// @include *://*.hotukdeals.com/
// @include *://hotukdeals.com/*
// @include *://*.hotukdeals.com/*
// @run-at document-start
// ==/UserScript==
+function()
{
new MutationObserver(function(mutations, observer){
var ins = document.head || document.body || document.documentElement;
if ( ! ins) { return; }
observer.disconnect();
var elm = document.createElement("script");
elm.type = "text/javascript";
elm.src = "/assets/js/jquery.js";
ins.appendChild(elm);
}).observe(document, {childList: true, subtree: true});
}();
-
- Posts: 7
- Joined: January 6th, 2018, 6:24 am
Re: pepper.com platforms don't work with seamonkey anymore
Thanks for your efforts! There are some other sites especially more and more forums, that are incompatible with seamonkey too (and dom.moduleScripts.enabled don't solve the problems): I can scroll endless down, but just empty page and no more text/replies are shown. I suppose it is caused by advertising.
I think it's not a good idea to do workarounds for every site with userscripts. I hope that these issues will be fixed in future releases. I also contacted pepper.com, because google online translations also don't work on the communities anymore.
I think it's not a good idea to do workarounds for every site with userscripts. I hope that these issues will be fixed in future releases. I also contacted pepper.com, because google online translations also don't work on the communities anymore.