AC- bilden diese Einwilligung im Template ab: Sie bauen damit das Einwilligungsbanner, und Sie klammern damit die Dienste selbst ein, sodass ein Dienst ohne Zustimmung gar nicht erst in die Seite gelangt.
Das Modell dahinter
Drei Ebenen greifen ineinander, und die Tags folgen genau dieser Gliederung:- Der einzelne Dienst. Jeder datenschutzrelevante Dienst wird in der
shop.configim Abschnitt<AgreementCookies>als eigener Eintrag angelegt und bekommt eine ID. Die Tags dazu beginnen mitAC-Entry. - Die Gruppierung. Dienste können zu Gruppen zusammengefasst werden, beispielsweise “Statistik” oder “Komfort”, sodass der Besucher nicht über jeden einzelnen Dienst entscheiden muss. Die Tags dazu beginnen mit
AC-ConsentGroup. - Alles auf einmal. Für den Schalter “Alles akzeptieren” gibt es die Tags mit
AC-ConsentAll.
Voraussetzung: die Funktion einschalten
AlleAC-Tags hängen am Parameter Allow im Abschnitt <AgreementCookies> der shop.config.
Mit
Allow = test prüfen Sie ein neues Einwilligungsbanner, ohne dass es für Besucher sichtbar wird. Außerhalb des Testmodus verhält sich der Shop dabei wie bei no.
Ein vollständiges Einwilligungsbanner
Die Einzeltags sind weiter unten beschrieben, im Template treten sie aber immer gemeinsam auf. Das folgende Beispiel zeigt ein Banner mit Gruppierungen, das nur erscheint, solange eine Entscheidung aussteht.DC-DynamicLoop1 ist nötig, weil AC-ConsentGroupList nur eine kommaseparierte Liste der Gruppen-IDs liefert und kein Schleifen-Tag ist. Die dynamische Schleife zerlegt diese Liste, und AC-ConsentGroup() nimmt je Durchlauf eine ID entgegen.
Einen Dienst selbst klammern Sie dann an der Stelle ein, an der er eingebunden wird:
OptIn und OptOut: wann ein Haken Zustimmung bedeutet
Jeder Dienst bekommt in dershop.config einen Typ. Der Typ entscheidet, wie ein gesetzter Haken zu lesen ist, und das ist bei einem der drei Typen genau andersherum als erwartet.
Bei
OptOutChecked ist die Checkbox also angehakt, solange der Besucher nicht zugestimmt hat, und der Haken verschwindet, sobald er zustimmt.
Ist für einen Dienst eine Vorbelegung der Checkbox konfiguriert und liegt für ihn noch kein Cookie vor, gewinnt die Vorbelegung. AC-Entry_CheckboxIsChecked zeigt dann den vorbelegten Zustand, unabhängig davon, ob eine Einwilligung vorliegt. Sobald der Besucher einmal entschieden hat, zählt nur noch seine Entscheidung.
Zustand der Einwilligung
Diese Tags beziehen sich auf die Einwilligung als Ganzes und sind in allen Templates zulässig.AC-AgreementMade
Der Bereich wird angezeigt, wenn der Shopbesucher eine Entscheidung zum Umgang mit seinen Daten getroffen hat, also den entsprechenden Button gedrückt bekommen und das Banner gesehen hat.AC-AgreementMade_CookieName
Gibt den Namen des Cookies aus, in dem festgehalten ist, dass der Besucher eine Willenserklärung abgegeben hat.AC-AgreementMadeForID()
Der Bereich wird angezeigt, wenn der Besucher der Datenverarbeitung durch den Dienst mit der übergebenen ID zugestimmt hat. Die ID stammt aus der Konfiguration des jeweiligen Dienstes.AC-AgreementNeedsUpdate
Der Bereich wird angezeigt, wenn die Konfiguration der datenschutzrelevanten Dienste so geändert wurde, dass eine aktualisierte Einwilligung nötig ist.AC-AgreementNotMadeOrNeedsUpdate
Der Bereich wird angezeigt, wenn noch nicht für alle Dienste eine Einwilligung vorliegt oder wenn eine Aktualisierung nötig ist. Das ist die übliche Klammerung um das gesamte Banner.Die einzelnen Dienste
AC-Entry ist zugleich Einzel-Tag, Bereichs-Tag und Schleifen-Tag. Als Einzel-Tag gibt es die Anzahl der konfigurierten Dienste aus, als Bereichs-Tag greift es, wenn mindestens ein Dienst konfiguriert ist, und als Schleife läuft es über alle Dienste. Alle übrigen AC-Entry_Tags beziehen sich auf den Dienst des aktuellen Schleifendurchlaufs.
Zulässig sind sie in allen Templates. Die
AC-Entry_Tags setzen allerdings voraus, dass gerade ein Dienst aktiv ist, sie gehören also in die Schleife {@AC-Entry}.
AC-Entry()
Optional nimmt das Tag eine Gruppen-ID als Argument entgegen. Dann zählt und durchläuft es nur die Dienste dieser Gruppierung.AC-Entry_AgreementMade
Der Bereich wird angezeigt, wenn der Besucher der Nutzung dieses Dienstes zugestimmt hat.AC-Entry_CheckboxClass
Gibt die funktionalen Klassennamen aus, die der Checkbox des Dienstes zugewiesen sein müssen.AC-Entry_CheckboxIsChecked
Gibtchecked aus, wenn die Checkbox angehakt sein soll. Das Tag steht direkt im input-Element, ohne Attributnamen.
AC-Entry_ConsentGroupID
Gibt die ID der Gruppierung aus, der der Dienst zugeordnet ist. Als Bereichs-Tag prüfen Sie damit, ob der Dienst überhaupt einer Gruppierung angehört.AC-Entry_CookieName
Gibt den Namen des Cookies aus, in dem die Einwilligung oder der Widerspruch zu diesem Dienst gespeichert wird.AC-Entry_Descr
Gibt die Beschreibung des Dienstes aus. Als Bereichs-Tag greift es nur, wenn eine Beschreibung hinterlegt ist.AC-Entry_ID
Gibt die ID des Dienstes aus. Es ist dieselbe ID, die Sie anAC-AgreementMadeForID() übergeben.
AC-Entry_Name
Gibt den Namen des Dienstes aus.AC-Entry_TrackingFrameworkList
Gibt die Liste der Tracking-Frameworks aus, über die die Einwilligung zu diesem Dienst in der WEBSALE-App entgegengenommen werden kann.AC-Entry_Type
Gibt den Typ des Dienstes als Zahl aus: 0 für OptIn, 1 für OptOutChecked, 2 für OptOutUnchecked.AC-Entry_TypeIsOptIn und AC-Entry_TypeIsOptOut die bessere Wahl. Die Zahl brauchen Sie vor allem zur Fehlersuche.
AC-Entry_TypeIsOptIn
Der Bereich wird angezeigt, wenn der Dienst als OptIn konfiguriert ist.AC-Entry_TypeIsOptOut
Der Bereich wird angezeigt, wenn der Dienst als OptOut konfiguriert ist, also als OptOutChecked oder als OptOutUnchecked.AC-Entry_Type aus.
Die Gruppierungen
Zulässig sind sie in allen Templates. Bis auf
AC-ConsentGroupList setzen sie voraus, dass gerade eine Gruppierung geklammert ist.
AC-ConsentGroupList
Gibt alle Gruppen-IDs als kommaseparierte Liste aus, in der Reihenfolge der Konfiguration.AC-ConsentGroup() weiterreicht.
AC-ConsentGroup()
Klammert die Gruppierung, deren ID als Argument übergeben wird. Innerhalb dieser Klammerung stehen alle übrigenAC-ConsentGroup_Tags zur Verfügung.
AC-ConsentGroupList aus.
AC-ConsentGroup_CheckboxClass
Gibt die funktionalen Klassennamen für die Checkbox der Gruppierung aus.ws_agreement_updatecheckboxes() gehört dazu. Er führt die Haken der einzelnen Dienste und den Schalter “Alles akzeptieren” nach, wenn der Besucher die Gruppierung als Ganzes umschaltet.
AC-ConsentGroup_CheckboxIsChecked
Gibtchecked aus, wenn die Checkbox der Gruppierung angehakt sein soll, also wenn für alle Dienste der Gruppierung eine Zustimmung vorliegt oder als vorbelegt gilt.
AC-ConsentGroup_FullAgreementMade dagegen nicht. Solange der Besucher noch nicht entschieden hat, kann die Gruppen-Checkbox also angehakt sein, obwohl noch keine Einwilligung vorliegt.
AC-ConsentGroup_Descr
Gibt die Beschreibung der Gruppierung aus.AC-ConsentGroup_FullAgreementMade
Der Bereich wird angezeigt, wenn der Besucher der Nutzung aller Dienste dieser Gruppierung zugestimmt hat.AC-ConsentGroup_ID
Gibt die ID der Gruppierung aus.AC-ConsentGroup_Name
Gibt den Namen der Gruppierung aus.Alle Dienste zusammen
Diese drei Tags gehören zum Schalter “Alles akzeptieren”. Sie brauchen keine Klammerung und sind in allen Templates zulässig.AC-ConsentAll_CheckboxClass
Gibt die funktionalen Klassennamen für die Checkbox aus, die alle Gruppierungen und damit alle Dienste umschaltet.AC-ConsentAll_CheckboxIsChecked
Gibtchecked aus, wenn die Checkbox angehakt sein soll, also wenn für alle Dienste eine Zustimmung vorliegt oder als vorbelegt gilt.
AC-ConsentAll_FullAgreementMade
Der Bereich wird angezeigt, wenn der Besucher der Nutzung aller Gruppierungen und damit aller Dienste zugestimmt hat.Verwandte Themen
- Wegweiser: Einwilligung zur Datenverarbeitung
- Referenz: Abschnitt AgreementCookies
- Referenz: DC-DynamicLoop1…9
