Diese Dokumentation wurde automatisch aus der englischen Version übersetzt, wir entschuldigen uns für eventuelle Übersetzungsfehler.

x

Kommentierte Konfig-Datei

Dies ist eine kommentierte Beispiel-Klaro-Konfigurationsdatei, die Ihnen zeigt, wie Sie verschiedene Konfigurationsoptionen verwenden können. Sie können sie hier herunterladen.

/*
Standardmäßig lädt Klaro die Konfiguration aus einer globalen
'klaroConfig'-Variablen. Sie können dies ändern, indem Sie das Attribut 'data-
klaro-config' in Ihrem Skript angeben: <script src="klaro.js" data-klaro-
config="myConfigVariableName"
*/
var klaroConfig = {
    /*
    Die Einstellung von "testing" auf "true" bewirkt, dass Klaro die
    Einverständniserklärung oder modal standardmäßig nicht anzeigt, außer wenn ein
    spezieller Hash-Tag an die URL angehängt ist (#klaro-testing). Dadurch ist es
    möglich, Klaro auf Ihrer Live-Website zu testen, ohne normale Besucher zu
    beeinträchtigen.
    */
    testing: false,

    /*
    Sie können die ID des DIV-Elements, das Klaro beim Start erstellt, anpassen.
    Standardmäßig wird Klaro 'klaro' verwenden.
    */
    elementID: 'klaro',

    /*
    Sie können anpassen, wie Klaro die Zustimmungsinformationen im Browser
    speichert. Geben Sie entweder 'cookie' (Standard) oder 'localStorage' an.
    */
    storageMethod: 'cookie',

    /*
    Sie können den Namen des Cookies oder des localStorage-Eintrags anpassen, den
    Klaro zum Speichern der Zustimmungsinformationen verwenden wird. Standardmäßig
    wird Klaro 'klaro' verwenden.
    */
    storageName: 'klaro',

    /*
    Bei der Einstellung `true` rendert Klaro die in den Übersetzungen
    `consentModal.description` und `consentNotice.description` angegebenen Texte als
    HTML. So können Sie z.B. eigene Links oder interaktive Inhalte hinzufügen.
    */
    htmlTexts: false,

    /*
    Sie können die Cookie-Domäne für den consent manager selbst ändern. Verwenden
    Sie dies, wenn Sie die Zustimmung einmal für mehrere übereinstimmende Domänen
    erhalten möchten. Standardmäßig wird Klaro die aktuelle Domäne verwenden. Nur
    relevant, wenn 'storageMethod' auf 'cookie' gesetzt ist.
    */
    cookieDomain: '.example.com',

    /*
    Sie können auch eine benutzerdefinierte Verfallszeit für das Klaro-Cookie
    festlegen. Standardmäßig läuft es nach 30 Tagen ab. Nur relevant, wenn
    'storageMethod' auf 'cookie' gesetzt ist.
    */
    cookieExpiresAfterDays: 30,

    /*
    Definiert den Standardzustand für Dienste im Zustimmungsmodus (standardmäßig
    true=aktiviert). Sie können diese Einstellung in jedem Dienst außer Kraft
    setzen.
    */
    default: false,

    /*
    Wenn 'mustConsent' auf 'true' gesetzt ist, zeigt Klaro den consent manager modal
    direkt an und erlaubt dem Benutzer nicht, ihn zu schließen, bevor er der Nutzung
    von Diensten Dritter nicht aktiv zugestimmt oder diese abgelehnt hat.
    */
    mustConsent: false,

    /*
    Wenn Sie "acceptAll" auf "true" setzen, wird in der Benachrichtigung und im
    Modal eine Schaltfläche "accept all" angezeigt, die alle Dienste von
    Drittanbietern aktiviert, wenn der Benutzer darauf klickt. Wenn auf "false"
    gesetzt, wird eine Schaltfläche "accept" angezeigt, die nur die Dienste
    aktiviert, die im Zustimmungsmodus aktiviert sind.
    */
    acceptAll: true,

    /*
    Wenn Sie 'hideDeclineAll' auf 'true' setzen, wird die Schaltfläche "decline" im
    Zustimmungsmodal ausgeblendet und der Benutzer gezwungen, das Modal zu öffnen,
    um seine Zustimmung zu ändern oder alle Dienste Dritter zu deaktivieren. Wir
    raten Ihnen dringend davon ab, diese Funktion zu verwenden, da sie den
    Prinzipien "privacy by default" und "privacy by design" des GDPR widerspricht
    (aber in anderen Gesetzgebungen, wie z.B. dem CCPA, akzeptabel sein könnte).
    */
    hideDeclineAll: false,

    /*
    Wenn Sie 'hideLearnMore' auf 'true' setzen, wird der Link "mehr erfahren /
    anpassen" in der Einverständniserklärung ausgeblendet. Wir raten dringend davon
    ab, dies unter den meisten Umständen zu verwenden, da es den Benutzer davon
    abhält, seine Einverständniserklärung anzupassen.
    */
    hideLearnMore: false,

    /*
    Sie können vorhandene Übersetzungen überschreiben und Übersetzungen für Ihre
    Servicebeschreibungen und Zwecke hinzufügen. Unter `src/translations/` finden
    Sie eine vollständige Liste der Übersetzungen, die überschrieben werden können:
    https://github.com/KIProtect/klaro/tree/master/src/translations
    */
    translations: {
        /*
        Der Schlüssel `zz` enthält Standardübersetzungen, die als Fallback-Werte
            verwendet werden. Dies kann z.B. nützlich sein, um eine Ersatz-URL für die
            Datenschutzrichtlinie zu definieren.
        */
        zz: {
            privacyPolicyUrl: '/privacy',

        }
        de: {
            /*
            Sie können hier einen sprachspezifischen Link zu Ihrer Datenschutzrichtlinie
            angeben.
            */
            privacyPolicyUrl: '/datenschutz',
            consentNotice: {
                description: 'Dieser Text wird in der Einwilligungsbox erscheinen.',
            },
            consentModal: {
                description:
                    'Hier können Sie einsehen und anpassen, welche Information wir über Sie ' + 
                    'sammeln. Einträge die als "Beispiel" gekennzeichnet sind dienen lediglich ' + 
                    'zu Demonstrationszwecken und werden nicht wirklich verwendet.',
            },
            /*
            Sie sollten auch Übersetzungen für jeden Zweck, den Sie im Abschnitt
            "Dienstleistungen" definieren, definieren. Sie können einen Titel und eine
            (optionale) Beschreibung definieren.
            */
            purposes: {
                analytics: {
                    title: 'Besucher-Statistiken'
                },
                security: {
                    title: 'Sicherheit'
                },
                livechat: {
                    title: 'Live Chat'
                },
                advertising: {
                    title: 'Anzeigen von Werbung'
                },
                styling: {
                    title: 'Styling'
                },
            },
        },
        en: {
            privacyPolicyUrl: '/privacy',
            consentModal: {
                description:
                    'Here you can see and customize the information that we collect about you. ' + 
                    'Entries marked as "Example" are just for demonstration purposes and are not ' + 
                    'really used on this website.',
            },
            purposes: {
                analytics: {
                    title: 'Analytics'
                },
                security: {
                    title: 'Security'
                },
                livechat: {
                    title: 'Livechat'
                },
                advertising: {
                    title: 'Advertising'
                },
                styling: {
                    title: 'Styling'
                },
            },
        },
    },

    /*
    Hier geben Sie an, welche Drittanbieterdienste Klaro für Sie verwalten wird.
    */
    services: [
        {

            /*
            Jeder Dienst muss einen eindeutigen Namen haben. Klaro sucht nach HTML-Elementen
            mit einem passenden Attribut "data-name", um Elemente zu identifizieren, die zu
            diesem Dienst gehören.
            */
            name: 'matomo',

            /*
            Wenn 'default' auf 'true' gesetzt ist, wird der Dienst standardmäßig aktiviert.
            Dadurch wird die globale 'Standard'-Einstellung außer Kraft gesetzt.
            */
            default: true,

            /*
            Übersetzungen, die zu diesem Dienst gehören, werden hier abgelegt. Der Schlüssel
            `zz` enthält Standardübersetzungen, die als Ausweichlösung verwendet werden,
            wenn für eine bestimmte Sprache keine Übersetzungen definiert sind.
            */
            translations: {
                zz: {
                    title: 'Matomo/Piwik'
                },
                en: {
                    description: 'Matomo is a simple, self-hosted analytics service.'
                },
                de: {
                    description: 'Matomo ist ein einfacher, selbstgehosteter Analytics-Service.'
                },
            },
            /*
            Der/die Zweck(e) dieses Dienstes, der/die auf der Einverständniserklärung
            aufgeführt wird/werden. Vergessen Sie nicht, Übersetzungen für alle Zwecke, die
            Sie hier aufführen, hinzuzufügen.
            */
            purposes: ['analytics'],

            cookies: [
                /*
                entweder nur einen Cookie-Namen oder einen regulären Ausdruck (regex) oder eine
                Liste bestehend aus einem Namen oder einem regulären Ausdruck, einem Pfad und
                einer Cookie-Domäne angeben. Die Angabe eines Pfades und einer Domäne ist
                erforderlich, wenn Sie Dienste haben, die Cookies für einen Pfad, der nicht "/"
                ist, oder eine Domäne, die nicht die aktuelle Domäne ist, setzen. Wenn Sie diese
                Werte nicht richtig setzen, kann das Cookie von Klaro nicht gelöscht werden, da
                es keine Möglichkeit gibt, auf den Pfad oder die Domäne eines Cookies in JS
                zuzugreifen. Beachten Sie, dass es nicht möglich ist, Cookies zu löschen, die
                auf einer Domäne eines Drittanbieters gesetzt wurden, oder Cookies, die das
                Attribut HTTPOnly haben: https://developer.mozilla.org/en-
                US/docs/Web/API/Document/cookie#new-cookie_domain
                */

                /*
                Diese Regel passt auf Cookies, die die Zeichenfolge '_pk_' enthalten und die auf
                den Pfad '/' und die Domäne 'klaro.kiprotect.com' gesetzt sind.
                */
                [/^_pk_.*$/, '/', 'klaro.kiprotect.com'],

                /*
                Dasselbe wie oben, nur für die Domäne 'localhost'.
                */
                [/^_pk_.*$/, '/', 'localhost'],

                /*
                Diese Regel trifft auf alle Cookies mit dem Namen 'piwik_ignore' zu, die auf dem
                Pfad '/' auf der aktuellen Domain gesetzt sind
                */
                'piwik_ignore',
            ],

            /*
            Sie können eine optionale Callback-Funktion definieren, die jedes Mal aufgerufen
            wird, wenn sich der Zustimmungsstatus für den jeweiligen Dienst ändert. Der
            Zustimmungswert wird als erster Parameter an die Funktion übergeben
            (true=zustimmend). Die `service` Konfiguration wird als zweiter Parameter
            übergeben.
            */
            callback: function(consent, service) {
                console.log(
                    'User consent for service ' + service.name + ': consent=' + consent
                );
            },

            /*
            Wenn 'erforderlich' auf 'wahr' gesetzt ist, lässt Klaro nicht zu, dass dieser
            Dienst vom Benutzer deaktiviert wird. Verwenden Sie dies für Dienste, die für
            das Funktionieren Ihrer Website immer erforderlich sind (z.B. Warenkorb-
            Cookies).
            */
            required: false,

            /*
            Wenn 'optOut' auf 'true' gesetzt ist, lädt Klaro diesen Dienst, noch bevor der
            Benutzer seine ausdrückliche Zustimmung gegeben hat. Wir raten dringend davon
            ab.
            */
            optOut: false,

            /*
            Wenn 'onlyOnce' auf 'true' gesetzt ist, wird der Dienst nur einmal ausgeführt,
            unabhängig davon, wie oft der Benutzer ihn ein- und ausschaltet. Dies ist z.B.
            für die Verfolgung von Skripten relevant, die jedes Mal neue
            Seitenaufrufereignisse erzeugen würden, wenn Klaro sie aufgrund einer
            Zustimmungsänderung durch den Benutzer deaktiviert und wieder aktiviert.
            */
            onlyOnce: true,
        },
        {
            name: 'youtube',
            /*
            [no translation for key annotated-config.services.contextualConsentOnly]
            */
            contextualConsentOnly: true,
        },
    ],

    /*
    Sie können eine optionale Callback-Funktion definieren, die jedes Mal aufgerufen
    wird, wenn sich der Zustimmungsstatus für einen bestimmten Dienst ändert. Der
    Zustimmungswert wird als erster Parameter an die Funktion übergeben
    (true=zustimmend). Die `service` Konfiguration wird als zweiter Parameter
    übergeben.
    */
    callback: function(consent, service) {
        console.log(
            'User consent for service ' + service.name + ': consent=' + consent
        );
    },

};