Documentation

ServiceTemplate extends AbstractTemplate
in package

Service template.

Table of Contents

Constants

EXECUTE_PRIORITY_DEFAULT  = 10
LEGAL_BASIS  = [self::LEGAL_BASIS_CONSENT, self::LEGAL_BASIS_LEGAL_REQUIREMENT, self::LEGAL_BASIS_LEGITIMATE_INTEREST]
LEGAL_BASIS_CONSENT  = 'consent'
LEGAL_BASIS_LEGAL_REQUIREMENT  = 'legal-requirement'
LEGAL_BASIS_LEGITIMATE_INTEREST  = 'legitimate-interest'
SPECIAL_TREATMENT_BINDING_CORPORATE_RULES  = 'binding-corporate-rules'
SPECIAL_TREATMENT_CONTRACTUAL_ASSURANCES_WITH_SUB_PROCESSORS  = 'contractual-assurances-with-sub-processors'
SPECIAL_TREATMENT_PROVIDER_IS_SELF_CERTIFIED_TRANS_ATLANTIC_DATA_PRIVACY_FRAMEWORK  = 'provider-is-self-certified-trans-atlantic-data-privacy-framework'
SPECIAL_TREATMENT_STANDARD_CONTRACTUAL_CLAUSES  = 'standard-contractual-clauses'
STATUS_DRAFT  = 'draft'
STATUS_PUBLISHED  = 'published'
TIER_FREE  = 'free'
TIER_PRO  = 'pro'

Properties

