Shop not working with Firefox
in The Commons
Hi,
I have Firefox 51, and I cannot use the shop. As soon as I log in (normal login does not work, have to go over forum), I only get empty pages in shop. And the my-account button on the top-right is empty if clicked on.
Am I the only one with this problem? I now use Chromium and the problem went away.

Comments
...I'm using th latest FF nd the store looks and works fine for me.
This sounds very similar to my experience until I had NoScript stop blocking Google-Analytics.com.
Confirmed. For some odd reason the shop does not work when you block the tracking stuff. Please reconsider, that's not a nice move to bind shop functionality to external tracking at all.
Where can I opt-out, btw.?
I've got exactly the same issue, it started in the middle of last week I think. No log in popup, and no thumbnails on the store until Google-analytics is allowed. I've got an support ticket open about it.
Pretty sure you can block google-analytics, it's ajax.googleapis (and daz3d) you need to allow. At least that works for me with FF/NoScript.
not for me, without the .. analytics.. no full functionality for me
It does look as if this may be a NoScript issue at heart, rather than something Daz has done.
Interesting. I'm on my Graphics machine and don't generaly bother with NoScript because I only visit here, Rendo, Hive, Corel, Smith-Micro etc but I just did a check and had no problems up to authorizing payment (didn't try). But on checking I'm still on FF 50?
EDIOT: Damed spelling.
Had a few spare minutes, this is what I've found out:
When GA is blocked, there is a script error which breaks the scripts after it, which are essential.
The culprit is this part:
where the cxApi call for whatever reason does not return an integer, but an object, which cannot be casted to int. This breaks the scripts in line #77, where doorNumber is referenced for the first time.
This is the error in the console:
Don't have the time to dig into it, but a check of the return value for an object should do the trick. Since everything is an object in JS, that is a tad more than a one-liner.
Something like:
Where is_integer does not exist, but needs to be added. Here's a quick stack link - don't go for the first solution, but the second one.
Thank you! :)
I'll pass that on, thank you.
Apparently - I've got Privacy Badger blocking google analytics on firefox 50.1.0 and everything works correctly.
Yeh, but I like blocking Google.
Given that this appears to be an issue with a specific plug-in, and that the Daz site generally relies on scripting for many of its features, Daz isn't going to try tinkering with the code to resolve it on their side. Those of us affected have several options, including
for now I'm going with the second option, if the NoScript developers aren't able to resolve whatever the issue is on their side I'll choose between the other two.
Ok, will do that. But missed a sale because of it :-(
Also, this will allow google-analytics for all browser tabs. And I really don't like that, because it is all over the web...
I spent some more time on it, trying to fix it with GreaseMonkey. It's indeed a little bit complicated due to cxApi being a proxy object. Quite difficult to intercept the scripts at the right time to rewrite them. :-/
I don't think a lot has to be changed and I don't think it will break anything. You just have to add an additional check and not blindly assume chooseVariation() will return what it should.
What you want to do is, as said, to check doorNumber for actually being a Number, before you try to cast it to a string, which fails right now:
doorNumber = cxApi.chooseVariation();
to
doorNumber = cxApi.chooseVariation();
if (typeof doorNumber != 'number') doorNumber = 0;
Not 100% sure if that will do the trick, as said, cannot test it that good with the "inject+rewrite" method, I'm sure DAZ devs can test that way easier. But please, at least give it a try. :)
True, though it dpends on how many sites you check at once - I generally close the browser after catching up with the forum, so it affects only Daz and any sites I visit while at Daz.
Support told me, that this is not going to be fixed and that I am supposed to change my browser-setup...
Excluding a growing number of careful users vs fixing a oneliner does not shine a good light on operations.
3hrs later:
the faulty snipped has been improved with a try-catch block, thank you for fixing the problem, now if you could make the login-cookie last more than a few days :)
Still not working for me with Firefox.
Not impressed, especially if it's just a matter of not verifying input(s) as suggested by Mork's investigation. That's pretty basic and will bite you (DAZ) sooner or later.
Yep, this is bugging me also with FF, especially when it WAS working fine for the longest time and now I have to enable something else in the scripts to get the store to work, not cool. I also find this to be the case on 3 other sites i frequent, not happy.
yep, same here!
Even with google-analytics allowed it's not working; log-in drop-down doesn't show with Firefox.
Alternativly Edge works but looses log-in-info (cookie) on a day-by-day basis. I don't know, how much longer I will keep up with this inconvenience.
Shopping on the internet should be as smooth as it gets. Leaving the logged-in-status once a week or so isn't already "as smooth as it gets", but that's DAZ. I learned to cope with this. Now: my browser of choice doesn't work at all; alternative-browser wants me every time to log in again and if I buy something the DIM download button does nothing. I have to start DIM manually, sort by order date, hide all the stupid updates (which show mostly only because of some meta-data-changes) ... wtf?
I have only ajax.googleapis.com and google-analytics.com to enable log-in and see the Bonus Buyer banner.
I am the opposite. I leave everything open for months. Until the browser gets slower (maybe at about 400-800 tabs). Then I start a new session or clean the current one up.
I've changed my Firefox settings; certain stuff gets deleted when closing.
I'm on Waterfox, shop stopped working for me today as well. Allowing Google is not an option, so I guess I'll just have to stop shopping here. Not a big deal tho since there hasn't been much for me to buy lately anyway, but it's still sad.
It seems not to be NoScript. I allowed every script to no avail.
I have only three add-ons/extensions in Firefox. NoScript, Classic Theme Restorer and uBlock Origin. Excluding DAZ from uBlock resolves the issue for me; login is possible and works.
If anyone has problems and uBlock installed, try to disable it for DAZ. If no add-blocker installed and only NoScript try Richard's advice. There seems to be some interaction between different privacy solutions, which should be worked out by the DAZ web-developers. I'm only a database-guy, couldn't find out, which blocked web-element stopped DAZ working.
Fun thing, I disabled google-analytics and the login stopped working again. So you need to disable add-blocker and allow google-analytics, what makes DAZ a possible unsafe site and surely a marketing tracking site. No good.
Several days later and the store is still not working.
How many potential customers never bother posting on forums, they just shrug their shoulders and move on to other 3D vendors? Other sites work just fine.
Normally I would expect a company to make it a priority to enable customers to buy things from them, but DAZ seems to be fine with chasing them away. Especially odd when, from the only we have information available, the problem is a sloppy bit of programming that should be fixed anyway. Oh well, yesterday I ended up spending my money over on a competitor's site.
You can try uninstalling noscript and reinstall an older version https://addons.mozilla.org/fr/firefox/addon/noscript/versions/
Curiously noscript jumped to V5 in March and I get the problem with FF51 and latest version
FF45 + noscript 2.9.14 seems to have no problem when just allowing Daz3D and googleapis
I had the same problem with Firefox 52 but have fixed it using the advice above. To summarise:
1. If you're running NoScript, allow google-analytics.com and googleadservices.com.
2. If you're running uBlock Origin, use Advanced mode to allow both of those domains, but only on the daz3d.com web site. (Click the "+" sign in the right-hand column next to those two domains.)
a few days ago it appeared to work for me; but the catch{} expression they have added does not encompass the problematic line anymore, you're still accessing a return value of possibly unknown (as it is from a remote site) value.
Interesting, that this is an "Experiment" function, seems pretty experimental to me ;)
var doorNumber = 0;
try {
doorNumber = cxApi.chooseVariation();
} catch (e) {}
$(document).ready(function() {
var bodyElem = document.getElementsByTagName('body')[0];
bodyElem.className = bodyElem.className + " door_number_"+doorNumber; <-- oh look, i cannot convert this to a primitive type
});