Initial commit - Typo3 11.5.41

This commit is contained in:
Matteo Gallo
2026-07-03 17:53:31 +02:00
commit 5ca4743197
6811 changed files with 568848 additions and 0 deletions

View File

@@ -0,0 +1,96 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3DataStructure>
<meta type="array">
<langDisable>1</langDisable>
</meta>
<sheets>
<general>
<ROOT type="array">
<TCEforms>
<sheetTitle>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.title</sheetTitle>
</TCEforms>
<el type="array">
<type type="array">
<TCEforms type="array">
<label>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category</label>
<config type="array">
<type>select</type>
<renderType>selectSingle</renderType>
<items>
<numIndex index="0" type="array">
<numIndex index="0">LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category.1</numIndex>
<numIndex index="1">statistics</numIndex>
</numIndex>
<numIndex index="1" type="array">
<numIndex index="0">LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category.2</numIndex>
<numIndex index="1">marketing</numIndex>
</numIndex>
</items>
<enableMultiSelectFilterTextfield>1</enableMultiSelectFilterTextfield>
</config>
</TCEforms>
</type>
<consentscript type="array">
<TCEforms type="array">
<label>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.consentscript</label>
<config type="array">
<type>text</type>
<cols>24</cols>
<rows>8</rows>
<renderType>t3editor</renderType>
<format>html</format>
</config>
</TCEforms>
</consentscript>
</el>
</ROOT>
</general>
<consent>
<ROOT type="array">
<TCEforms>
<sheetTitle>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.consent</sheetTitle>
</TCEforms>
<el type="array">
<notice type="array">
<TCEforms type="array">
<label>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.notice</label>
<config type="array">
<type>input</type>
<size>250</size>
<eval>trim</eval>
<default></default>
<placeholder>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang.xlf:media.notice</placeholder>
</config>
</TCEforms>
</notice>
<description type="array">
<TCEforms type="array">
<label>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.desc</label>
<config type="array">
<type>text</type>
<cols>250</cols>
<rows>3</rows>
<eval>trim</eval>
<default></default>
<placeholder>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang.xlf:media.desc</placeholder>
</config>
</TCEforms>
</description>
<btn type="array">
<TCEforms type="array">
<label>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.btn</label>
<config type="array">
<type>input</type>
<size>250</size>
<eval>trim</eval>
<default></default>
<placeholder>LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang.xlf:media.btn</placeholder>
</config>
</TCEforms>
</btn>
</el>
</ROOT>
</consent>
</sheets>
</T3DataStructure>

View File

@@ -0,0 +1,88 @@
<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<T3DataStructure>
<meta type="array">
<langDisable>1</langDisable>
</meta>
<sheets>
<general>
<ROOT type="array">
<TCEforms>
<sheetTitle>
LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_cookie.title
</sheetTitle>
</TCEforms>
<el type="array">
<!-- startingpoint -->
<settings.startingpoint>
<TCEforms>
<label>LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.startingpoint
</label>
<config>
<type>group</type>
<internal_type>db</internal_type>
<allowed>pages</allowed>
<size>3</size>
<maxitems>50</maxitems>
<minitems>0</minitems>
</config>
</TCEforms>
</settings.startingpoint>
<!-- recursive -->
<settings.recursive>
<TCEforms>
<label>LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.recursive</label>
<config>
<type>select</type>
<renderType>selectSingle</renderType>
<items type="array">
<numIndex index="1" type="array">
<numIndex index="0">
LLL:EXT:news/Resources/Private/Language/locallang_be.xlf:flexforms_general.recursive.I.inherit
</numIndex>
<numIndex index="1"></numIndex>
</numIndex>
<numIndex index="2" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.0
</numIndex>
<numIndex index="1">0</numIndex>
</numIndex>
<numIndex index="3" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.1
</numIndex>
<numIndex index="1">1</numIndex>
</numIndex>
<numIndex index="4" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.2
</numIndex>
<numIndex index="1">2</numIndex>
</numIndex>
<numIndex index="5" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.3
</numIndex>
<numIndex index="1">3</numIndex>
</numIndex>
<numIndex index="6" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.4
</numIndex>
<numIndex index="1">4</numIndex>
</numIndex>
<numIndex index="7" type="array">
<numIndex index="0">
LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:recursive.I.5
</numIndex>
<numIndex index="1">250</numIndex>
</numIndex>
</items>
</config>
</TCEforms>
</settings.recursive>
</el>
</ROOT>
</general>
</sheets>
</T3DataStructure>

View File

