mathrobin / never-consent Goto Github PK
View Code? Open in Web Editor NEWNever consent to any GDPR consent management platform
License: MIT License
Never consent to any GDPR consent management platform
License: MIT License
Example seen on : https://downdetector.fr/statut/github/
Hi, on this site: https://wikitravel.org/de/Nationalpark_Donauauen the dialog doesn't disappear, but also the buttons do not work, so site is unusable. Current version in Chrome. Thanks.
I found it on https://www.lyonmag.com
Loaded scripts :
<script defer src="https://cdn.appconsent.io/listener.1.2.0.js"></script>
<script defer src="https://cdn.appconsent.io/145/467/zZ1zvgiB/notice.js"></script>
It looks for window.frames.__cmpLocator then uses window.__cmp.
After one minute, platform should be have been detected and managed. At this time, if not, kick interval
sirData updated their code again, but this time, all the button have the same class, and we need to rely on the children span to identify the right button to click.
"Paramétrer vos choix" button
<button class="sd-cmp-181cY"><span class="sd-cmp-2Pci8 sd-cmp-1BHAu sd-cmp-1jg0y" tabindex="-1">Paramétrer vos choix</span></button>
"Tout refuser" button
<button class="sd-cmp-181cY"><span class="sd-cmp-2Pci8 sd-cmp-1xpje sd-cmp-1jg0y" tabindex="-1">Tout refuser</span></button>
"Enregistrer" button
<button class="sd-cmp-181cY"><span class="sd-cmp-2Pci8 sd-cmp-1BHAu sd-cmp-1U8T_" tabindex="-1">Enregistrer</span></button>
So it's not a simple class name updating.
Maybe if you add a parent bool parameter to the elClick function, so the given selector parameter would be used to locate the first button parent element ?
Maybe have a look to circleci
Saw this on ghacks.net, so thought I'd give this a try.
I am using Firefox ESR 68.
In /src/content.js, line 5 script.src = chrome.runtime.getURL('src/nc.js');
is dangerous.
It exposes the extension's UUID that can be used as a unique fingerprint to track the user. (https://bugzilla.mozilla.org/show_bug.cgi?id=1372288)
Array.from(document.getElementsByTagName('script'))
.map((elem) => elem.getAttribute('src'))
.filter((src) => src && src.startsWith('moz-extension:'))
.join('\n')
;
Going to https://dell.com seems to cause a constant flood of errors, it just never stops.
Here are a few of the same:
Hello,
Thanks for this extension.
I noticed that clubic.com use SirData consentment platfom but Never-Consent doesn't work on this website (although the platform is supported by the extension - 1.5.1 on my end, with Firefox 75.0 x64 on Windows 10 1909) :
https://www.clubic.com/
Regards.
Hi
As Firefox now supports add-ons under android, can you make your extension available for android?
Thanks
Reproduce steps:
Enable never-consent add-on in firefox with default settings
visit downdetector.co.uk
Ziff-Davis cookie consent form (with immense list of third-parties) keeps refreshing and looping.
uncaught exception: CustomError: Error in protected function: tarteaucitron is not defined
When job is done, add a tooltip that said "hey I rejected for you, kiss". Or if was not able to do "sorry, I was not able to do"
Thanks to @rumpl for the idea
Actually, it asks all permission. Too much large.
Hi
Could you provide an Off / On option for each cookie type
e.g.
Google Maps Off / On
as i may choose to generally refuse all cookies but when it comes to Google Maps, I'm ok to allow these?
(youtube, facebook...)
Thanks
It seems that Didomi comes back
Found on https://www.freeformatter.com.
Sorry, i am not skilled enough in js to find a way to get this one.
Check
<div id="uniccmp">
Manage Options
<div class="flex flex-col w-full flex-wrap">
<div class="flex">
<button
tabindex="0"
type="button"
class="bg-gray-300 text-sm md:text-base hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded outline-none m-2 text-xs"
style="color: rgb(51, 51, 51); background-color: rgb(226, 232, 240);"
>
Manage Options
</button>
<button
tabindex="0"
type="button"
class="bg-gray-300 text-sm md:text-base hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded outline-none m-2 text-xs"
style="color: rgb(255, 255, 255); background-color: rgb(74, 144, 226);"
>
Agree and proceed
</button>
</div>
<div class="flex p-1 ml-auto mt-auto">
<div class="flex p-1">
<span class="text-xs">
<a href="https://www.uniconsent.com/?utm_source=widget&utm_medium=v2&utm_campaign=cmpui" alt="GDPR CMP - Cookie Consent Manager" title="GDPR CMP - Cookie Consent Manager">UniConsent</a>
</span>
</div>
</div>
<div class="flex w-full p-4 hidden"><p>Tell us how you want us to handle your data. We'll only use your data for purposes you consent to. Change your mind whenever, we'll adapt to your consent preferences and data requests.</p></div>
<div class="flex flex-col m-auto w-full items-center justify-center md:flex-row">
<div class="flex-auto w-full p-2 overflow-scroll overflow-x-hidden h-32 md:h-64">
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1 cursor-pointer font-bold">Purposes</div></div>
<div class="flex items-center justify-center w-full p-2 border-b bg-gray-200 text-black">
<div tabindex="0" role="button" class="flex-1 cursor-pointer font-bold text-black">Store and/or access information on a device</div>
<label tabindex="0" aria-pressed="false" for="toogle_p1" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p1" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Select basic ads</div>
<label tabindex="0" aria-pressed="false" for="toogle_p2" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p2" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Create a Personalized ads profile</div>
<label tabindex="0" aria-pressed="false" for="toogle_p3" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p3" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Select Personalized ads</div>
<label tabindex="0" aria-pressed="false" for="toogle_p4" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p4" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Create a Personalized content profile</div>
<label tabindex="0" aria-pressed="false" for="toogle_p5" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p5" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Select Personalized content</div>
<label tabindex="0" aria-pressed="false" for="toogle_p6" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p6" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Measure ad performance</div>
<label tabindex="0" aria-pressed="false" for="toogle_p7" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p7" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Measure content performance</div>
<label tabindex="0" aria-pressed="false" for="toogle_p8" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p8" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Apply market research to generate audience insights</div>
<label tabindex="0" aria-pressed="false" for="toogle_p9" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p9" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Develop and improve products</div>
<label tabindex="0" aria-pressed="false" for="toogle_p10" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_p10" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1 cursor-pointer font-bold">Special Features</div></div>
<div class="flex items-center justify-center w-full p-2 border-b">
<div tabindex="0" role="button" class="flex-1 cursor-pointer">Use precise geolocation data</div>
<label tabindex="0" aria-pressed="false" for="toogle_sf1" class="flex items-center cursor-pointer">
<div class="relative">
<input id="toogle_sf1" type="checkbox" class="hidden" />
<div class="toggle__line w-10 h-3 bg-gray-400 rounded-full shadow-inner"></div>
<div class="toggle__dot absolute w-5 h-5 bg-white rounded-full shadow inset-y-0 left-0"></div>
</div>
</label>
</div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1 cursor-pointer font-bold">Special Purposes</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1">Ensure security, prevent fraud, and debug</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1">Technically deliver ads or content</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1 cursor-pointer font-bold">Features</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1">Match and combine offline data sources</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1">Link different devices</div></div>
<div class="flex items-center justify-center w-full p-2 border-b"><div class="flex-1">Receive and use automatically-sent device characteristics for identification</div></div>
</div>
<div class="flex-auto w-full p-2 overflow-scroll overflow-x-hidden h-32 md:h-64 p-4">
<div class="font-bold mb-2">Store and/or access information on a device</div>
<div>Cookies, device identifiers, or other information can be stored or accessed on your device for the purposes presented to you.</div>
<br />
<div>
Vendors can:<br />
<li class="py-2">Store and access information on the device such as cookies and device identifiers presented to a user.</li>
</div>
</div>
</div>
<div class="flex h-full align-right py-1">
<button tabindex="0" type="button" class="bg-gray-300 text-sm md:text-base hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded outline-none m-2" style="color: rgb(51, 51, 51); background-color: rgb(226, 232, 240);">
Confirm Choices
</button>
<button tabindex="0" type="button" class="bg-gray-300 text-sm md:text-base hover:bg-gray-400 text-gray-800 font-bold py-2 px-4 rounded outline-none m-2" style="color: rgb(255, 255, 255); background-color: rgb(74, 144, 226);">
Agree All & Save
</button>
</div>
__hs_opt_out=yes
Minor, but it would be nice to have the tags for the release pushed, corresponding to the packages on mozilla.org.
Hi
Can you please confirm Never-Consent also blocks these else make it block them:
Google Analytics
Facebook Pixel
Google Tag Manager
Hotjar Analytics
Google Publisher Tag
Youtube Embed
Vimeo Embed
Google Maps
AddThis Widget
ShareThis widget
Twitter Widget
SoundCloud Embed
SlideShare Embed
LinkedIn Widget
Instagram Embed
Pinterest Widget
Thanks
Find what is behind https://www.seloger.com/
click #banner-cookie_customize
click slshield-info__cta slshield-info__cta-set-all
click slshield-info__cta slshield-info__cta-accept
Exemple wedressfair
http://www.ynsect.com/fr/
https://www.cnil.fr/fr/webform/adresser-une-plainte
When click on button in context menu of extension, will open a new tab, auto fill form with some predefined data like website concerned during the click on extension
Not working anymore https://www.osano.com/
I was wondering if this extension could be made as a Filter List to be used in ad blockers like uBO, or does it need more permissions/features or something like that?
See pull request
They updated their code (found on lyonmag.com & lefigaro.fr).
I didn't manager to execute their denyAll function like you did before, neither made the elClick works.
window name seems to be webpackJsonpappconsent now.
Here's the relevant code i found :
Check
<div id="appconsent">
or using window.webpackJsonpappconsent
Réglages
<section class="sc-1nnqoje-1 kTblVO">
<button class="hff8u9-0 wmGgB sc-1nnqoje-2 juvCHt button" type="button">
<span class="sc-1aw7caq-0 hff8u9-1 dyUrjQ baseText">Réglages</span>
</button>
</section>
Tout refuser
<a class="sc-10ckfh7-0 ibtwNj link">Tout Refuser</a>
Enregistrer
<button class="hff8u9-0 fDOcTE sc-1s6s8eg-0 kfXjGO button button--filled" type="button">
<span class="sc-1aw7caq-0 hff8u9-1 gdgCV baseText">Enregistrer</span>
</button>
Example given : https://developer.salesforce.com/forums/
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.