fix(data): issue #269

This commit is contained in:
angel_luis_vn 2023-10-11 12:20:20 +02:00
commit 968f2f406a
21 changed files with 123 additions and 40 deletions

View File

@ -15,6 +15,7 @@ gdprCookieBanner-acceptedAll
hasCookieBanner
ibeugdpr-disabled
modal--is-open
modal-open
no-scroll
no_scroll
shopee-no-scroll

View File

@ -12769,3 +12769,8 @@ tp-yt-iron-overlay-backdrop
#wxp_gdpr_container
.privacy-consent--modal
.privacy-consent--backdrop
#cheerfy-cookies-modal--wrapper
script[src*="wirkaufendeinauto.de"] + div.modal-root > div
#bcc-outer
#StickieCookies
[class="block z-50 w-full max-w-full md:max-w-small fixed bottom-0 left-0 md:bottom-[20px] md:left-[20px]"]

View File

@ -22,3 +22,5 @@ steamcommunity.com
substack.com
sucuri.net
youtube.com
godotvr.github.io
tesla.com

View File

@ -21,7 +21,7 @@ export default (server: FastifyInstance, options: RouteShorthandOptions, done: (
reply.send({
data: {
classes: (await results[0].text()).split('\n'),
classes: (await results[0].text()).split('\n').filter((x) => !!x),
commonWords: [
'banner',
'cc',
@ -37,10 +37,10 @@ export default (server: FastifyInstance, options: RouteShorthandOptions, done: (
'popup',
'privacy',
],
elements: (await results[1].text()).split('\n'),
fixes: (await results[2].text()).split('\n'),
skips: (await results[3].text()).split('\n'),
tags: (await results[4].text()).split('\n'),
elements: (await results[1].text()).split('\n').filter((x) => !!x),
fixes: (await results[2].text()).split('\n').filter((x) => !!x),
skips: (await results[3].text()).split('\n').filter((x) => !!x),
tags: (await results[4].text()).split('\n').filter((x) => !!x),
},
success: true,
});

View File

@ -3,7 +3,10 @@
"message": "Hat jemand Dialoge zur Cookie-Zustimmung gesagt? 😋"
},
"contextMenu_reportOption": {
"message": "Webseite melden..."
"message": "Diese Website melden"
},
"contextMenu_settingsOption": {
"message": "Ausnahmeliste verwalten"
},
"options_clearButton": {
"message": "Liste leeren"

View File

@ -3,7 +3,10 @@
"message": "Did someone say cookie consent dialogs? 😋"
},
"contextMenu_reportOption": {
"message": "Report site..."
"message": "Report this website"
},
"contextMenu_settingsOption": {
"message": "Manage exclusion list"
},
"options_clearButton": {
"message": "Clear list"

View File

@ -3,7 +3,10 @@
"message": "¿Alguien dijo diálogos de consentimiento de cookies? 😋"
},
"contextMenu_reportOption": {
"message": "Reportar sitio..."
"message": "Reportar este sitio web"
},
"contextMenu_settingsOption": {
"message": "Gestionar lista de exclusión"
},
"options_clearButton": {
"message": "Borrar lista"

View File

@ -3,7 +3,10 @@
"message": "Quelqu'un a-t-il dit boîtes de dialogue de consentement aux cookies? 😋"
},
"contextMenu_reportOption": {
"message": "Signaler le site..."
"message": "Signaler ce site web"
},
"contextMenu_settingsOption": {
"message": "Gérer la liste d'exclusion"
},
"options_clearButton": {
"message": "Effacer la liste"

View File

@ -3,7 +3,10 @@
"message": "Qualcuno ha detto finestre di dialogo per il consenso ai cookie? 😋"
},
"contextMenu_reportOption": {
"message": "Segnala sito..."
"message": "Segnala questo sito web"
},
"contextMenu_settingsOption": {
"message": "Gestisci elenco di esclusione"
},
"options_clearButton": {
"message": "Cancella elenco"

View File

@ -3,7 +3,10 @@
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
},
"contextMenu_reportOption": {
"message": "Reportar site..."
"message": "Denunciar este site"
},
"contextMenu_settingsOption": {
"message": "Gerenciar lista de exclusão"
},
"options_clearButton": {
"message": "Limpar lista"

View File

@ -3,7 +3,10 @@
"message": "Alguém disse diálogos de consentimento de cookies? 😋"
},
"contextMenu_reportOption": {
"message": "Reportar site..."
"message": "Denunciar este site"
},
"contextMenu_settingsOption": {
"message": "Gerenciar lista de exclusão"
},
"options_clearButton": {
"message": "Limpar lista"

View File

@ -3,7 +3,10 @@
"message": "A spus cineva dialoguri de consimțământ pentru cookie? 😋"
},
"contextMenu_reportOption": {
"message": "Raportați site-ul..."
"message": "Raportați acest site web"
},
"contextMenu_settingsOption": {
"message": "Gestionați lista de excludere"
},
"options_clearButton": {
"message": "Ștergeți lista"

View File

@ -3,7 +3,10 @@
"message": "Кто-то сказал диалоги согласия на использование файлов cookie? 😋"
},
"contextMenu_reportOption": {
"message": "Сообщить о сайте..."
"message": "Сообщить об этом веб-сайте"
},
"contextMenu_settingsOption": {
"message": "Управление списком исключений"
},
"options_clearButton": {
"message": "Очистить список"

View File

@ -1,7 +1,7 @@
{
"manifest_version": 3,
"name": "Cookie Dialog Monster",
"version": "6.4.1",
"version": "6.4.3",
"default_locale": "en",
"description": "__MSG_appDesc__",
"icons": {
@ -23,21 +23,22 @@
"all_frames": true,
"exclude_matches": [
"*://*.googleapis.com/embed/*",
"*://*.codesandbox.io/*",
"*://*.sharepoint.com/*",
"*://*.youtube.com/embed/*",
"*://*.youtube-nocookie.com/embed/*",
"https://translate.google.ca/*",
"https://translate.google.co.in/*",
"https://translate.google.co.jp/*",
"https://translate.google.co.uk/*",
"https://translate.google.com.au/*",
"https://translate.google.com.br/*",
"https://translate.google.com/*",
"https://translate.google.de/*",
"https://translate.google.es/*",
"https://translate.google.fr/*",
"https://translate.google.it/*",
"https://www.cookie-dialog-monster.com/*"
"*://translate.google.ca/*",
"*://translate.google.co.in/*",
"*://translate.google.co.jp/*",
"*://translate.google.co.uk/*",
"*://translate.google.com.au/*",
"*://translate.google.com.br/*",
"*://translate.google.com/*",
"*://translate.google.de/*",
"*://translate.google.es/*",
"*://translate.google.fr/*",
"*://translate.google.it/*",
"*://www.cookie-dialog-monster.com/*"
],
"js": ["scripts/content.js", "scripts/dialog.js"],
"matches": ["http://*/*", "https://*/*"],

View File

@ -10,7 +10,21 @@ const apiUrl = 'https://api.cookie-dialog-monster.com/rest/v2';
* @type {string}
*/
const reportMenuItemId = 'REPORT';
const extensionMenuItemId = 'CDM-MENU';
/**
* @description Context menu identifier
* @type {string}
*/
const reportMenuItemId = 'CDM-REPORT';
/**
* @description Context menu identifier
* @type {string}
*/
const settingsMenuItemId = 'CDM-SETTINGS';
/**
* @description A shortcut for chrome.scripting
@ -67,6 +81,9 @@ chrome.contextMenus.onClicked.addListener((info, tab) => {
case reportMenuItemId:
if (tab) chrome.tabs.sendMessage(tab.id, { type: 'SHOW_REPORT_DIALOG' });
break;
case settingsMenuItemId:
chrome.runtime.openOptionsPage();
break;
default:
break;
}
@ -153,10 +170,24 @@ chrome.runtime.onMessage.addListener((message, sender, callback) => {
*/
chrome.runtime.onInstalled.addListener(() => {
chrome.contextMenus.create({
contexts: ['all'],
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
id: extensionMenuItemId,
title: 'Cookie Dialog Monster',
});
chrome.contextMenus.create({
contexts: ['all'],
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
id: settingsMenuItemId,
parentId: extensionMenuItemId,
title: chrome.i18n.getMessage('contextMenu_settingsOption'),
});
chrome.contextMenus.create({
contexts: ['all'],
documentUrlPatterns: chrome.runtime.getManifest().content_scripts[0].matches,
id: reportMenuItemId,
parentId: extensionMenuItemId,
title: chrome.i18n.getMessage('contextMenu_reportOption'),
});
});

View File

@ -144,7 +144,7 @@ function fix() {
const backdrop = document.getElementsByClassName('modal-backdrop')[0];
const facebook = document.getElementsByClassName('_31e')[0];
const fixes = data?.fixes ?? [];
const skips = data?.skips ?? [];
const skips = (data?.skips ?? []).map((x) => (x.split('.').length < 3 ? `*${x}` : x));
if (backdrop?.children.length === 0) {
backdrop.remove();
@ -177,7 +177,7 @@ function fix() {
}
}
if (skips.indexOf(hostname) === -1) {
if (skips.some((x) => !hostname.match(x.replace(/\*/g, '[^ ]*')))) {
for (const element of [document.body, document.documentElement]) {
element?.classList.remove(...(data?.classes ?? []));
element?.style.setProperty('position', 'initial', 'important');
@ -245,7 +245,7 @@ const observer = new MutationObserver((mutations) => {
window.addEventListener('focus', async () => {
if (!data) {
await runSetup(true);
forceClean(document.body);
clean([...document.body.children]);
}
});

View File

@ -119,15 +119,17 @@ async function handleDeleteClick(event) {
function handleExportClick() {
const anchor = document.createElement('a');
const now = new Date();
const day = now.getUTCDay().toString().padStart(2, '0');
const month = now.getUTCMonth().toString().padStart(2, '0');
const day = now.getDate().toString().padStart(2, '0');
const month = now.getMonth().toString().padStart(2, '0');
const year = now.getUTCFullYear();
const text = exclusionList.join('\n');
const defaultTitle = `${year}${month}${day}`;
const customTitle = window.prompt('Enter a file name', defaultTitle);
const blob = new Blob([text], { type: 'octet/stream' });
const url = window.URL.createObjectURL(blob);
anchor.href = url;
anchor.download = `${year}${month}${day}.cdm`;
anchor.download = `${customTitle || defaultTitle}.cdm`;
anchor.click();
window.URL.revokeObjectURL(url);
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 72 KiB

View File

@ -1,4 +1,4 @@
<!DOCTYPE html>
<!doctype html>
<html class="scroll-smooth" lang="en">
<head>
<title>Cookie Dialog Monster | Did someone say cookie consent dialogs?</title>
@ -172,9 +172,9 @@
<div class="md:mt-14">
<h2>A powerful popup to manage all from a single place</h2>
<p class="mt-8 text-gray-500 text-xl">
Disable our extension if you would like to accept cookies in a specific page, rate us,
refresh the current page cleaning the cache or start a conversation because you need
help.
Disable the extension if you would like to accept cookies in a specific page, contribute
to the project, open settings to manage the exclusion list, help us rating the extension
or start a conversation because you need help.
</p>
</div>
<img alt="Extension Popup" class="image" src="/images/popup.png" />
@ -194,6 +194,20 @@
</p>
</div>
</div>
<div class="flex flex-col gap-8 md:flex-row md:gap-20 md:py-20 py-10">
<div class="md:mt-14">
<h2>Manage your exclusions</h2>
<p class="mt-8 text-gray-500 text-xl">
Clear, import and export your preferences with one click. Users have full control over
which websites should be exempt from the cookie consent dialog removal functionality.
</p>
<p class="mt-4 text-gray-500 text-xl">
This feature is especially useful for websites that have unique cookie consent dialog
implementations or where the extension may cause unintended side effects.
</p>
</div>
<img alt="Extension Options" class="image" src="/images/options.png" />
</div>
<div class="md:py-20 py-10">
<div class="md:text-center">
<h2>A better way to surf the Internet</h2>