/cookieCuttr

CookieCuttr - A tailorable jQuery plugin to deal with the EU Cookie Law

Primary LanguageJavaScript

CookieCuttr

A tailorable jQuery plugin to deal with the EU Cookie Law.

Originally created by Chris Wharton.

Dependencies

Usage

Add jquery.cookiecuttr.js, after jQuery and jQuery.cookie, and cookiecuttr.css to the head of your HTML document. Then call CookieCuttr on document ready.

$(document).ready(function () {
  $.cookieCuttr();
});

For any JavaScript you want to disable, you need to wrap the following if statement around it.

if (jQuery.cookie('cc_cookie_accept') == "cc_cookie_accept") {
  // insert the code you do not want to run UNTIL cookies are accepted here
}

Example with Google Analytics

if (jQuery.cookie('cc_cookie_accept') == "cc_cookie_accept") {
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXXX-X']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document. getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
}

Alternatively, you can do the following until cookies are declined.

if (jQuery.cookie('cc_cookie_decline') == "cc_cookie_decline") {
  // do nothing
} else {
  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-XXXXXXXX-X']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document. getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();
}

You can also do the following.

if( $.cookieAccepted() ) {
  // insert the code you do not want to run UNTIL cookies are accepted here
}

Read More About EU Cookie Law

Using a CMS?

Drupal version.

Options

See https://malcomio.github.io/cookieCuttr/#options

Contributing to CookieCuttr

  • Check out the latest main to make sure the feature hasn't been implemented or the bug hasn't been fixed yet
  • Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it
  • Fork the project
  • Start a feature/bugfix branch
  • Commit and push until you are happy with your contribution
  • Initiate a pull request

Credits

  • weare2ndfloor for the plugin
  • unsymbol for organising the implementation txt into a readme markdown file