EU Cookie Compliance logo
EU Cookie Compliance banner sample

Overview

This module addresses the General Data Protection Regulation (GDPR) that came into effect 25th May 2018, and the EU Directive on Privacy and Electronic Communications from 2012. It provides a GDPR cookie banner where you can gather consent from the user when the website stores cookies on their computer or otherwise handles their personal information.

The module offers several methods for getting consent: Consent by default, opt-in and opt-out. It's also possible to only display the banner for visitors from the EU.

GDPR requires that you ask consent from your visitors if you store or process their personal details, such as the IP address or identifiable cookies.

Tugboat

We now have TugboatQA running, both for 7.x and 8.x, so please try using the new Merge Request feature on Gitlab when you submit a patch. You'll love working with Gitlab! 😊 User name and password is always 'admin' for the TugboatQA sites.

Newsletter - news and tips about EU Cookie Compliance and GDPR

Sign up for the module newsletter to get notified when there's a new version or to get tips about GDPR, privacy and how to best use the module.

Sign up for newsletter

2.0.x version coming up for Drupal 9 and 10

We are currently preparing for a version 2 of this module which will be a rewrite to introduce more flexibility, easier maintenance, and better features. If you're interested in taking part in the development as a developer or as an agency that want to test the new version, please get in touch with the maintainers.

Or come join us in the #eu_cookie_compliance channel on Drupal slack.

Check out #3130662: Roadmap to 2.0.x release.

How it works

This module provides:

  • A fully customizable banner that is used to gather consent for storing cookies on the visitor's computer
  • Consent by category
  • Public JS API for actions & events
  • Consent can be given actively using the opt-in and out-out methods, or inferred automatically by clicking any link on the site
  • The banner can be placed at the top or bottom of the window
  • A javascript function that can be used to conditionally set cookies.
  • A link to the site's privacy policy
  • Support for multilingual sites
  • An option to only display cookie notifications to visitors from EU countries (with the Smart IP or Geoip module)
  • A design that works with responsive themes

Installation

Drupal 7.x: From version 7.24 onwards, ctools is added as a new dependency. Please (install and) enable ctools when you upgrade.

- Enable the module.
- Create a privacy policy
- Grant permissions for displaying the pop-up and to accessing the administration page to certain roles
- Customize the banner at admin/settings/eu-cookie-compliance
- Colors can be typed as hex values or you can install Coloris.js
- If you want to show the message in EU countries only, install the Smart IP or Geoip module and enable the option on the admin page

Important: This module can only prevent cookies from being set on the current site. External Javascripts will still be able to set cookies.

Developers

If you want to conditionally set cookies in your module, there is a javascript function provided that returns TRUE if the user has given his consent:

Drupal.eu_cookie_compliance.hasAgreed() where category is optional.

For example, if you want to disable Google Analytics, you could do the following: http://drupal.org/node/1648286#comment-6145800

Another example of how it can be used with Google Analytics is provided by dagomar in this comment .

Here is another example showing how to set cookies after user clicks the accept button: http://drupal.org/node/1624876#comment-6111688

Additional features

EUCCX (currently Drupal 7 only) provides additional functionality.

EU Cookie Compliance GTM (currently Drupal 8 only) provides functionality for Google Tag Manager.

Support


This module is supported by Ramsalt Lab. If you need assistance in making your web site GDPR-compliant, you can contact us here.

Icon by Nico Grienauer (Grienauer)

This module was originally scoped and delivered by Marcin Pajdzik for Turner Broadcasting Systems / Warner Media

Supporting organizations: 
Currently supporting the development since 2017
Improved category interface, public JS API for actions & events
Founded the project

Project information

Releases