@@ -0,0 +1,22 @@
<?php
/*
* Copyright (c) 2021.
*
* @category TYPO3
*
* @copyright 2021 Dirk Persky (https://github.com/DirkPersky)
* @author Dirk Persky <info@dp-wired.de>
* @license MIT
*/
return [
'frontend' => [
'dirkpersky/plain-rendering-handler' => [
'target' => DirkPersky\DpCookieconsent\Middleware\PlainRenderingMiddleware::class,
'description' => '',
'after' => [
'typo3/cms-frontend/prepare-tsfe-rendering',
],
],
],
];

View File

@@ -0,0 +1,9 @@
services:
_defaults:
autowire: true
autoconfigure: true
public: false
DirkPersky\DpCookieconsent\:
resource: '../Classes/*'
exclude: '../Classes/Domain/Model/*'

View File

@@ -0,0 +1,21 @@
<?php
/*
* Copyright (c) 2021.
*
* @category TYPO3
*
* @copyright 2021 Dirk Persky (https://github.com/DirkPersky)
* @author Dirk Persky <info@dp-wired.de>
* @license MIT
*/
defined('TYPO3_MODE') or die();
// Override icon
$GLOBALS['TCA']['pages']['columns']['module']['config']['items'][] = [
0 => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_be.xlf:cookie-folder',
1 => 'dpcookie',
2 => 'apps-cookie-folder-contains'
];
$GLOBALS['TCA']['pages']['ctrl']['typeicon_classes']['contains-dpcookie'] = 'apps-cookie-folder-contains';

View File

@@ -0,0 +1,15 @@
<?php
/*
* Copyright (c) 2021.
*
* @category TYPO3
*
* @copyright 2021 Dirk Persky (https://github.com/DirkPersky)
* @author Dirk Persky <info@dp-wired.de>
* @license MIT
*/
defined('TYPO3_MODE') || die();
// Add Plugin Configs
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addStaticFile('dp_cookieconsent', 'Configuration/TypoScript', 'CookieConsent');

View File

@@ -0,0 +1,43 @@
<?php
/*
* Copyright (c) 2021.
*
* @category TYPO3
*
* @copyright 2021 Dirk Persky (https://github.com/DirkPersky)
* @author Dirk Persky <info@dp-wired.de>
* @license MIT
*/
defined('TYPO3_MODE') || die();
/**
* add Content Loading obj
*/
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
'dp_cookieconsent',
'Pi1',
'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_ajax.title'
);
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_excludelist']['dpcookieconsent_pi1'] = 'recursive,select_key,pages';
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist']['dpcookieconsent_pi1'] = 'pi_flexform';
// set Flexform for content loading
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
'dpcookieconsent_pi1',
'FILE:EXT:dp_cookieconsent/Configuration/FlexForms/ConsentAjax.xml'
);
/**
* add Cookie list ob
*/
\TYPO3\CMS\Extbase\Utility\ExtensionUtility::registerPlugin(
'dp_cookieconsent',
'Pi2',
'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_cookie.title'
);
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_excludelist']['dpcookieconsent_pi2'] = 'recursive,select_key,pages';
$GLOBALS['TCA']['tt_content']['types']['list']['subtypes_addlist']['dpcookieconsent_pi2'] = 'pi_flexform';
// set Flexform for Cookie List
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addPiFlexFormValue(
'dpcookieconsent_pi2',
'FILE:EXT:dp_cookieconsent/Configuration/FlexForms/ConsentCookies.xml'
);

View File

