proper cross browser dnt support

This commit is contained in:
joshinat0r 2020-08-21 11:51:42 +02:00
parent 4a3ce9acba
commit aebf3c7022
2 changed files with 14 additions and 2 deletions

View File

@ -46,3 +46,15 @@ export const hook = (_this, method, callback) => {
return orig.apply(_this, args);
};
};
export const doNotTrack = () => {
if (window.doNotTrack || navigator.doNotTrack || navigator.msDoNotTrack || 'msTrackingProtectionEnabled' in window.external) {
if (window.doNotTrack == "1" || navigator.doNotTrack == "yes" || navigator.doNotTrack == "1" || navigator.msDoNotTrack == "1" || window.external.msTrackingProtectionEnabled()) {
return true
} else {
return false
}
} else {
return false
}
}

View File

@ -1,6 +1,6 @@
import 'promise-polyfill/src/polyfill';
import 'unfetch/polyfill';
import { post, hook } from '../lib/web';
import { post, hook, doNotTrack } from '../lib/web';
(window => {
const {
@ -13,7 +13,7 @@ import { post, hook } from '../lib/web';
const script = document.querySelector('script[data-website-id]');
if (!script || navigator.doNotTrack === "1") return;
if (!script || doNotTrack()) return;
const website = script.getAttribute('data-website-id');
const hostUrl = new URL(script.src).origin;