@hexonet/semantic-release-whmcs
Version:
`semantic-release` plugin for auto-publishing on WHMCS marketplace
1,481 lines (1,296 loc) • 315 kB
JavaScript
/* Click Handler */
/* Use this handler only if the warning can't be handled using css, cookies, local/session storage (slowest option) */
/* Recommended is to combine this with a css rule as well to hide warning */
/* Functions:
_id = getElementById
_sl = querySelector or can be used for xPath selector
_ev = xPath selector
_chain = click multiple elements in a chain
_if = First argument is the condition selector, next arguments are the buttons to click in a chain
_if_else = First argument is the condition selector,
second argument is the chain as array if condition selector is found,
third argument is the chain as array if condition selector isn't found
*/
const classname = Math.random()
.toString(36)
.replace(/[^a-z]+/g, "");
function _parent(element) {
if (element && element.parentNode) {
return element.parentNode;
}
return false;
}
function _id(id) {
return document.getElementById(id);
}
function _sl(selector, container, allMatches) {
if (selector.startsWith("//")) return _ev(selector, false, true);
container = container || document;
if (allMatches) return container.querySelectorAll(selector);
return container.querySelector(selector);
}
function _ev(selector, container, full) {
return document
.evaluate(
(typeof full == "undefined" ? "//" : "") + selector,
container || document,
null,
XPathResult.ANY_TYPE,
null
)
.iterateNext();
}
let currentChainElement = 0;
function _chain(...selectors) {
const argumentsLength = selectors.length;
let flagUnique = false;
let flagOptional = false;
let flagAllMatches = false;
let elements;
for (let i = currentChainElement; i < argumentsLength; i++) {
// An argument can be a list of flags valid for all the following arguments
if (/^FLAG\:/.test(selectors[i])) {
selectors[i]
.split(":")[1]
.split(",")
.forEach(function (flag) {
if (flag == "UNIQUE") {
flagUnique = true;
} else if (flag == "OPTIONAL") {
flagOptional = true;
} else if (flag == "REQUIRED") {
flagOptional = false;
} else if (flag == "ALL-MATCHES") {
flagAllMatches = true;
} else if (flag == "SINGLE-MATCH") {
flagAllMatches = false;
}
});
continue;
}
if (flagUnique) {
selectors[i] += selectors[i].startsWith("//")
? '[not(contains(@class, "' + classname + '"))]'
: ":not(" + classname + ")";
}
if (i == argumentsLength - 1) {
return selectors[i];
}
elements = _sl(selectors[i], false, flagAllMatches);
if (!flagAllMatches) elements = elements ? [elements] : [];
if (!elements.length) {
if (flagOptional) {
currentChainElement++;
continue;
}
return false;
}
currentChainElement++;
elements.forEach(function (element) {
if (flagUnique) element.classList.add(classname);
if (element.nodeName == "OPTION") element.selected = true;
else element.click();
});
}
return false;
}
function _if(condition, ...selectors) {
return _sl(condition) ? _chain(...selectors) : false;
}
function _if_else(condition, if_selectors, else_selectors) {
if (_sl(condition)) {
return _chain(...if_selectors);
}
return _chain(...else_selectors);
}
function getSelector(host) {
// Element; often used to store an element before searching for something related to it
let e = false;
// Network domain parts approach
// host.long contains all domain parts longer that 4 characters (defined later in this file)
if (host.long) {
for (let i = 0; i < host.long.length; i++) {
switch (host.long[i]) {
// BEGIN These rules have a duplicate
case "danskebank":
return _sl(
'.cookie-consent-banner-modal:not([style*="none"]) #button-accept-necessary, .cookie-consent-banner-modal:not([style*="none"]) #button-accept-all'
);
case "peek-cloppenburg":
return _chain(
".cw-modal.show #cookie-settings",
"#cookie-settings.cw-collapsed"
);
case "soliver":
return _chain(
".fg-consentlayer.is-active .ta_consentLayer_settings",
'.o-button[data-fg-consent-action="saveSettings"]'
);
case "eversports":
return '.modal[style*="block"] #confirmSelection';
case "kupbilecik":
return _chain(
".remodal-is-opened #cookie-custom",
".remodal-is-opened #cookie-save"
);
case "taxfix":
return _chain(".ccb #banner\\.customize", "#overlay\\.saveSelection");
case "qastack":
return '.modal[style*="block"] #cookies-accept';
case "answear":
return _chain(
'.modal--open div[class*="CookiesConsentPopUp"] span[class*="CookiesInfo"]',
'span[class*="CookiesSettings__closePopUp"]'
);
case "cotswoldoutdoor":
case "asadventure":
return _if(
'body[style*="hidden"]',
'div[data-hypernova-key="AEMScenes_CookieMessage"] .as-t-box + .as-a-btn--link',
".as-m-popover .as-m-group button"
);
case "uniroyal":
case "continental":
return _if_else(
".js-cookie-banner",
[
".is-cookiebanner-visible .ci-cookie-link",
".is-settings-view .js-cookie-accept",
],
[
".c-cookiebanner__visible .c-cookiebanner__settings-actions-submit",
]
);
case "xxxlutz":
case "moemax":
case "moebelix":
case "xxxlesnina":
case "poco":
return '.noScrolling #modal .cm_content > div button[data-purpose="cookieBar.button.accept"] ~ div button, .noScrolling #modal .cm_content > button[data-purpose="cookieBar.button.accept"]';
// END
case "adidas":
case "reebok":
return _chain(
'.gl-modal--active[class*="cookie-consent"] button[data-auto-id*="manage"]',
"FLAG:OPTIONAL",
'input[name="radio-cookie-consent"][value="0"]',
'div[data-auto-id*="group__option-2"] .gl-checkbox--checked input',
'div[data-auto-id*="group__option-1"] .gl-checkbox--checked input',
"FLAG:REQUIRED",
'.gl-modal--active[class*="cookie-consent"] button[data-auto-id*="save"]'
);
case "teufelaudio":
case "teufel":
return ".p-layer--open .p-layer__button--selection";
case "fiveguys":
e = _sl(".v-dialog--active");
return e &&
_ev("*[contains(., 'cookie')] | *[contains(., 'Cookie')]", e)
? _sl(".v-card__actions:last-child button", e)
: false;
case "kastner-oehler":
case "gigasport":
return "#quickview_cookie_settings.en_is_active a.tao_button_cookie_settings";
case "backmarket":
return _if(
'div[aria-modal="true"] button.underline',
'div[aria-modal="true"] button[data-qa="accept-cta"]'
);
case "pccomponentes":
return _chain("#personalizeCookies", "#configCookiesPopup");
case "allegro":
return _chain(
'#opbox-gdpr-consents-modal button[data-role="accept-consent"] + button',
'button + button[data-role="accept-consent"]'
);
case "banknorwegian":
return _chain(
'.MuiDialog-root div[class*="cookieConsent"] > button:first-child',
'.MuiDialog-root div:not([class*="cookieConsent"]) > button:first-child'
);
case "submcodica":
return ".noscroll .modal #agreement .btn";
case "bestdrive":
return _chain(
'.ReactModalPortal [class*="cookieSettingsLink"] a, .ReactModalPortal [class*="cookieConsent"] > [class*="buttonGroup"] button[class*="ghost"]',
'.ReactModalPortal [class*="cookieSettings"] button[class*="ghost"]'
);
case "stickerapp":
return '.modal[style*="block"] .cc-v2-save-btn';
case "motointegrator":
return _chain(
'#fancybox-wrap[style*="block"] .js-gdpr-settings',
'#fancybox-wrap[style*="block"] .js-gdpr-save'
);
case "otrium":
return 'button[data-testid="accept-cookie-close"]';
case "iobroker":
return _ev(
'div[./div/p[text()="This website uses cookies"]]//button'
);
case "itella":
return '.modal[style*="block"] .btn[data-ld-click="save-cookie-settings"]';
case "techbone":
return '#cookie_banner[style*="block"] .btn-light';
case "oscaro":
return ".freeze .popin-cookie .popin-footer button:first-child";
case "mapquest":
return '.modal[style*="block"] generic-dialog[message*="cookies"] button';
case "toolstation":
return '.modal[style*="block"] #eu-cookies-notice-no';
case "wentronic":
return ".cookie-modal__button-save";
case "muziker":
return _if(
"div[data-muziker-consent]:not(.d-none)",
"div[data-muziker-consent] [data-analytics-click-to-link]",
"[data-cookies-accept-current-setting-button]"
);
case "ionos":
return ".privacy-consent--active .privacy-consent--modal #confirmSelection";
case "sofatutor":
return _chain(
'.reveal-overlay[style*="block"] .tracking-consent-popup .js-customize',
'.reveal-overlay[style*="block"] .tracking-consent-customization-popup .js-accept-selected'
);
case "coolblue":
return '.button[name="accept_cookie"]';
case "chartoo":
return _if(
'body > div > div:last-child a[href*="/privacy"]',
'body > div > div:last-child input[value="2"]',
'body > div > div:last-child input[value="4"]',
'body > div > div:last-child input[value="32"]',
"body > div > div:last-child > div > div > div:last-child > div:nth-child(2) > div:first-child + div + div"
);
case "doppelherz":
return _sl(".bg-coolgray")
? _ev(
'footer/following-sibling::div/div[contains(@class, "fixed")]//button[contains(@aria-label, "Akzeptieren")]'
)
: _sl(
".cookie-inquiry-wrapper.show .cookie-inquiry--configuration .button"
);
case "musik-produktiv":
return '.mp-modal[style*="block"] .consent-save-settings';
case "intersport":
return '.gdpr-modal-wrapper._show .allow-necessary, #cookies-modal-id[style*="block"] .save-cookies';
case "douglas":
return _chain(
".uc-banner-modal .uc-list-button__more-information",
".uc-list-button__deny-all"
);
case "refurbed":
return '.fixed:not([style*="none"]) button[data-tracking-id="cookies-denied"]';
case "calvendo":
return '.modal.in .btn[onclick="setCOOKIENOTIFYOK()"]';
case "clickdoc":
return ".modal-wrapper.show .agree-necessary-cookie";
case "aida64":
return _if(
".q-dialog",
'//div[contains(@class, "q-dialog")][.//span[contains(text(), "cookie") or contains(text(), "Cookie") or contains(text(), "Sütik")]]//button',
".gdpr-card button:first-child"
);
case "regiojet":
return _if(
'#__next > .fixed a[href*="cookie"]',
"#__next > .fixed button:first-child",
".modal-wrapper button + button"
);
case "resursbank":
return _if(
'body > div[style*="opacity: 1"] a[href*="cookie"]',
'//body/div[contains(@style, "opacity: 1")]//button[@color="black"]',
'//body/div[contains(@style, "opacity: 1")]//button[@color="white"]'
);
case "handelsbanken":
return '.shb-modal[data-test-id="shb-sepu-cookie-modal"] .shb-button-secondary';
case "austria-email":
return "#supi__overlay:not(.hide) #supi__dismiss";
case "stilord":
return '.no-consent #cookie-consent-customise, button[data-testing="cookie-bar-save"]';
case "hanos":
return '.banner_message[data-hanos-cookie-disclaimer][style*="block"] a[data-hanos-cookie-disclaimer-agree]';
case "renishaw":
return _if_else(
"#RejectAllOptionalCookies",
["#RejectAllOptionalCookies"],
["#cookie-popup #CookieSettings", "#AcceptCookieSettings"]
);
case "kika":
return ".cookie_overlay .agree-selected-wrp button";
case "eneco":
return _if_else(
'div[data-state="open"] a[href*="cookiestatement"]',
['div[data-state="open"] button ~ button'],
[".ReactModal__Overlay--after-open #AcceptCookiesButton + button"]
);
case "saniweb":
return '.fixed:not([style*="none"]) .btn[\\@click="saveCookieSettings(false)"]';
case "euronics":
return ".modal--active #cookie-modal-accept-selected-button";
case "hema":
return '.cookie-modal[style*="block"] .js-cookie-reject-btn';
case "dafy-moto":
return _if(
".js-popup-init .icon-cookies",
'.js-popup-init a[class*="close"]'
);
case "aviasales":
return 'button[data-test-id*="accept-cookies"]';
case "crocs":
return _chain(
"#__tealiumGDPRcpPrefs .js-btn-edit-cookie-settings",
".js-btn-reject-all"
);
case "umarex":
return '#disclaimer-bar.open .btn[data-cookie-value="basic"]';
case "inshared":
return _if(
".cdk-overlay-container ins-cookie-settings-wall-modal",
".cdk-overlay-container .btn--secondary",
"#cookiesettings_basis input, #cookiesettings_basic input",
".cdk-overlay-container .btn--primary"
);
case "ravensburger":
return '.modal[style*="block"] .btn[data-behavior="cookiesSaveAll"]';
case "c-date":
return _if_else(
".page-wrapper",
[
".consent-overlayer-content.overlayer-active .settings",
".consent-overlayer-content.overlayer-active .reject-all",
],
['.ipx_cookie_overlay:not([style*="none"]) button']
);
case "amway":
return '.amw-dialog-wrapper--visible button[class*="cookies-popup---saveAndClose"]';
case "drinkcentrum":
return ".cookies-advanced-consent-manager:not(.minimized) .reject-all";
case "petcity":
case "apotheka":
return _if(
'.bp3-overlay-open a[href*="cookie"]',
".bp3-overlay-open button.intent-secondary",
".bp3-overlay-open li:only-child > button"
);
case "colourbox":
if (host.full == "colourbox.es")
return _if(
'body > div[class*="wrapper"] > [class*="dialog"]',
'//div[contains(@class, "dialog")]//button[contains(@aria-label, "necesarias")]'
);
else
return _if(
'body > div[class*="wrapper"] > [class*="dialog"] [href*="cookie-policy"]',
'body > div[class*="wrapper"] > [class*="dialog"] button:first-child'
);
case "easyname":
return _chain(
".overlay--cookie-modal .choose-settings",
".choose-settings:first-child"
);
case "lyst":
return _chain(
'.ReactModal__Overlay--after-open img[src*="cookie-consent"] ~ div button + button',
".ReactModal__Overlay--after-open #finished-link"
);
case "bosch-home":
return ".cookielaw-modal-layer.is-active .js-accept";
case "pricerunner":
return "#consent button + button";
case "myrobotcenter":
return ".ec-gtm-cookie-modal._show .decline";
case "samsonite":
return ".overlay-wrapper--visible .cookie-consent-overlay__actions .btn--primary";
case "inwx":
return '.consent-background[style*="block"] .reject-all';
case "cellbes":
return _ev(
'p[./a[contains(@href, "cookie") or contains(@href, "kupsis") or contains(@href, "sikdatne")]]/parent::div/following-sibling::button'
);
case "nintendo":
return '.plo-overlay--is-open .plo-cookie-overlay__reject-btn, .CookiePolicyModal .Modal:not([style*="none"]) .btn + .btn, .cookie-banner[style*="block"] .cookie-reject-button';
case "kyoceradocumentsolutions":
return host.parts.indexOf("academy") != -1
? '.modal[style*="block"] .cookiee-agree'
: _chain(
".-is-visible[data-gdpr-manage-cookies-popup] button[data-gdpr-review-cookies]",
"button[data-gdpr-accept-reviewed]"
);
case "stooq":
return ".fc-consent-root .fc-cta-consent";
case "bike24":
return _if(
".cookie-consent-modal",
".cookie-consent-modal-simple-footer__buttons-wrapper > button:first-child",
".cookie-consent-modal-content-advanced__footer-button:nth-child(2)"
);
case "tavex":
return _if(
'.modaal-wrapper[data-source*="cookie-initial"]',
".js-cookie-save-preferences"
);
case "elring":
return '#modal-cookie-info[style*="block"] .btn-dismiss';
case "bbva":
return ".cookiesgdpr:not(.cookiesgdpr--hidden) .cookiesgdpr__chooseallbtn--reject";
case "catawiki":
return _if(".cookie-bar-is-visible", ".fe-cookie-form button");
case "mifcom":
return _chain("#js-cookienotice #detailExpand", "#cookieSaveChoice");
case "bauhaus":
return '.consent-popup._show button[data-bind="click: agreeSome"], .modal .cookie-actions button:last-child';
case "kytary":
return ".o-hidden .cookies-consent2 .btn:nth-child(2)";
case "yopmail":
return '#cons-pop:not([style*="none"]) #necesary';
case "geizhals":
return _chain(
"#onetrust-pc-btn-handler",
"#ot-group-id-C0004",
".save-preference-btn-handler"
);
case "ejot":
return '.component-modal[style*="block"] .save-cookie-layer';
case "videnov":
return '.modal[style*="block"] button[onclick*="forbidAllCookies"]';
case "cashconverters":
return _chain(
'#cookiesModal[style*="block"] #storage',
"#cookiesModal #customization",
"#cookiesModal #ads",
"#cookiesModal #content",
"#cookiesModal #analytics",
"#cookies-accept"
);
case "chrono24":
return _chain(
".modal.active .js-cookie-settings",
".wt-consent-manager-save"
);
case "winparts":
return ".cookie-consent-active .selectie-toestaan";
case "onleihe":
return '.modal[style*="block"] .privacyAcceptChoice';
case "mediamarkt":
if (host.full == "outlet.mediamarkt.nl")
return ".force--consent.show--consent #s-sv-bn";
return '#mms-consent-portal-container button[data-test*="save-settings"]';
case "komoot":
return '.ReactModal__Content--after-open button[data-testid="gdpr-banner-decline"]';
}
}
host.long = false;
}
switch (host.full) {
case "youtube.com":
return _if(
"ytd-consent-bump-v2-lightbox, .consent-bump-v2-lightbox",
"ytd-consent-bump-v2-lightbox .eom-buttons > div:first-child ytd-button-renderer:last-child button, .consent-bump-v2-lightbox .one-col-dialog-buttons > *:nth-child(2) button"
);
case "twitter.com":
return '//div[@id="layers"]//div[@role="button"][.//span[contains(text(), "cookie") or contains(text(), "Cookie")]]/following-sibling::div[@role="button"][not(@aria-label)][not(@data-testid)]';
case "mapillary.com":
case "metacareers.com":
return 'button[data-cookiebanner*="accept"]';
case "whatsapp.com":
return 'button[data-cookiebanner*="accept"]';
case "facebook.com":
if (/^\/user_cookie_prompt\//.test(document.location.pathname))
return _chain(
"FLAG:UNIQUE",
'div:not(:only-child):first-child > div[role="button"]',
'div:not(:only-child):first-child > div[role="button"]'
);
else if (
/\/privacy\/consent\/user_cookie_choice\//.test(
document.location.pathname
)
)
return 'form + div > div > div:last-child div[role="button"]:not([aria-disabled])[aria-label*="Object"]';
else if (/\/dialog\/cookie_consent\//.test(document.location.pathname))
return 'button[name="__CONFIRM__"], div[role="button"][aria-label="Allow"]';
else if (/^\/help\//.test(document.location.pathname))
return _if(
'form[action^="/logout.php"] ~ div:last-child a[href*="cookies"]',
'form[action^="/logout.php"] ~ div:last-child > div > div:first-child div:nth-child(2) > div[role="button"]'
);
return _if_else(
".hasCookieBanner",
['button[data-cookiebanner="accept_only_essential_button"]'],
[
'//body/div[contains(@class, "-mode")]//div[@role="dialog"][.//a[contains(@href, "/policies/cookies")]]/div[2]/div/div[2]/div[@role="button"]',
]
);
case "store.facebook.com":
return _if(
'#scrollview a[href*="/policies/cookies"]',
'//div[@id="scrollview"]//div[@role="dialog"]/div[2]/div/div[1]/div[@role="button"]'
);
case "meta.com":
return _if(
'div[role="dialog"] a[href*="/policy/cookies"]',
'//div[@role="dialog"][.//a[contains(@href, "/policy/cookies")]]/div[2]/div/div[2][@role="button"]'
);
case "auth.meta.com":
return _if(
'div[role="dialog"] a[href*="/policies/cookies"]',
'//div[@role="dialog"][.//a[contains(@href, "/policies/cookies")]]//div[@aria-hidden="false"]/div/div[3]//div[@role="button"]'
);
case "about.meta.com":
case "ai.meta.com":
case "fbsbx.com":
case "oculus.com":
return '.hasCookieBanner button[data-cookiebanner="accept_only_essential_button"]';
case "bulletin.com":
case "fb.com":
return _if(
'.__fb-light-mode div[role="dialog"] a[href*="/policies/cookies"], .__fb-dark-mode div[role="dialog"] a[href*="/policies/cookies"]',
'div[role="dialog"] div[aria-hidden="true"] + [role="button"]',
'div[role="dialog"] [tabindex="-1"] > div > div:last-child [role="button"]'
);
case "messenger.com":
if (/^\/user_cookie_prompt\//.test(document.location.pathname)) {
return _chain(
"FLAG:UNIQUE",
'div:not(:only-child):first-child > div[role="button"]',
'div:not(:only-child):first-child > div[role="button"]'
);
} else if (
/\/privacy\/consent\/user_cookie_choice\//.test(
document.location.pathname
)
) {
return 'form + div > div > div:last-child div[role="button"]';
}
e = _sl('.uiLayer:last-child button[data-cookiebanner*="accept"]');
if (e) e.click();
return _sl(
'.hasCookieBanner button[data-cookiebanner*="accept"], #accept-cookie-banner-label'
);
case "oversightboard.com":
case "business.whatsapp.com":
return '.hasCookieBanner button[data-cookiebanner*="accept"]';
case "wit.ai":
case "oculus.com":
case "workplace.com":
case "transparency.fb.com":
case "facebookcareers.com":
return 'div[data-testid="cookie-policy-dialog"] button[data-cookiebanner*="accept"]';
case "instagram.com":
return _if_else(
"html#facebook",
['.hasCookieBanner button[data-cookiebanner*="accept_only_essential"]'],
[
"#splash-screen ~ div[style] button + button, #splash-screen ~ div[style] div:nth-child(3) > div:nth-child(2) > button:only-child",
]
);
case "privacymanager.io":
return _sl("#manageSettings ~ #save, .noDenyButton .accept-all"); // new and old button, just in case
case "sp-prod.net":
return _sl(
".cmp-cta-accept, .message-button:not(.cmp-cta-accept) + .message-button"
);
case "consent-pref.trustarc.com":
return ".pdynamicbutton .call, .bottom .rejectAll";
case "privacy-mgmt.com":
case "programme-tv.net":
case "bike-bild.de":
case "golem.de":
case "bild.de":
case "capital.fr":
case "sky.com":
case "computerbild.de":
case "hs.fi":
case "is.fi":
case "welt.de":
case "cosmopolitan.de":
case "zeit.de":
case "stuttgarter-nachrichten.de":
case "rnd.de":
case "thestreet.com":
case "heise.de":
case "telepolis.de":
case "gentside.com":
case "voici.fr":
case "gala.fr":
case "geo.fr":
case "eurogamer.pl":
case "eurogamer.net":
case "rockpapershotgun.com":
case "consent.formula1.com":
case "ohmymag.com":
case "videogameschronicle.com":
return ".sp_choice_type_11";
case "helpster.de":
case "kostencheck.de":
return ".message-column > p > .sp_choice_type_12, .sp_choice_type_SAVE_AND_EXIT";
case "sourcepoint.theguardian.com":
return "button.sp_choice_type_13, button.sp_choice_type_12, .sp_choice_type_SAVE_AND_EXIT";
case "cmp.dpgmedia.nl":
case "cmp.autoweek.nl":
return _chain(
'.sp_choice_type_12, .tcfv2-stack[title*="Social"] .pm-switch',
".sp_choice_type_SAVE_AND_EXIT"
);
case "o2.pl":
case "money.pl":
case "open.fm":
case "gadzetomania.pl":
case "kafeteria.pl":
case "dobreprogramy.pl":
case "fotoblogia.pl":
case "pudelek.pl":
case "komorkomania.pl":
case "autokult.pl":
case "abczdrowie.pl":
case "parenting.pl":
case "so-magazyn.pl":
case "domodi.pl":
case "vibez.pl":
case "autocentrum.pl":
case "extradom.pl":
case "totalmoney.pl":
case "echirurgia.pl":
case "wakacje.pl":
case "polygamia.pl":
case "benchmark.pl":
case "pysznosci.pl":
case "genialne.pl":
case "jastrzabpost.pl":
case "homebook.pl":
case "nauka.rocks":
return _ev("button[contains(., 'PRZECHODZ')]");
case "octapharma.com":
e = _sl("#assistant-paper button");
return e && _ev("span[contains(., 'I agree')]", e) ? e : false;
case "rp.pl":
case "parkiet.com":
return _sl("#rodo-popup button:last-child");
case "blick.ch":
e = _sl(
'div[id^="sp_message"][class^="sp_message_container"]:not(.idcac)'
);
if (e) e.className += " idcac";
return e;
case "wacom.com":
e = _sl("#consent_blackbar:not(.idcac)");
if (e) e.className += " idcac";
return e;
case "motocombo.pl":
e = _sl("#topInfoContainer0:not(.idcac)");
if (e) e.className += " idcac";
return e;
case "benchmark.pl":
case "wp.pl":
document.cookie = "WP-cookie-info=1"; // wiadomosci
return _ev("button[contains(., 'PRZECHODZ')]");
case "blikopzeewolde.nl":
case "socialmediaacademie.nl":
case "petsie.nl":
return _sl(".jBlockerAccept");
case "fifa.com":
e = _sl("#root > div > div > svg");
if (e) e.dispatchEvent(new Event("click", { bubbles: true }));
return e ? e : _sl(".mdl-overlay .close");
case "tallsay.com":
case "plazilla.com":
return _sl('.buttonblue[name="cookieok"]');
case "interspar.at":
case "spar.at":
return _sl(".has-cookie-notification .cookie-notification__confirm");
case "spar.hu":
case "spar.hr":
return _sl(".has-cookie-notification .cookie-notification__accept");
case "spar.si":
return _sl(
".has-cookie-notification .cookie-notification__accept, .has-cookie-notification .cookie-notification__select-all"
);
case "rain-alarm.com":
e = _id("privacypolicyAnalyticsYes");
if (e) e.click();
return _id("dialogButtonNo");
case "watchadvisor.com":
e = _sl("#wa-base-gdpr-consent-form #edit-consent-cookies");
if (e) e.click();
return _sl("#wa-base-gdpr-consent-form #edit-submit");
case "biorender.com":
e = _sl(
'#___gatsby > div > div > div > div > div > div > div > a[href*="/privacy"]'
);
return e ? e.parentNode.nextSibling.firstChild : false;
case "puzzleyou.be":
case "fotondo.cz":
return _id("cookies-consent-accept-all");
case "match.com":
e = _parent(_sl('a[data-cookie-no-optin][href*="cookie"]'));
return e ? e.nextSibling : false;
case "neu.de":
e = _parent(_sl(".js-cookie-no-optin"));
return e ? e.nextSibling : false;
case "kringloopapp.nl":
e = _ev("h4[contains(., 'Cookies')]");
return e ? _id("modal-close") : false;
case "marokko.nl":
e = _sl(".cookiealert .button");
if (e) e.dispatchEvent(new Event("mousedown"));
return false;
case "totum.com":
e = _sl('.modal.active a[href*="cookie-policy"]');
return e ? _sl("a", e.parentNode.nextSibling) : false;
case "plt.nl":
case "amphion.nl":
return _sl(".site-image .accept");
case "thelily.com":
e = _sl(".gdpr-wall[style] .agree-checkmark");
if (e) e.click();
return _sl(".gdpr-wall[style] .continue-btn");
case "maps.arcgis.com": // s-leipzig
e = _sl(".jimu-widget-splash .jimu-checkbox");
if (e) e.click();
return _sl(".jimu-widget-splash .jimu-btn");
case "nederpix.nl":
case "birdpix.nl":
return _sl('#cookieSettings[style*="block"] #cookieAccept');
case "track-trace.com":
case "pakkesporing.no":
case "forstasidorna.se":
case "forsidene.no":
return _sl(".tingle-modal--visible .tingle-btn--primary");
case "portalsamorzadowy.pl":
case "infodent24.pl":
case "portalspozywczy.pl":
case "promocjada.pl":
case "farmer.pl":
case "wnp.pl":
return ".rodo.open .button";
case "shootingtimes.com":
case "gunsandammo.com":
return _sl(".lity-opened #consent .lity-close");
case "cideon.de":
case "eplan.blog":
return _sl(
'.modal[style*="block"] .m-content-cideon-cookie-consent__accept'
);
case "metro.de":
case "metro.fr":
case "metro.at":
case "metro.hu":
case "metro.bg":
case "metro.it":
case "metro.sk":
case "makro.nl":
case "makro.cz":
case "makro.pt":
case "makro.es":
case "makro.pl":
return '#footer div[style*="block"] .consent-disclaimer-intrusive-with-reject .reject-btn, #footer div[style*="block"] .consent-disclaimer-intrusive .accept-btn';
case "metro.it":
case "makro.cz":
case "makro.pt":
case "makro.pl":
return '.modal[style*="block"] #cookieLawAgreeBtn';
case "metro.co.uk":
return 'body > div[class^="app"][data-project="mol-fe-cmp"] button + button';
case "metro.pe":
return _if(
".swal2-shown",
'//button[text()="Configuración de Cookies"]',
'//button[text()="Solo las funcionales"]'
);
case "footroll.pl":
case "wirtualnemedia.pl":
return _chain(
'div[class^="app_gdpr"] button[class*="manage"]',
'#managePurposes + div [class*="switch_switch"]',
'div[class^="app_gdpr"] button[class*="save_changes"]:not([disabled])'
);
case "merckmanual.nl":
case "msdmanuals.nl":
return _sl(".cookies + form .button");
case "welcomemrbaby.com":
e = _sl(".mfp-ready .dont-show-me");
if (e) e.click();
return _sl(".mfp-ready .dont-show-label ~ a");
case "moderne-landwirtschaft.de":
case "thule.com":
return _sl("#cookieModal.in .btn");
case "transip.nl":
case "transip.eu":
case "cloudvps.nl":
return _sl("#consent-modal .one-btn, .consent-popup__button");
case "healthline.com":
case "greatist.com":
case "medicalnewstoday.com":
e = _sl("#modal-host button:not(.backdrop)");
return e && _ev("span[contains(., 'ACCEPT')]", e) ? e : false;
case "reallygoodemails.com":
e = _sl("#__next > div > .container");
return e ? _ev("button[contains(., 'Okay')]", e) : false;
case "mitsubishielectric.com":
case "mea.com":
return _sl(
".cookie_policy .btn-cookie-yes, .gs18-HasCookieAlert .gs18-CookieAlert .gs18-ButtonLink"
);
case "leblob.fr":
case "bienvenue-a-la-ferme.com":
case "normandiealaferme.com":
case "lagazettedemontpellier.fr":
case "sufilog.com":
case "igbce.de":
case "lagazettedenimes.fr":
case "windev.com":
return ".orejimeBody-WithModalOpen .orejime-Notice-declineButton, .orejime-Layer-show .orejime-Notice-declineButton";
case "bsh-group.com":
case "balay.es":
case "constructa.com":
case "home-connect.com":
case "neff-home.com":
case "gaggenau.com":
return ".cookielaw-modal-layer.is-active .js-accept";
case "wakelet.com":
return _sl(
"#cookie-banner:not([hidden]) .close__icon",
_sl("wk-ui-cookier-banner", _sl("my-app").shadowRoot).shadowRoot
);
case "arcteryx.com":
return _sl(
'.cookies-disclaimer-bar[style*="auto"] .cookies-disclaimer-bar-close',
_id("header-host").shadowRoot
);
case "prosieben.de":
case "joyn.de":
e = _sl("cmp-banner");
e =
e && e.shadowRoot
? _sl(".banner:not(.banner--hidden) cmp-dialog", e.shadowRoot)
: false;
e =
e && e.shadowRoot
? _sl('cmp-button[variant="primary"]', e.shadowRoot)
: false;
return e && e.shadowRoot ? _sl(".button--primary", e.shadowRoot) : false;
case "trusted.de":
e = _sl("trd-cookie-note", _id("trd-app").shadowRoot);
return e ? _sl(".ok", e.shadowRoot) : false;
case "m.economictimes.com":
e = _id("dut_agree");
if (e) e.click();
return e ? e.parentNode.nextSibling.nextSibling : false;
case "gezondheidsplein.nl":
case "ziekenhuis.nl":
return _sl('#cookieModalIntro[style*="block"] .button');
case "mmafighting.com":
case "theverge.com":
return _sl("#privacy-consent button");
case "techopital.com":
case "ticsante.com":
case "sandro-paris.com":
case "feuvert.fr":
return '#cookieConsent[style*="block"] #consentRefuseAllCookies';
case "kerbalspaceprogram.com":
case "bs-ffb.de":
return _sl(".wmpci-popup-close");
case "toruniak.pl":
case "krakusik.pl":
case "kaliszak.pl":
return '#js_rodo_window[style*="block"] .yes-to-all';
case "theawesomer.com":
e = _ev("span[contains(., 'Sounds Good, Thanks')]");
return e ? e.parentNode : false;
case "sava-osiguranje.hr":
case "zav-sava.si":
e = _sl('#frmAgree[style*="block"]');
if (e) {
_sl("input", e).click();
_sl("#btn-agree-go", e).click();
}
return _sl('.modal[style*="block"] #btn-cookie-man-save');
case "smdv.de":
case "voelkner.de":
case "digitalo.de":
case "getgoods.com":
return '.reveal__overlay[style*="block"] [data-cookie_consent="0"]';
case "teb.pl":
case "technikum.pl":
return _sl('#cookieModal[style*="block"] #rodo_accept');
case "d2m-summit.de":
case "influencermarketingforum.de":
return _sl('#dialogBox[style*="block"] #submitConsent');
case "jetcost.com":
case "jetcost.co.uk":
case "jetcost.de":
case "jetcost.pt":
case "voli-diretti.it":
return "#ck-modal-container .btn";
case "olesnica24.com":
case "korsokolbuszowskie.pl":
case "cooltura24.co.uk":
return _sl('.modal[style*="block"] .btn[data-accept]');
case "sfirmware.com":
case "lg-firmwares.com":
return ".fancybox-is-open #gdpr-accept";
case "dsdollrobotics.com":
e = _sl('.pum-active[data-popmake*="eu-cookie"] .pum-close');
if (e) e.click();
return _sl('.pum-active[data-popmake*="one-more-thing"] .pum-close');
case "danskemedier.dk":
return _sl(
'#gdpr-cookie-message:not([style*="none"]) #gdpr-cookie-accept'
);
case "biotechusa.hu":
case "biotechusa.fr":
return _sl('div[class*="modal-is-opened"] #accept-cookie-settings');
case "call-a-pizza.de":
case "telepizza.de":
return _chain(
".fancybox-opened .js_cookies_extended",
".js_cookies_save"
);
case "montafon.at":
case "termeszetjaro.hu":
case "teutonavigator.com":
case "engadin.ch":
case "tourenplaner-rheinland-pfalz.de":
case "wanderservice-schwarzwald.de":
case "dresden-elbland.de":
case "weserbergland-tourismus.de":
case "aargautourismus.ch":
case "luzern.com":
case "tuebinger-umwelten.de":
return ".oax-cookie-consent-select-necessary";
case "outdooractive.com":
case "alpenvereinaktiv.com":
case "sentres.com":
return ".oax-cookie-consent-select-all";
case "pcmweb.nl":
case "techcafe.nl":
case "gamer.nl":
case "insidegamer.nl":
return _sl("#cookie-wall:not([hidden]) .cookie-wall-accept");
case "moomoo.io":
case "krunker.io":
return _sl('#consentBlock[style*="block"] .termsBtn[onclick*="1"]');
case "zee5.com":
e = _sl("app-cookies-check-popup .AcceptButton");
if (e) e.click();
return _sl("app-cookies-check-popup .Accept");
case "idp.funktionstjanster.se":
e = _sl(".cookieContainer #ccbx");
return e && !e.checked ? e : false;
case "betriebsrat.de":
case "snp-online.de":
case "verla.de":
case "brwahl.de":
return _sl('.cookielayermodal[style*="block"] button');
case "alphr.com":
return _sl(
'div[id^="sp_message"] div[class*="sp_choices"] button:nth-child(2)'
);
case "mensjournal.com":
case "assetstore.unity.com":
case "popsugar.co.uk":
case "rte.ie":
case "sika.com":
case "merkurmarkt.at":
case "cnbc.com":
case "sport.pl":
case "mtvuutiset.fi":
case "etonline.com":
case "cnet.com":
case "billa.at":
case "hsfo.dk":
case "olx.pl":
case "avisendanmark.dk":
case "ikea.com":
case "ilsole24ore.com":
case "larousse.fr":
case "tio.ch":
case "tio.ch":
return '#onetrust-banner-sdk:not([style*="none"]) #onetrust-accept-btn-handler';
case "reuters.com":
return '#onetrust-pc-sdk:not([style*="none"]) .ot-pc-refuse-all-handler';
case "dhl.de":
return _if(
'#onetrust-pc-sdk[style*="block"]',
"#ot-group-id-C0002",
"#confirm-choices-handler"
);
case "aerztezeitung.de":
return _if(
'a[href*="/Service/Datenschutzerklaerung-"] ~ a:not([href])',
'//button[text()="Akzeptieren und weiter"]'
);
case "medirect.be":
case "medirect.com.mt":
return _id("idCookiePolicy");
case "goetzmoriz.com":
case "moelders.de":
case "mahler.de":
case "gillet-baustoffe.de":
case "shop.bauwelt.eu":
case "kipp.shop":
case "stewes.de":
return '.modal[style*="block"] .modal-cookie #submitSelected';
case "wiertz.com":
case "oney.pt":
return _sl(".accept-cookies");
case "zwolen.pl":
e = _sl('#g_toplayer[style*="block"] .close');
if (e) e.click();
return _sl('#cook:not([style*="none"]) > a');
case "hscollective.org":
case "geefvoorzorgverleners.nl":
return _sl(".cookie-consent__button--accept");
case "cexpr.es":
case "correosexpress.com":
case "correosexpress.pt":
return _sl('.fullscreen-container[style*="block"] #cookieAceptar');
case "ffm.to":
case "orcd.co":
case "backl.ink":
case "ditto.fm":
case "forbidmedia.com":
return _chain(
".privacy-notice-gdpr .privacy-settings-button",
'//div[./div[@class="privacy-entity-section"]]//a[contains(@class, "save-button")]'
);
case "onecall.no":
case "mycall.no":
return _sl(
'.modal--cookie-consent[style*="block"] [data-target="acceptCookies"]'
);
case "edimax.com":
e = _sl('#world_lang_map[style*="block"] .cookies_close_btn span');
if (e) _sl('#world_lang_map[style*="block"] .cookies_check').click();
return e;
case "apiko.com":
e = _sl('#gatsby-focus-wrapper > div:last-child a[href*="gdpr"]');
return e ? e.parentNode.nextSibling : false;
case "skitenis.pl":
case "holdentalesklep.eu":
case "zmienolej.pl":
return _sl(".fancybox-opened .acceptCondition");
case "peaks.com":
case "peaks.nl":
return _sl("#cookie-modal.show .bubble");
// Elementor related - BEGIN
case "procoders.tech":
case "eileenormsby.com":
case "relai.app":
case "culinaireambiance.com":
case "figurelist.co":
case "realvnc.com":
case "pcbleiterplatte.com":
return _if(
'.elementor-popup-modal:not([style*="none"]) a[href*="privacy"]',
'//div[starts-with(@id, "elementor-popup-modal")][.//a[contains(@href, "privacy")]][not(contains(@style, "none"))]//*[contains(@class, "elementor-button")][contains(@href, "close")]'
);
case "gateway-it.com":
case "covid19awareness.sa":
case "ardutronix.de":
return _if(
'.elementor-popup-modal:not([style*="none"]) .fa-cookie-bite',
'.elementor-popup-modal:not([style*="none"]) .elementor-button[href*="close"]'
);
case "nurea.tv":
case "investmentpunk.academy":
return _if(
'.elementor-popup-modal:not([style*="none"]) img[src*="cookie"], .elementor-popup-modal:not([style*="none"]) img[src*="Cookie"]',
'.elementor-popup-modal:not([style*="none"]) .elementor-button[href*="close"]'
);
case "vulkansauna.de":
case "thecountersignal.com":
case "dirtsheets.net":
case "microshift.com":
case "coffeelab.nl":
case "besutilities.co.uk":
return _if(
'.elementor-popup-modal:not([style*="none"])',
'//div[starts-with(@id, "elementor-popup-modal")][.//*[contains(text(), "cookie") or contains(text(), "Cookie")]][not(contains(@style, "none"))]//*[contains(@class, "elementor-button")][contains(@href, "close")]'
);
case "modneiww.pl":
case "satel.pl":
return _if(
'.elementor-popup-modal:not([style*="none"]) a[href*="prywatnos"]',
'//div[starts-with(@id, "elementor-popup-modal")][.//a[contains(@href, "prywatnos")]][not(contains(@style, "none"))]//*[contains(@class, "elementor-button")][contains(@href, "close")]'
);
case "wielkiegranie.pl":
return _if(
'.elementor-popup-modal:not([style*="none"])',
'//div[starts-with(@id, "elementor-popup-modal")][.//h2[contains(text(), "ciasteczek")]][not(contains(@style, "none"))]//*[contains(@class, "elementor-button")][contains(@href, "close")]'
);
case "alles-mahlsdorf.de":
return '.elementor-popup-modal:not([style*="none"]) form[name="Cookieformular"] button:first-child';
case "delorean.com":
case "ipn.pt":
case "lajtmobile.pl":
return _if(
'.elementor-popup-modal:not([style*="none"]) a[href*="cookie"]',
'//div[starts-with(@id, "elementor-popup-modal")][.//a[contains(@href, "cookie")]][not(contains(@style, "none"))]//a[contains(@href, "close") or contains(@class, "close")]'
);
case "francisetsonami.ch":
return _if(
'.elementor-popup-modal:not([style*="none"]) a[href*="datenschutz"]',
'//div[starts-with(@id, "elementor-popup-modal")][.//a[contains(@href, "datenschutz")]][not(contains(@style, "none"))]//a[contains(@href, "close")]'
);
// Elementor related - END
case "crowdlitoken.ch":
e = _sl('#root > .shadow a[href*="privacy-policy"]');
return e ? e.previousSibling : false;
case "eigene-ip.de":
case "verifyemailaddress.org":
return _sl("main > .flex > #accept");
case "inwerk.de":
case "bioplanete.com":
case "brabus.com":
return _sl('#modal-cookie[style*="block"] #saveCookies');
case "ab.gr":
case "delhaize.be":
case "mega-image.ro":
case "maxi.rs":
return _sl(
'.js-cookies-modal:not(.hidden) .js-cookies-accept-all, button[data-testid="cookie-popup-accept"]'
);
case "isny.de":
case "oberstdorf.de":
case "alpinschule-oberstdorf.de":
case "hotel-mohren.de":
case "ok-bergbahnen.com":
case "tramino.de":
case "markt-oberstdorf.de":
case "deutschertourismuspreis.de":
case "oberstdorf2021.com":
return _sl('.TraminoConsent.show .settings [value="acceptConsent"]');
case "system.t-mobilebankowe.pl":
e = _ev("span[contains(., 'Zamknij')]");
return e ? e.parentNode.parentNode.parentNode : false;
case "sachsen-fernsehen.de":
case "radio-trausnitz.de":
case "radioeins.com":
case "regio-tv.de":
case "radio-bamberg.de":
case "tvo.de":
case "frankenfernsehen.tv":
case "tvaktuell.com":
case "radio8.de":
case "otv.de":
case "rnf.de":
case "baden-tv.com":
case "muenchen.tv":
case "rfo.de":
return _sl(".cmms_cookie_consent_manager.-active .-confirm-selection");
case "gongfm.de":
return _sl(
".cmms_cookie_consent_manager.-active .-confirm-all, #radioplayer-cookie-consent .cookie-consent-button"
);
case "l-bank.de":
case "l-bank.info":
return _sl("#bmLayerCookies.AP_st-visible .AP_mdf-all");
case "wetransfer.com":
e = _sl(".welcome--tandc .button.welcome__agree");
if (e) e.click();
return _sl(
'#tandcs[style*="block"] #accepting.enabled, .transfer__window.terms-conditions .transfer__button, .infobar--terms .button, .welcome__cookie-notice .welcome__button--accept'
);
case "gmx.net":
case "gmx.ch":
case "gmx.at":
case "web.de":
return _if_else(
".window-on #save-all-pur",
[".window-on #save-all-pur"],
[
".window-on #edit-purpose-settings",
"#save-purpose-settings",
"#confirm-reject",
]
);
case "music.yandex.ru":
case "music.yandex.com":
return _sl(".gdpr-popup__button");
case "virginaustralia.com":
case "mediathekviewweb.de":
return _id("cookieAcceptButton");
case "weltbild.de":
case "weltbild.at":
case "jokers.de":
return _sl('.reveal-overlay[style*="block"] .dsgvoButton');
case "backstagepro.de":
case "regioactive.de":
return _sl('#dialogconsent[style*="block"] #acceptall');
case "tyg.se":
case "stoffe.de":
case "myfabrics.co.uk":
case "latka.cz":
return '.slide-up-overlay > input[type="radio"]:checked ~ div .cookie-settings-close';
case "12xl.de":
case "heilsteinwelt.de":
case "elektroversand-schmidt.de":
case "optikplus.de":
case "heldenlounge.de":
case "wissenschaft-shop.de":
return '.modal[style*="block"] #saveCookieSelection';
case "tvmalbork.pl":
case "jelenia.tv":
return _sl('#rodoModal[style*="block"] .btn-success');
case "canaldigital.se":
case "canaldigital.no":
return _sl(".cookieconsentv2--visible .js-accept-cookies-btn");
case "tarifcheck.de":
case "check24.net":
case "affiliate-deals.de":
return ".of-hidden .btn[data-cookie-save-settings]";
case "henschel-schauspiel.de":
e = _sl("#approveform .arrlink");
if (e) _id("cconsentcheck").click();
return e;
case "gsk-gebro.at":
case "voltadol.at":
return _sl(".cookie-banner--visible .cookie-banner__button--accept");
case "restaurant-kitty-leo.de":
case "dieallianzdesguten.com":
return _sl("main ~ div a[draggable]");
case "dpam.com":
case "sylvania-automotive.com":
return _sl('#consent-tracking[style*="block"] .decline');
case "auchan.hu":
case "auchan.pl":
return _sl(".cookie-modal__button--accept");
case "inp-gruppe.de":
case "altoetting.de":
case "micronova.de":
return '#colorbox[style*="block"] .js_cm_consent_essentials_only';
case "hek.de":
return '#colorbox[style*="block"] .js_cm_consent_submit[data-implyall="0"]';
case "flender.com":
return '#colorbox[style*="block"] .consent-accept';
case "alpin-chalets.com":
case "frischteigwaren-huber.de":
return _sl('.overlay.active[data-overlay="privacy"] .overlay_close');
case "campusjaeger.de":
e = _sl(".ReactModal__Overlay--after-open");
return e && _ev("h4[contains(., 'Cookies')]")
? _sl("button + button", e)
: false;
case "oxxio.nl":
e = _sl(".c-modal__content--after-open");
return e && _ev("span[contains(., 'cookiebeleid')]", e)
? _sl("button", e)
: false;
case "monheim.de":
case "maengelmelder.de":
case "xn--mngelmelder-l8a.de":
return _sl('.v--modal-overlay[data-modal="cookie-consent"] .btn-primary');
case "womex.com":
case "piranha.de":
return _sl('.modal[style*="block"] #accept-cookies-all');
case "datenlogger-store.de":
case "nova-motors.de":
case "christy.co.uk":
case "littlelunch.com":
case "xbox.com":
case "resales.de":
case "matt