@@ -0,0 +1,221 @@
<?php
/*
* Copyright (c) 2021.
*
* @category TYPO3
*
* @copyright 2021 Dirk Persky (https://github.com/DirkPersky)
* @author Dirk Persky <info@dp-wired.de>
* @license MIT
*/
defined('TYPO3_MODE') or die();
return [
'ctrl' => [
'title' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie',
'label' => 'name',
'tstamp' => 'tstamp',
'crdate' => 'crdate',
'cruser_id' => 'cruser_id',
'sortby' => 'sorting',
'delete' => 'deleted',
'enablecolumns' => [
'disabled' => 'hidden',
'starttime' => 'starttime',
'endtime' => 'endtime',
],
'searchFields' => 'name,description,vendor,duration,category',
'iconfile' => 'EXT:dp_cookieconsent/Resources/Public/Icons/ext-dp-cookie-icon.png'
],
'palettes' => [
'type' => [
'showitem' => 'name, category'
],
'dur' => [
'showitem' => 'duration, duration_time'
],
'vend' => [
'showitem' => 'vendor, vendor_link'
]
],
'types' => [
'0' => [
'showitem' => '
hidden,
--palette--;LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.name; type,
description,
--palette--;LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration; dur,
--palette--;LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.vendor; vend,
--div--;LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.script, script_src, script,
--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_ttc.xlf:tabs.access, starttime, endtime'
],
],
'columns' => [
'hidden' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.hidden',
'config' => [
'type' => 'check',
'renderType' => 'checkboxToggle',
'default' => 1,
'items' => [
[
0 => '',
1 => '',
'invertStateDisplay' => true,
],
],
],
],
'starttime' => [
'exclude' => true,
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.starttime',
'config' => [
'type' => 'input',
'renderType' => 'inputDateTime',
'eval' => 'datetime,int',
'default' => 0,
'behaviour' => [
'allowLanguageSynchronization' => true,
],
],
],
'endtime' => [
'exclude' => true,
'label' => 'LLL:EXT:core/Resources/Private/Language/locallang_general.xlf:LGL.endtime',
'config' => [
'type' => 'input',
'renderType' => 'inputDateTime',
'eval' => 'datetime,int',
'default' => 0,
'range' => [
'upper' => mktime(0, 0, 0, 1, 1, 2038),
],
'behaviour' => [
'allowLanguageSynchronization' => true,
],
],
],
'name' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.name',
'config' => [
'type' => 'input',
'size' => 75,
'eval' => 'trim,required'
],
],
'category' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category',
'config' => [
'type' => 'select',
'renderType' => 'selectSingle',
'default' => 0,
'items' => [
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category.0', 0],
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category.1', 1],
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.category.2', 2],
],
],
'onChange' => 'reload'
],
'description' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.description',
'description' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.description.info',
'config' => [
'type' => 'input',
'size' => 50,
'eval' => 'trim'
],
],
'duration' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration',
'config' => [
'type' => 'input',
'size' => 50,
'eval' => 'trim,required'
],
],
'duration_time' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration_time',
'config' => [
'type' => 'select',
'renderType' => 'selectSingle',
'default' => 0,
'items' => [
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration_time.0', 0],
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration_time.1', 1],
['LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.duration_time.2', 2],
],
],
],
'vendor' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.vendor',
'config' => [
'type' => 'input',
'size' => 50,
'eval' => 'trim,required'
],
],
'vendor_link' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.vendor_link',
'config' => [
'type' => 'input',
'size' => 50,
'eval' => 'trim',
'renderType' => 'inputLink',
'fieldControl' => [
'linkPopup' => [
'options' => [
'blindLinkOptions' => 'file, folder, mail, spec, telephone'
]
]
]
],
],
'script_src' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.script_src',
'config' => [
'type' => 'input',
'size' => 50,
'eval' => 'trim',
'renderType' => 'inputLink',
'fieldControl' => [
'linkPopup' => [
'options' => [
'blindLinkOptions' => 'page, folder, mail, spec, telephone'
]
]
]
],
'displayCond' => 'FIELD:category:>:0'
],
'script' => [
'exclude' => true,
'label' => 'LLL:EXT:dp_cookieconsent/Resources/Private/Language/locallang_db.xlf:tx_dpcookieconsent_domain_model_cookie.script',
'config' => [
'type' => 'text',
'cols' => 50,
'rows' => 15,
'eval' => 'trim',
'renderType' => 't3editor',
'format' => 'javascript'
],
'displayCond' => 'FIELD:category:>:0'
],
]
];

View File

@@ -0,0 +1,65 @@
plugin.tx_cookieconsent {
view {
# cat=plugin.cookieconsent/file; type=string; label=templateRootPath
templateRootPath =
# cat=plugin.cookieconsent/file; type=string; label=partialRootPath
partialRootPath =
# cat=plugin.cookieconsent/file; type=string; label=layoutRootPath
layoutRootPath =
}
settings {
# cat=plugin.cookieconsent; type=int+; label= PID of Cookie Storage
storagePid =
# cat=plugin.cookieconsent; type=int+; label= PID to Data Protection
url =
# cat=plugin.cookieconsent; type=string; label= target for link tag
target = _blank
# cat=plugin.cookieconsent; type=options[edgeless,classic,basic,wire]; label=Layout
theme = edgeless
# cat=plugin.cookieconsent; type=options[top,top-left,top-right,bottom,bottom-left,bottom-right]; label= Position
position = bottom-right
# cat=plugin.cookieconsent; type=options[info,opt-out,opt-in]; label = Type
type = info
# cat=plugin.cookieconsent; type=options[true,false]; label = adds a button to review the consent window
revokable = true
# cat=plugin.cookieconsent; type=options[true,false]; label = pre check statistics in checkboxes layout
statistics = false
# cat=plugin.cookieconsent; type=options[true,false]; label = pre check marketing in checkboxes layout
marketing = false
# cat=plugin.cookieconsent; type=options[true,false]; label = force page reload after revoke
reloadOnRevoke = false
overlay {
# cat=plugin.cookieconsent/overlay; type=options[true,false]; label = display iframe overlay
notice = true
box {
# cat=plugin.cookieconsent/overlay; type=color; label= Overlay: Background
background = rgba(0,0,0,.8)
# cat=plugin.cookieconsent/overlay; type=color; label= Overlay: Text
text = #fff
}
button {
# cat=plugin.cookieconsent/overlay; type=color; label= Overlay Button: Background
background = #b81839
# cat=plugin.cookieconsent/overlay; type=color; label= Overlay Button: Text
text = #fff
}
}
palette {
popup {
# cat=plugin.cookieconsent/popup; type=color; label= Bar: Background
background = rgba(0,0,0,.8)
# cat=plugin.cookieconsent/popup; type=color; label= Bar: Text
text = #fff
}
button {
# cat=plugin.cookieconsent/button; type=color; label= Button: Background
background = #b81839
# cat=plugin.cookieconsent/button; type=color; label= Button: Text
text = #fff
}
}
}
}

