cookies_eu 1.6.3 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: b1a62e4b5f016e41950bc022ab90ab47d94b7cc5
4
- data.tar.gz: 20aeb7aea9379773a46272fc0da27214a44f5b27
2
+ SHA256:
3
+ metadata.gz: 4a07e6be69c7cddbe47c86c923ce4ce86281f30d8dbd61f01d07eee4fca506a8
4
+ data.tar.gz: faf656330fdafea1be7c873b078598d0734bc35d2710c228c57eb93cbc330528
5
5
  SHA512:
6
- metadata.gz: 15ca4fbb7eb41e3a9c2ffbaa759a7fce759ff3f5ec82c5c026a88b060300c4f98891c8d62bd6c3deb6e5058b6b3eb8b0f525c2fe84f889cf1e8709f5991b938e
7
- data.tar.gz: 965ba8540ed4efa7f2f2b5717050a5789a6affdf332a49ace55587df20f8bc193b7fc02a8239e8525a537b56b5bd991caf330f7e31aa2cfe3b69e07e74536660
6
+ metadata.gz: a187d6d00ae909c5b54bff5a10e81e1db30538ebfc514816930a31a480041345ad4dd5b43630d891bde78444f9d9f23c7537dd210cc80e406a3dec58bbdf8ad8
7
+ data.tar.gz: d62f0a297dece5372d266bdb542b476c0c8d28d98ed11bfa4800c4016056b27eb7f69f65fc0037c4fadd7ef5bdf340cba55309696f9f5004740d1aa7b23f8bc6
data/README.md CHANGED
@@ -50,7 +50,7 @@ Or manually add in application.js:
50
50
  And in application.css:
51
51
 
52
52
  *= require cookies_eu
53
-
53
+
54
54
  Or, if you have application.scss:
55
55
 
56
56
  @import "cookies_eu";
@@ -79,17 +79,20 @@ You can add a target parameter to the link to open in a new tab
79
79
 
80
80
  If you wish to customize the style of the div the classes are:
81
81
 
82
- ```javascript
83
- .cookies-eu // main div
84
- .cookies-eu-content-holder // content holder
85
- .cookies-eu-button-holder // button holder
86
- .cookies-eu-ok // button
87
- .cookies-eu-link // link
82
+ ```css
83
+ .cookies-eu /* main div */
84
+ .cookies-eu-content-holder /* content holder */
85
+ .cookies-eu-button-holder /* button holder */
86
+ .cookies-eu-ok /* button */
87
+ .cookies-eu-link /* link */
88
88
  ```
89
89
 
90
- ## Turbolinks NOT supported
90
+ ## Turbolinks 5+
91
+
92
+ Is supported out of the box, just require it before cookies_eu
91
93
 
92
- Please use [jquery.turbolinks gem](https://github.com/kossnocorp/jquery.turbolinks)
94
+ //= require turbolinks
95
+ //= require cookies_eu
93
96
 
94
97
  ## Sample of cookie info (in [haml form](/app/views/cookies_eu/cookies_info.html.haml))
95
98
 
@@ -1,12 +1,16 @@
1
1
  //= require js.cookie
2
2
  'use strict';
3
3
 
4
+ var windowIsTurbolinked = 'Turbolinks' in window;
5
+
4
6
  var cookiesEu = {
5
7
  init: function() {
6
8
  var cookiesEuOKButton = document.querySelector('.js-cookies-eu-ok');
7
9
 
8
10
  if (cookiesEuOKButton) {
9
11
  this.addListener(cookiesEuOKButton);
12
+ // clear turbolinks cache so cookie banner does not reappear
13
+ windowIsTurbolinked && window.Turbolinks.clearCache();
10
14
  }
11
15
  },
12
16
 
@@ -28,23 +32,31 @@ var cookiesEu = {
28
32
  };
29
33
 
30
34
  (function() {
35
+ function eventName(fallback) {
36
+ return windowIsTurbolinked ? 'turbolinks:load' : fallback
37
+ }
38
+
31
39
  var isCalled = false;
32
40
 
33
41
  function isReady() {
34
- if (isCalled) return;
42
+ // return early when cookiesEu.init has been called AND Turbolinks is NOT included
43
+ // when Turbolinks is included cookiesEu.init has to be called on every page load
44
+ if (isCalled && !windowIsTurbolinked) {
45
+ return
46
+ }
35
47
  isCalled = true;
36
48
 
37
49
  cookiesEu.init();
38
50
  }
39
51
 
40
52
  if (document.addEventListener) {
41
- document.addEventListener('DOMContentLoaded', isReady, false);
53
+ return document.addEventListener(eventName('DOMContentLoaded'), isReady, false);
42
54
  }
43
55
 
44
56
  // Old browsers IE < 9
45
57
  if (window.addEventListener) {
46
- window.addEventListener('load', isReady, false);
58
+ window.addEventListener(eventName('load'), isReady, false);
47
59
  } else if (window.attachEvent) {
48
- window.attachEvent('onload', isReady);
60
+ window.attachEvent(eventName('onload'), isReady);
49
61
  }
50
62
  })();
data/cookies_eu.gemspec CHANGED
@@ -18,7 +18,7 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
19
  spec.require_paths = ["lib"]
20
20
 
21
- spec.add_dependency "js_cookie_rails"
21
+ spec.add_dependency "js_cookie_rails", "~> 2.2.0"
22
22
  spec.add_development_dependency "bundler", "~> 1.3"
23
23
  spec.add_development_dependency "rake"
24
24
  end
@@ -1,3 +1,3 @@
1
1
  module CookiesEu
2
- VERSION = "1.6.3"
2
+ VERSION = "1.7.0"
3
3
  end
@@ -6,7 +6,18 @@ module CookiesEu
6
6
  end
7
7
 
8
8
  def add_stylesheets
9
- inject_into_file 'app/assets/stylesheets/application.css', "*= require cookies_eu\n", before: /\*\//, verbose: true
9
+ file = 'app/assets/stylesheets/application'
10
+ css_file = "#{file}.css"
11
+ scss_file = "#{file}.scss"
12
+ css_scss_file = "#{file}.css.scss"
13
+
14
+ if File.exists?(css_file)
15
+ inject_into_file css_file, "*= require cookies_eu\n", before: /\*\//, verbose: true
16
+ elsif File.exists?(scss_file)
17
+ append_file scss_file, "@import 'cookies_eu';\n"
18
+ else
19
+ append_file css_scss_file, "@import 'cookies_eu';\n"
20
+ end
10
21
  end
11
22
  end
12
23
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cookies_eu
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.3
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Stjepan Hadjic
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-10-08 00:00:00.000000000 Z
11
+ date: 2018-05-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: js_cookie_rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ">="
17
+ - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
19
+ version: 2.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - ">="
24
+ - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: 2.2.0
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -115,7 +115,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
115
115
  version: '0'
116
116
  requirements: []
117
117
  rubyforge_project:
118
- rubygems_version: 2.6.13
118
+ rubygems_version: 2.7.6
119
119
  signing_key:
120
120
  specification_version: 4
121
121
  summary: Displays a cookie consent. If you dont disable cokkies in settings, we assume