siwa_cookiebar

SIWA Cookiebar

Usage no npm install needed!

<script type="module">
  import siwaCookiebar from 'https://cdn.skypack.dev/siwa_cookiebar';
</script>

README

siwa_cookiebar

siwa_cookiebar is a JavaScript Module that displays a GDPR cookie consent bar to your visitors that complies with EU law. Requires Bootstrap 5

Table of Contents

Installation

Use the npm package manager to install siwa_cookiebar.

npm install siwa_cookiebar

Usage

Use as a Module

To use as a Module include window.siwa_cookiebar = siwa_cookiebar

import { siwa_cookiebar } from './cookiebar.js';
import { localeDE } from './lang/cookie-text.de.js';

// Override a Locale
const locales = Object.assign(localeDE, {
    'header': 'Datenschutz'
});

const constants = {
    DEBUG: true,
    FALLBACK_LOCALE: 'en',
    BANNER: true,
    DEFAULT_VALUE: true,
    DECLINE_BTN: true,
    SCRIPT_VIEW: true
};

const groups = {
    statistics: {
        scripts: {
            analytics: {
                'cookies': ['_ga', '_gat', '_gid', '__utma', '__utmb', '__utmc', '__utmt', '__utmz'],
                'name': 'Google Analytics',
                'url': 'https://developers.google.com/analytics/devguides/collection/analyticsjs/cookie-usage',
                'enabled': window['analyticsUa'] ? true : false,
                'js': function () {
                    (function (i, s, o, g, r, a, m) {
                        i['GoogleAnalyticsObject'] = r;
                        i[r] = i[r] || function () {
                            (i[r].q = i[r].q || []).push(arguments)
                        }, i[r].l = 1 * new Date();
                        a = s.createElement(o),
                            m = s.getElementsByTagName(o)[0];
                        a.async = 1;
                        a.src = g;
                        m.parentNode.insertBefore(a, m)
                    })(window, document, 'script', 'https://www.google-analytics.com/analytics.js', 'ga');

                    ga('create', 'UA-XXXXXX-X', 'auto');
                    ga('set', 'anonymizeIp', true);
                    ga('send', 'pageview');
                }
            },
        }
    }
};

if (typeof siwa_cookiebar !== 'undefined') {
    siwa_cookiebar.initialize(constants, groups, {
        de: locales
    });
}

window.siwa_cookiebar = siwa_cookiebar;

cookiebar.js

Customization

Constants

Available

Name Description Constant Name default
Cookie Name Name of the Cookie which is set in the Browser Cookies COOKIE_NAME siwa-cb
Fallback Locale Locale to which the cookiebar should fallback if the requested locale does not exist FALLBACK_LOCALE de
Override Language Is Overriding the Locale enabled OVERRIDE_LANGUAGE false
Override Language Locale Locale which to use to override. Only works if OVERRIDE_LANGUAGE = true OVERRIDE_LANGUAGE_LOCALE de
Strict Mode If enabled the modal cannot be dismissed. A value has to be set STRICT_MODE false
Script View Toggles the display mode SCRIPT_VIEW false
Banner Show Banner on initialization BANNER false
Debug Mode Enable Debug Mode with Console Logs DEBUG false
Decline Button Show a decline button DECLINE_BTN false
Default Value Are Checkboxes in Group View checked by default DEFAULT_VALUE true

Set a Constant

siwa_cookiebar.constants.<CONSTANT_NAME> = <CONSTANT_VALUE>

License

GPL-2.0+