View File

@@ -0,0 +1,129 @@
# ==============================================
# FE-Plugin configuration for EXT:dp_cookieconsent
# ==============================================
plugin.tx_dpcookieconsent {
view {
templateRootPaths {
0 = EXT:dp_cookieconsent/Resources/Private/Templates/
1 = {$plugin.tx_cookieconsent.view.templateRootPath}
}
partialRootPaths {
0 = EXT:dp_cookieconsent/Resources/Private/Partials/
1 = {$plugin.tx_cookieconsent.view.partialRootPath}
}
layoutRootPaths {
0 = EXT:dp_cookieconsent/Resources/Private/Layouts/
1 = {$plugin.tx_cookieconsent.view.layoutRootPath}
}
}
settings {
url = {$plugin.tx_cookieconsent.settings.url}
target = {$plugin.tx_cookieconsent.settings.target}
theme = {$plugin.tx_cookieconsent.settings.theme}
position = {$plugin.tx_cookieconsent.settings.position}
type = {$plugin.tx_cookieconsent.settings.type}
revokable = {$plugin.tx_cookieconsent.settings.revokable}
reloadOnRevoke = {$plugin.tx_cookieconsent.settings.reloadOnRevoke}
checkboxes {
statistics = {$plugin.tx_cookieconsent.settings.statistics}
marketing = {$plugin.tx_cookieconsent.settings.marketing}
}
overlay {
notice = {$plugin.tx_cookieconsent.settings.overlay.notice}
box {
background = {$plugin.tx_cookieconsent.settings.overlay.box.background}
text = {$plugin.tx_cookieconsent.settings.overlay.box.text}
}
button {
background = {$plugin.tx_cookieconsent.settings.overlay.button.background}
text = {$plugin.tx_cookieconsent.settings.overlay.button.text}
}
}
palette {
popup {
background = {$plugin.tx_cookieconsent.settings.palette.popup.background}
text = {$plugin.tx_cookieconsent.settings.palette.popup.text}
}
button {
background = {$plugin.tx_cookieconsent.settings.palette.button.background}
text = {$plugin.tx_cookieconsent.settings.palette.button.text}
}
}
}
}
lib.dp_cookieconsent = FLUIDTEMPLATE
lib.dp_cookieconsent {
file = EXT:dp_cookieconsent/Resources/Private/Layouts/Cookie.html
templateName = Cookie
templateRootPaths < plugin.tx_dpcookieconsent.view.templateRootPaths
partialRootPaths < plugin.tx_dpcookieconsent.view.partialRootPaths
layoutRootPaths < plugin.tx_dpcookieconsent.view.layoutRootPaths
settings < plugin.tx_dpcookieconsent.settings
dataProcessing {
10 = DirkPersky\DpCookieconsent\DataProcessing\CookieScriptsProcessor
10 {
as = dp_cookie_scripts
pid = {$plugin.tx_cookieconsent.settings.storagePid}
}
}
}
page {
includeCSS {
dp_cookieconsent = EXT:dp_cookieconsent/Resources/Public/css/dp_cookieconsent.css
}
includeJSFooter {
dp_cookieconsent = EXT:dp_cookieconsent/Resources/Public/JavaScript/dp_cookieconsent.js
}
headerData {
# cs_seo hook
657 {
# Modify Google Analytics from CS_SEO
10 {
stdWrap.replacement {
10 {
search = <script
replace = <script data-ignore="1" data-cookieconsent="statistics" type="text/plain"
}
20 {
search = src=
replace = data-src=
}
}
}
}
998 = COA
998 {
# Modify Google Tag-Manager & Piwiki from CS_SEO
10 = COA
10 {
wrap = <script data-ignore="1" data-cookieconsent="statistics" type="text/plain">|</script>
required = 1
10 < page.jsInline.654
}
}
}
footerData {
998 = COA
998 {
# Add Consent Config to Script
20 < lib.dp_cookieconsent
}
}
}
# Remove Original Google Tag-Manager & Piwiki from CS_SEO
page.jsInline.654 >