Sha256: 390edcb86b8dcea0f16b52ba6269057ebfb952f709dcaac9a802098878c18881

Contents?: true

Size: 1.07 KB

Versions: 3

Compression:

Stored size: 1.07 KB

Contents

window.GOVUK = window.GOVUK || {}
window.GOVUK.Modules = window.GOVUK.Modules || {};

(function (Modules) {
  function CookieBanner () { }

  CookieBanner.prototype.start = function ($module) {
    this.$module = $module[0]

    this.$module.hideCookieMessage = this.hideCookieMessage.bind(this)
    this.$hideLink = this.$module.querySelector('a[data-hide-cookie-banner]')
    if (this.$hideLink) {
      this.$hideLink.addEventListener('click', this.$module.hideCookieMessage)
    }

    this.showCookieMessage()
  }

  CookieBanner.prototype.showCookieMessage = function () {
    var hasCookieMessage = (this.$module && window.GOVUK.cookie('seen_cookie_message') !== 'true')
    if (hasCookieMessage) {
      this.$module.style.display = 'block'
    }
  }

  CookieBanner.prototype.hideCookieMessage = function (event) {
    if (this.$module) {
      this.$module.style.display = 'none'
      window.GOVUK.cookie('seen_cookie_message', 'true', { days: 365 })
    }

    if (event.target) {
      event.preventDefault()
    }
  }

  Modules.CookieBanner = CookieBanner
})(window.GOVUK.Modules)

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
govuk_publishing_components-16.16.0 app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js
govuk_publishing_components-16.15.0 app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js
govuk_publishing_components-16.14.1 app/assets/javascripts/govuk_publishing_components/components/cookie-banner.js