$codeOnPageLoad  : string
Code on page load.
$codeOptIn  : string
Code on opt in.
$codeOptOut  : string
Code on opt in.
$consumerData  : array<string|int, mixed>
Calculated consumer data which can be filled by middlewares.
$createContentBlockerNotice  : string
Create-content-blocker notice.
$createdAt  : int
Meta data: creation date and time of template version (service cloud saves templates immutable so each new version gets an own updated `createdAt` -> no `modifiedAt` needed).
$dataProcessingInCountries  : array<string|int, string>
In which countries does thie service template process data? 2-letter ISO codes.
$dataProcessingInCountriesSpecialTreatments  : array<string|int, string>
When a service processes data to an unsafe country, the user can select from various special treatments to skip the consent via GDPR Article 49.
$deleteTechnicalDefinitionsAfterOptOut  : bool
If `true` the plugin should try to delete all technical definitions on opt-out.
$dynamicFields  : array<string|int, mixed>
Dynamic fields for the code / script fields.
$enabledWhenOneOf  : array<string|int, string>
Meta data: rules overwriting the `isDisabled` property.
$executeCodeOptInWhenNoTagManagerConsentIsGiven  : bool
Execute code on opt-in only when consent for tag manager is not given.
$executeCodeOptOutWhenNoTagManagerConsentIsGiven  : bool
Execute code on opt-in only when consent for tag manager is not given.
$executePriority  : int
Execute priority for all the opt-in / opt-out code.
$extendsIdentifier  : string
Meta data: when this template got extended this is the parent identifier.
$googleConsentModeConsentTypes  : array<string|int, string>
Google Consent Mode consent types.
$group  : string
Predefined group.
$groupNotice  : string
Group notice.
$headline  : string
Meta data: headline.
$id  : int
Meta data: external ID within service cloud.
$identifier  : string
Meta data: Unique identifier within service cloud.
$isCdn  : bool
If yes the service is a CDN. This allows us to e.g. show the service in the scanner with a different UI (e.g.
$isEmbeddingOnlyExternalResources  : bool
If `true` the service does not set any cookies but transfers e.g. ip address through a network request.
$isHidden  : int
Meta data: only store the template but never show e.g. in frontend.
$isProviderCurrentWebsite  : bool
If yes there will be no external privacy policy, imprint and provider name. It needs to be filled with a middleware or manually.
$language  : string
Meta data: Language in 2-char.
$legalBasis  : string
Legal basis.
$legalBasisNotice  : string
Legal basis notice.
$logoUrl  : mixed
Meta data: logo of template.
$name  : string
Meta data: name
$provider  : string
Provider name.
$providerContact  : stdClass
Provider contact (email, phone, link).
$providerLegalNoticeUrl  : string
Provider legal notice URL (e.g. imprint).
$providerNotice  : string
Provider notice.
$providerPrivacyPolicyUrl  : string
Provider privacy policy URL.
$purpose  : string
Purpose of the service.
$recommendedWhenOneOf  : array<string|int, string>
Meta data: rules overwriting the `consumerData['isRecommended']` property.
$sccConclusionInstructionsNotice  : string
SCC conclusion instructions notice. This should be used together with `isCdn`.
$shouldUncheckContentBlockerCheckbox  : bool
By default, when a content blocker for a service exists it should be automatically created in UI.
$shouldUncheckContentBlockerCheckboxWhenOneOf  : array<string|int, string>
Set `shouldUncheckContentBlockerCheckbox` with `WhenOneOf` statements.
$status  : string
Meta data: status within the service cloud (`published`, `draft`).
$subHeadline  : string
Meta data: sub headline.
$successorOfIdentifierInfo  : array<string|int, array<string|int, mixed>>
A list of identifiers that replaces this template, as the old template has been deleted.
$tagManagerOptInEventName  : string
Tag manager opt-in event name.
$tagManagerOptOutEventName  : string
Tag manager opt-out event name.
$technicalDefinitions  : array<string|int, mixed>
Technical definitions.
$technicalHandlingNotice  : string
Technical-handling notice.
$tier  : string
Meta data: Can be `free` or `pro`.
$version  : int
Meta data: headline.
$beforeMiddleware  : AbstractTemplate
Original, before running any middleware, template data. This is useful for external data sources which should really be contaced e.g. once a day and a invalidation should only "retrigger" recalculation of middlewares.
$consumer  : mixed

Methods

__clone()  : mixed
__construct()  : mixed
C'tor.
fromArray()  : mixed
Override all properties from an array.
getBeforeMiddleware()  : mixed
Getter.
getConsumer()  : mixed
Getter.
memoizeBeforeMiddleware()  : mixed
Memoize current state of template so it can be retrieved with `getBeforeMiddleware` after running all middlewares.
retrieved()  : mixed
Run all `beforeRetrievingTemplate` middlewares.
toArray()  : mixed
Output this service template as array. This is statically available to make usage with `array_map` more easier.
toArrays()  : mixed
Output multiple service templates as array representation.
use()  : static
Modifies the template data through middleware and e.g. replaces content, variables, .

Constants

public mixed LEGAL_BASIS = [self::LEGAL_BASIS_CONSENT, self::LEGAL_BASIS_LEGAL_REQUIREMENT, self::LEGAL_BASIS_LEGITIMATE_INTEREST]
public mixed LEGAL_BASIS_LEGAL_REQUIREMENT = 'legal-requirement'
public mixed LEGAL_BASIS_LEGITIMATE_INTEREST = 'legitimate-interest'

SPECIAL_TREATMENT_BINDING_CORPORATE_RULES

public mixed SPECIAL_TREATMENT_BINDING_CORPORATE_RULES = 'binding-corporate-rules'

SPECIAL_TREATMENT_CONTRACTUAL_ASSURANCES_WITH_SUB_PROCESSORS

public mixed SPECIAL_TREATMENT_CONTRACTUAL_ASSURANCES_WITH_SUB_PROCESSORS = 'contractual-assurances-with-sub-processors'

SPECIAL_TREATMENT_PROVIDER_IS_SELF_CERTIFIED_TRANS_ATLANTIC_DATA_PRIVACY_FRAMEWORK

public mixed SPECIAL_TREATMENT_PROVIDER_IS_SELF_CERTIFIED_TRANS_ATLANTIC_DATA_PRIVACY_FRAMEWORK = 'provider-is-self-certified-trans-atlantic-data-privacy-framework'

SPECIAL_TREATMENT_STANDARD_CONTRACTUAL_CLAUSES

public mixed SPECIAL_TREATMENT_STANDARD_CONTRACTUAL_CLAUSES = 'standard-contractual-clauses'

Properties

$consumerData

Calculated consumer data which can be filled by middlewares.

public array<string|int, mixed> $consumerData = ['tags' => []]

Predefined data:

tags                     = string[]
-- List of tags (like badges), key = Badge text, value = Tooltip text

isCreated                = boolean
-- Is the template created in the consumer environment?

id                       = int
-- ID of the record within the consumer environment using this template

rules                    = string[]
-- Flattened string array of all rule-expressions

isDisabled               = boolean
-- Is this template enabled within this consumer environment (e.g. WordPress plugin active?).

isRecommended            = boolean
-- Is this template recommended within this consumer environment (e.g. Cloudflare detected).

scan                     = { foundCount: number; foundOnSitesCount: number; lastScanned?: string; }
-- Scan results for a given template by identifier.

isIgnored                = boolean
-- Is this template ignored within this consumer environment (e.g. ignored in scanner results).

successorOf              = Array<{ identifier: string; id: int; }>
-- If a template is a successor to another template, this array holds infos about the ID of the record within the consumer environment using this template

$createContentBlockerNotice

Create-content-blocker notice.

public string $createContentBlockerNotice

$createdAt

Meta data: creation date and time of template version (service cloud saves templates immutable so each new version gets an own updated `createdAt` -> no `modifiedAt` needed).

public int $createdAt

$dataProcessingInCountries

In which countries does thie service template process data? 2-letter ISO codes.

public array<string|int, string> $dataProcessingInCountries = []

$dataProcessingInCountriesSpecialTreatments

When a service processes data to an unsafe country, the user can select from various special treatments to skip the consent via GDPR Article 49.

public array<string|int, string> $dataProcessingInCountriesSpecialTreatments = []

$deleteTechnicalDefinitionsAfterOptOut

If `true` the plugin should try to delete all technical definitions on opt-out.

public bool $deleteTechnicalDefinitionsAfterOptOut

$dynamicFields

Dynamic fields for the code / script fields.

public array<string|int, mixed> $dynamicFields = []

$enabledWhenOneOf

Meta data: rules overwriting the `isDisabled` property.

public array<string|int, string> $enabledWhenOneOf = []

$executeCodeOptInWhenNoTagManagerConsentIsGiven

Execute code on opt-in only when consent for tag manager is not given.

public bool $executeCodeOptInWhenNoTagManagerConsentIsGiven

$executeCodeOptOutWhenNoTagManagerConsentIsGiven

Execute code on opt-in only when consent for tag manager is not given.

public bool $executeCodeOptOutWhenNoTagManagerConsentIsGiven

$executePriority

Execute priority for all the opt-in / opt-out code.

public int $executePriority = self::EXECUTE_PRIORITY_DEFAULT

$extendsIdentifier

Meta data: when this template got extended this is the parent identifier.

public string $extendsIdentifier

$googleConsentModeConsentTypes

Google Consent Mode consent types.

public array<string|int, string> $googleConsentModeConsentTypes = []

$identifier

Meta data: Unique identifier within service cloud.

public string $identifier

$isCdn

If yes the service is a CDN. This allows us to e.g. show the service in the scanner with a different UI (e.g.

public bool $isCdn

show the logo of the CDN and how to handle it).

$isEmbeddingOnlyExternalResources

If `true` the service does not set any cookies but transfers e.g. ip address through a network request.

public bool $isEmbeddingOnlyExternalResources

$isHidden

Meta data: only store the template but never show e.g. in frontend.

public int $isHidden

$isProviderCurrentWebsite

If yes there will be no external privacy policy, imprint and provider name. It needs to be filled with a middleware or manually.

public bool $isProviderCurrentWebsite

$legalBasisNotice

Legal basis notice.

public string $legalBasisNotice

$providerContact

Provider contact (email, phone, link).

public stdClass $providerContact

$providerLegalNoticeUrl

Provider legal notice URL (e.g. imprint).

public string $providerLegalNoticeUrl

$providerPrivacyPolicyUrl

Provider privacy policy URL.

public string $providerPrivacyPolicyUrl

$recommendedWhenOneOf

Meta data: rules overwriting the `consumerData['isRecommended']` property.

public array<string|int, string> $recommendedWhenOneOf = []

$sccConclusionInstructionsNotice

SCC conclusion instructions notice. This should be used together with `isCdn`.

public string $sccConclusionInstructionsNotice

$shouldUncheckContentBlockerCheckbox

By default, when a content blocker for a service exists it should be automatically created in UI.

public bool $shouldUncheckContentBlockerCheckbox

Set this to true if the checkbox in the UI should not be checked and continue without Content Blocker.

$shouldUncheckContentBlockerCheckboxWhenOneOf

Set `shouldUncheckContentBlockerCheckbox` with `WhenOneOf` statements.

public array<string|int, string> $shouldUncheckContentBlockerCheckboxWhenOneOf = []

$status

Meta data: status within the service cloud (`published`, `draft`).

public string $status

$successorOfIdentifierInfo

A list of identifiers that replaces this template, as the old template has been deleted.

public array<string|int, array<string|int, mixed>> $successorOfIdentifierInfo = []

$tagManagerOptInEventName

Tag manager opt-in event name.

public string $tagManagerOptInEventName

$tagManagerOptOutEventName

Tag manager opt-out event name.

public string $tagManagerOptOutEventName

$technicalDefinitions

Technical definitions.

public array<string|int, mixed> $technicalDefinitions = []

$technicalHandlingNotice

Technical-handling notice.

public string $technicalHandlingNotice

$beforeMiddleware

Original, before running any middleware, template data. This is useful for external data sources which should really be contaced e.g. once a day and a invalidation should only "retrigger" recalculation of middlewares.

private AbstractTemplate $beforeMiddleware = null

This data can be for example be saved in a Redis object cache or database column.

Methods

fromArray()

Override all properties from an array.

public fromArray(array<string|int, mixed> $arr) : mixed
Parameters
$arr : array<string|int, mixed>

getBeforeMiddleware()

Getter.

public getBeforeMiddleware() : mixed
Tags
codeCoverageIgnore

getConsumer()

Getter.

public getConsumer() : mixed
Tags
codeCoverageIgnore

memoizeBeforeMiddleware()

Memoize current state of template so it can be retrieved with `getBeforeMiddleware` after running all middlewares.

public memoizeBeforeMiddleware() : mixed

retrieved()

Run all `beforeRetrievingTemplate` middlewares.

public retrieved() : mixed

use()

Modifies the template data through middleware and e.g. replaces content, variables, .

public use() : static

..

Return values
static

        
On this page

Search results