TcfForwardGdprStringInUrl
extends AbstractPlugin
in package
Read from a list of vendors and their device disclosure domains and transform URLs to TCF compatible URLs by adding e.g. the `gdpr=` and `gdpr_consent=` query parameters.
Tags
Table of Contents
Constants
- TAG_ATTRIBUTE_MAP = ['tags' => ['a', 'img'], 'attr' => ['href', 'src']]
Properties
- $headlessContentBlocker : mixed
- $vendorDomains : array<string|int, TcfVendorDomainsBlockable>
- List of doamins.
Methods
- __construct() : mixed
- C'tor.
- addVendorDisclosureDomains() : mixed
- Add a vendor with an array of domains which gets used to transform the URLs.
- afterSetup() : mixed
- The content blocker got setup completely.
- beforeMatch() : mixed
- Called before a match got found.
- blockableStringExpression() : string
- Allows to modify the passed string expression to a blockable.
- blockedMatch() : mixed
- Called after a match got blocked.
- checkResult() : BlockedResult
- Called after a match got found and the matcher decided, if it should be blocked or not.
- getHeadlessContentBlocker() : mixed
- Getter.
- init() : mixed
- Initialize your plugin add e.g. new visual parent definitions.
- inlineStyleBlockRule() : bool
- Decide if a URL in a CSS rule should be blocked.
- inlineStyleModifyDocuments() : bool
- Allows to modify blocked CSS documents.
- inlineStyleShouldBeExtracted() : bool
- Do not extract blocked rules of a CSS inline script to a second document.
- keepAlwaysAttributes() : array<string|int, string>
- Keep attributes for a specific match.
- modifyHtmlAfterProcessing() : mixed
- Allows to modify the HTML after the content blocker has done its job.
- notBlockedMatch() : mixed
- Called after a match got not blocked. Opposite of `blockedMatch`.
- processMatch() : mixed
- Process a found URL.
- setup() : mixed
- Before the content blocker gets setup.
- skipInlineScriptVariableAssignment() : array<string|int, string>
- Skip inline script by variable name.
- visualParent() : bool|string|number
- Set a visual parent for a specific match.
Constants
TAG_ATTRIBUTE_MAP
public
mixed
TAG_ATTRIBUTE_MAP
= ['tags' => ['a', 'img'], 'attr' => ['href', 'src']]
Properties
$headlessContentBlocker
private
mixed
$headlessContentBlocker
$vendorDomains
List of doamins.
private
array<string|int, TcfVendorDomainsBlockable>
$vendorDomains
= []
Methods
__construct()
C'tor.
public
final __construct(HeadlessContentBlocker $headlessContentBlocker) : mixed
Parameters
- $headlessContentBlocker : HeadlessContentBlocker
addVendorDisclosureDomains()
Add a vendor with an array of domains which gets used to transform the URLs.
public
addVendorDisclosureDomains(int $vendorId, array<string|int, mixed> $domains) : mixed
Parameters
- $vendorId : int
- $domains : array<string|int, mixed>
afterSetup()
The content blocker got setup completely.
public
afterSetup() : mixed
beforeMatch()
Called before a match got found.
public
beforeMatch(AbstractMatcher $matcher, AbstractMatch $match) : mixed
Parameters
- $matcher : AbstractMatcher
- $match : AbstractMatch
blockableStringExpression()
Allows to modify the passed string expression to a blockable.
public
blockableStringExpression(string $expression, AbstractBlockable $blockable) : string
Parameters
- $expression : string
- $blockable : AbstractBlockable
Return values
stringblockedMatch()
Called after a match got blocked.
public
blockedMatch(BlockedResult $result, AbstractMatcher $matcher, AbstractMatch $match) : mixed
Parameters
- $result : BlockedResult
- $matcher : AbstractMatcher
- $match : AbstractMatch
checkResult()
Called after a match got found and the matcher decided, if it should be blocked or not.
public
checkResult(BlockedResult $result, AbstractMatcher $matcher, AbstractMatch $match) : BlockedResult
Parameters
- $result : BlockedResult
- $matcher : AbstractMatcher
- $match : AbstractMatch
Return values
BlockedResultgetHeadlessContentBlocker()
Getter.
public
final getHeadlessContentBlocker() : mixed
init()
Initialize your plugin add e.g. new visual parent definitions.
public
init() : mixed
inlineStyleBlockRule()
Decide if a URL in a CSS rule should be blocked.
public
inlineStyleBlockRule(BlockedResult $result, string $url, StyleInlineMatcher|StyleInlineAttributeMatcher $matcher, StyleInlineMatch|StyleInlineAttributeMatch $match) : bool
Parameters
- $result : BlockedResult
- $url : string
- $matcher : StyleInlineMatcher|StyleInlineAttributeMatcher
- $match : StyleInlineMatch|StyleInlineAttributeMatch
Return values
boolinlineStyleModifyDocuments()
Allows to modify blocked CSS documents.
public
inlineStyleModifyDocuments(Document $document, Document $extractedDocument, StyleInlineMatcher|StyleInlineAttributeMatcher $matcher, StyleInlineMatch|StyleInlineAttributeMatch $match) : bool
Parameters
- $document : Document
- $extractedDocument : Document
- $matcher : StyleInlineMatcher|StyleInlineAttributeMatcher
- $match : StyleInlineMatch|StyleInlineAttributeMatch
Return values
boolinlineStyleShouldBeExtracted()
Do not extract blocked rules of a CSS inline script to a second document.
public
inlineStyleShouldBeExtracted(bool $extract, StyleInlineMatcher|StyleInlineAttributeMatcher $matcher, StyleInlineMatch|StyleInlineAttributeMatch $match) : bool
Parameters
- $extract : bool
- $matcher : StyleInlineMatcher|StyleInlineAttributeMatcher
- $match : StyleInlineMatch|StyleInlineAttributeMatch
Return values
boolkeepAlwaysAttributes()
Keep attributes for a specific match.
public
keepAlwaysAttributes(array<string|int, string> $keepAttributes, AbstractMatcher $matcher, AbstractMatch $match) : array<string|int, string>
Parameters
- $keepAttributes : array<string|int, string>
- $matcher : AbstractMatcher
- $match : AbstractMatch
Return values
array<string|int, string>modifyHtmlAfterProcessing()
Allows to modify the HTML after the content blocker has done its job.
public
modifyHtmlAfterProcessing(string $html) : mixed
Parameters
- $html : string
notBlockedMatch()
Called after a match got not blocked. Opposite of `blockedMatch`.
public
notBlockedMatch(BlockedResult $result, AbstractMatcher $matcher, AbstractMatch $match) : mixed
Parameters
- $result : BlockedResult
- $matcher : AbstractMatcher
- $match : AbstractMatch
processMatch()
Process a found URL.
public
processMatch(TagAttributeMatch $match) : mixed
Parameters
- $match : TagAttributeMatch
setup()
Before the content blocker gets setup.
public
setup() : mixed
skipInlineScriptVariableAssignment()
Skip inline script by variable name.
public
skipInlineScriptVariableAssignment(array<string|int, string> $names, ScriptInlineMatcher $matcher, ScriptInlineMatch $match) : array<string|int, string>
Parameters
- $names : array<string|int, string>
- $matcher : ScriptInlineMatcher
- $match : ScriptInlineMatch
Return values
array<string|int, string>visualParent()
Set a visual parent for a specific match.
public
visualParent(bool|string|number $visualParent, AbstractMatcher $matcher, AbstractMatch $match) : bool|string|number
Parameters
- $visualParent : bool|string|number
- $matcher : AbstractMatcher
- $match : AbstractMatch