card-mod-google_analytics 0.11.6 → 0.13.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/set/all/google_analytics.rb +30 -15
  3. metadata +9 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ccffffb0bb79c4764c97373e4a79f27f76de60e1a80b259b29dad2b3a6a598cc
4
- data.tar.gz: c3ac17021246d612d2c9352e887e1fd228ba6d0a9a6d5a784e42ff4348ed39ac
3
+ metadata.gz: 18d3e95e4eb32298a9af0df974ea169c241103b0c5d710de1dc9183622356c15
4
+ data.tar.gz: 5cac1c0c3fcad086da872af13e8d61e86e25efdaf1155c746c6bffe464fa1962
5
5
  SHA512:
6
- metadata.gz: ccf3b718bb6efabadcd15ec1d2b32c569d52f2c8998a4c12c2ad5b532185064937ac7e95234763eb862510b74e502771ace5f8d4e75ec6881b8c076420035447
7
- data.tar.gz: 9e4aa89c58f3d7138487366025d24ed7bd8bf0d773559c45210dcd27ced980dc6c147931fa045a00191c11dbd5d5ea0ff687cb643f8e23feacaecde1697c294b
6
+ metadata.gz: a4a12d6f04253ec20ec0092611d82eafadac0135e8eafb8c7414871a6179892569ed5d7e518342346a2b70906dd25bd77001f218379052f40acbb3654101940d
7
+ data.tar.gz: 1ed0853827e48697a5d3609155f68b018c95df3a0571eeaffead00aff3d6b9cb218ca9990560e872c9dd71da2953a62b860ae8dcfd669ad7b287ae828ccc5e1a
@@ -1,32 +1,47 @@
1
1
  require "staccato"
2
2
 
3
- mattr_accessor :server_side_tracking_formats
4
-
5
- self.server_side_tracking_formats = %i[csv json]
3
+ event :track_page, before: :show_page, when: :track_page_from_server? do
4
+ track_page!
5
+ end
6
6
 
7
- event :track_page, before: :show_page, when: :track_page? do
8
- tracker.pageview path: Env.controller.request&.path, host: Env.host, title: name
7
+ def track_page!
8
+ tracker.pageview tracker_options
9
9
  end
10
10
 
11
- def track_page?
12
- google_analytics_key &&
13
- Env.controller&.response_format&.in?(server_side_tracking_formats)
11
+ # TODO: optimize so it doesn't keep doing lookup if there is no key.
12
+ def google_analytics_key
13
+ @google_analytics_key ||=
14
+ Card::Rule.global_setting(:google_analytics_key) ||
15
+ Card.config.google_analytics_key
14
16
  end
15
17
 
16
18
  def tracker
17
- return unless google_analytics_key
19
+ tracker_key && ::Staccato.tracker(tracker_key) # , nil, ssl: true
20
+ end
18
21
 
19
- ::Staccato.tracker google_analytics_key # , nil, ssl: true
22
+ # can override to have separate keys for web and API
23
+ def tracker_key
24
+ google_analytics_key
20
25
  end
21
26
 
22
- def google_analytics_key
23
- @google_analytics_key ||=
24
- Card::Rule.global_setting(:google_analytics_key) ||
25
- Card.config.google_analytics_key
27
+ def tracker_options
28
+ r = Env.controller.request
29
+ {
30
+ path: r.path,
31
+ host: Env.host,
32
+ title: name,
33
+ user_id: Auth.current_id,
34
+ user_ip: r.remote_ip
35
+ }
36
+ end
37
+
38
+ # for override
39
+ def track_page_from_server?
40
+ false
26
41
  end
27
42
 
28
43
  format :html do
29
- delegate :tracker, :google_analytics_key, to: :card
44
+ delegate :google_analytics_key, to: :card
30
45
 
31
46
  def views_in_head
32
47
  super << :google_analytics_snippet
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: card-mod-google_analytics
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.11.6
4
+ version: 0.13.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ethan McCutchen
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-05-21 00:00:00.000000000 Z
13
+ date: 2021-08-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: card
@@ -18,28 +18,28 @@ dependencies:
18
18
  requirements:
19
19
  - - '='
20
20
  - !ruby/object:Gem::Version
21
- version: 1.101.6
21
+ version: 1.103.1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - '='
27
27
  - !ruby/object:Gem::Version
28
- version: 1.101.6
28
+ version: 1.103.1
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: staccato
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
- - - ">="
33
+ - - "~>"
34
34
  - !ruby/object:Gem::Version
35
- version: '0'
35
+ version: '0.5'
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
- - - ">="
40
+ - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '0'
42
+ version: '0.5'
43
43
  description: ''
44
44
  email:
45
45
  - info@decko.org
@@ -75,7 +75,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
75
75
  - !ruby/object:Gem::Version
76
76
  version: '0'
77
77
  requirements: []
78
- rubygems_version: 3.1.4
78
+ rubygems_version: 3.1.6
79
79
  signing_key:
80
80
  specification_version: 4
81
81
  summary: Google Analytics support for decko