station 0.0.137 → 0.0.138

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
2
  SHA256:
3
- metadata.gz: 20b59953675962a92ab725ca3bee5d0be5efe1e91274001365551b2375cb6520
4
- data.tar.gz: 34eaf4ed263c163938d131d9cef43a8ffbed48d53eaee5e3f39adb6951829fcd
3
+ metadata.gz: e634b85e42ad8a0d4f48cf9730b92356b432dd518a3101eed04cb66c3e0a9d48
4
+ data.tar.gz: f8b6cb685d83c8497384be4336fb09dcb7e8b1e089d7d40621284d7f8d08c60b
5
5
  SHA512:
6
- metadata.gz: 4a751259895aa7059be1503b89d0a748371bd69193eddee446b4262587acb46d6496c91d9acaad0661fb4d00a38e143686fedcd95a5d3c0626d326bf921a0e2c
7
- data.tar.gz: 475fa66e46bbfca6d93893244eb40704079173f0188d005b4e56bc5f8111140cf5ef733af1495fde4a6fe74a81cb7cb4e7bb77826af52a13b1e24828c52a13f9
6
+ metadata.gz: b8ea16dc943e37aa900ef0268bde1b8ec33a753de52074a5d6af6fcf205ef93129533f9508d5f1165cc053a6ddda413153872d2dd5f6999c4122652d9c10d40c
7
+ data.tar.gz: e2d47615313f0342126d25dac0dcb6fe5c7df22b3c6de3a5fe2ef7d3460fed2715f8b077ec9db8391b123504442c4dbcc4093b701be86701c2334de26a79618a
data/.env.example CHANGED
@@ -26,6 +26,9 @@ GREENHOUSE_API_TOKEN='greenhouse-api-token'
26
26
 
27
27
  REDIS_URL=redis://localhost:6379/0
28
28
 
29
+ ADOBE_LAUNCH_URL=''
30
+ ADOBE_LAUNCH_PRIMARY_CATEGORY='' #example value='biz:api:adp:developer'
31
+
29
32
  # POSTGRES_USERNAME=''
30
33
 
31
34
  # SMARTLING_USER_ID=''
@@ -1,11 +1,13 @@
1
+ const PRIMARY_CATEGORY = document.getElementById('adobe_launch_primary_category').value
2
+
1
3
  window.digitalData = {
2
4
  page: {
3
5
  pageInfo: {
4
6
  pageName: '',
5
- functionDept: 'biz:api:adp',
6
- primaryCategory: 'biz:api:adp:developer',
7
- siteIdentifier: 'api:adp:developer',
8
- lob: 'biz',
7
+ functionDept: '',
8
+ primaryCategory: PRIMARY_CATEGORY,
9
+ siteIdentifier: '',
10
+ lob: '',
9
11
  subCategory1: '',
10
12
  subCategory2: '',
11
13
  subCategory3: '',
@@ -71,11 +73,70 @@ window.digitalData = {
71
73
  ]
72
74
  }
73
75
 
76
+
77
+ // Updates data layer variables on every page load.
78
+ document.addEventListener('DOMContentLoaded', function() {
79
+ const urlPath = window.location.pathname
80
+ const pageName = getPageName(urlPath)
81
+ const { digitalData } = window
82
+ const categorySplit = PRIMARY_CATEGORY.split(':')
83
+ digitalData.page.pageInfo.functionDept = categorySplit.slice(0, categorySplit.length - 1).join(':')
84
+ digitalData.page.pageInfo.siteIdentifier = categorySplit.slice(1, categorySplit.length).join(':')
85
+ digitalData.page.pageInfo.lob = categorySplit[0]
86
+ digitalData.page.pageInfo.pageName = pageName
87
+
88
+ const subCatArray = updateSubCategories(pageName, digitalData)
89
+ digitalData.page.pageInfo.subCategory1 = subCatArray[0]
90
+ digitalData.page.pageInfo.subCategory2 = subCatArray[1]
91
+ digitalData.page.pageInfo.subCategory3 = subCatArray[2]
92
+ })
93
+
94
+ // Click event for Sign-in button
95
+ // Changes visitorType value when clicked.
74
96
  document.getElementById('signin').addEventListener('click', function() {
75
97
  updateVisitorType()
76
98
  })
77
99
 
100
+ // Changes visitoryType to 'customer' if sign-in
101
+ // button is clicked.
102
+ // Default is null
78
103
  function updateVisitorType() {
79
104
  const { digitalData } = window
80
105
  digitalData.user.profile.profileInfo.visitorType = 'customer'
81
106
  }
107
+
108
+ function getPageName(urlPath) {
109
+ let pageName = ''
110
+ switch (urlPath) {
111
+ case '/' :
112
+ pageName = PRIMARY_CATEGORY + ':homepage'
113
+ break
114
+ default:
115
+ pageName = PRIMARY_CATEGORY + urlPath.replaceAll('/', ':')
116
+ }
117
+ return pageName
118
+ }
119
+
120
+ function updateSubCategories(pageName, digitalData) {
121
+ let subCategory1 = ''
122
+ let subCategory2 = ''
123
+ let subCategory3 = ''
124
+ const primaryCategoryArray = PRIMARY_CATEGORY.split(':')
125
+ const pageNameArray = pageName.split(':')
126
+ const categoryArray = []
127
+ const categoryResult = pageNameArray.filter(x => !primaryCategoryArray.includes(x))
128
+ subCategory1 = PRIMARY_CATEGORY + ':' + categoryResult[0]
129
+ subCategory2 = PRIMARY_CATEGORY + ':' + categoryResult[0]
130
+ subCategory3 = PRIMARY_CATEGORY + ':' + categoryResult[0]
131
+ if (categoryResult[1] != undefined) {
132
+ subCategory2 = subCategory2 + ':' + categoryResult[1]
133
+ subCategory3 = subCategory2
134
+ }
135
+ if (categoryResult[2] != undefined) {
136
+ subCategory3 = subCategory3 + ':' + categoryResult[2]
137
+ }
138
+ categoryArray.push(subCategory1)
139
+ categoryArray.push(subCategory2)
140
+ categoryArray.push(subCategory3)
141
+ return categoryArray
142
+ }
@@ -3,9 +3,9 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
-
7
- <script src="https://assets.adobedtm.com/54d668d6379a/4bfed685397d/launch-029c4ab10638-development.min.js" async></script>
8
-
6
+ <% if ENV['ADOBE_LAUNCH_URL'] %>
7
+ <script src='<%= ENV['ADOBE_LAUNCH_URL'] %>' async></script>
8
+ <% end %>
9
9
  <% if head.google_site_verification %>
10
10
  <meta name="google-site-verification" content=<%= head.google_site_verification %> />
11
11
  <% end %>
@@ -3,6 +3,7 @@
3
3
 
4
4
  <div class="Adp-header">
5
5
  <header id="header" class="Adp-header__main Vlt-M-plus">
6
+ <input type="hidden" id="adobe_launch_primary_category" value="<%=ENV['ADOBE_LAUNCH_PRIMARY_CATEGORY']%>">
6
7
  <a tabindex="0" id="skip-to-navigation" href="#sidenav-first" class="Vlt-btn Vlt-btn--outline Vlt-btn--primary Vlt-btn--app">Skip to navigation</a>
7
8
  <a tabindex="0" id="skip-to-content" href="#primary-content" class="Vlt-btn Vlt-btn--outline Vlt-btn--primary Vlt-btn--app">Skip to content</a>
8
9
 
@@ -120,5 +121,7 @@
120
121
  <% end %>
121
122
  <% end %>
122
123
  </section>
123
- <%= javascript_include_tag 'digitalData'%>
124
+ <% if ENV['ADOBE_LAUNCH_URL'] && ENV['ADOBE_LAUNCH_PRIMARY_CATEGORY'] %>
125
+ <%= javascript_include_tag 'digitalData'%>
126
+ <% end %>
124
127
  </div>
@@ -1 +1 @@
1
- {"files":{"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js":{"logical_path":"manifest.js","mtime":"2021-12-15T15:06:28+00:00","size":3,"digest":"6a3cf5192354f71615ac51034b3e97c20eda99643fcaf5bbe6d41ad59bd12167","integrity":"sha256-ajz1GSNU9xYVrFEDSz6Xwg7amWQ/yvW75tQa1ZvRIWc="},"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js":{"logical_path":"application.js","mtime":"2021-12-15T15:06:28+00:00","size":3172,"digest":"67f1fd16f949c2794341a44cf839e5436bbef74436e043ead39890d1c3b2e583","integrity":"sha256-Z/H9FvlJwnlDQaRM+DnlQ2u+90Q24EPq05iQ0cOy5YM="},"digitalData-c8a2b5282d47e7089f7030b9d5e3054b3f8197a394c2b55288ec42941a6c2719.js":{"logical_path":"digitalData.js","mtime":"2021-12-15T15:06:28+00:00","size":1572,"digest":"739864c1abc7a9a4e7dbb02cdca187bd314ab0243088212f8d6599a0409af832","integrity":"sha256-c5hkwavHqaTn27As3KGHvTFKsCQwiCEvjWWZoECa+DI="},"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css":{"logical_path":"application.css","mtime":"2021-12-15T15:06:28+00:00","size":8704,"digest":"99228d4019121f891ee008e4db5fb0ffa736bada427f4996d15c9c95d1af58b3","integrity":"sha256-mSKNQBkSH4ke4Ajk21+w/6c2utpCf0mW0VycldGvWLM="}},"assets":{"manifest.js":"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js","application.js":"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js","digitalData.js":"digitalData-c8a2b5282d47e7089f7030b9d5e3054b3f8197a394c2b55288ec42941a6c2719.js","application.css":"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"}}
1
+ {"files":{"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js":{"logical_path":"manifest.js","mtime":"2021-12-20T11:51:30+00:00","size":3,"digest":"6a3cf5192354f71615ac51034b3e97c20eda99643fcaf5bbe6d41ad59bd12167","integrity":"sha256-ajz1GSNU9xYVrFEDSz6Xwg7amWQ/yvW75tQa1ZvRIWc="},"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js":{"logical_path":"application.js","mtime":"2021-12-20T11:51:30+00:00","size":3172,"digest":"67f1fd16f949c2794341a44cf839e5436bbef74436e043ead39890d1c3b2e583","integrity":"sha256-Z/H9FvlJwnlDQaRM+DnlQ2u+90Q24EPq05iQ0cOy5YM="},"digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js":{"logical_path":"digitalData.js","mtime":"2021-12-20T11:51:30+00:00","size":3755,"digest":"28b5b1ae4e4639492142e88b7c75b062066bc51a1761b5db476128e76543ad0b","integrity":"sha256-KLWxrk5GOUkhQuiLfHWwYgZrxRoXYbXbR2Eo52VDrQs="},"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css":{"logical_path":"application.css","mtime":"2021-12-20T11:51:30+00:00","size":8704,"digest":"99228d4019121f891ee008e4db5fb0ffa736bada427f4996d15c9c95d1af58b3","integrity":"sha256-mSKNQBkSH4ke4Ajk21+w/6c2utpCf0mW0VycldGvWLM="}},"assets":{"manifest.js":"manifest-dad05bf766af0fe3d79dd746db3c1361c0583026cdf35d6a2921bccaea835331.js","application.js":"application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js","digitalData.js":"digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js","application.css":"application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"}}
@@ -0,0 +1,142 @@
1
+ const PRIMARY_CATEGORY = document.getElementById('adobe_launch_primary_category').value
2
+
3
+ window.digitalData = {
4
+ page: {
5
+ pageInfo: {
6
+ pageName: '',
7
+ functionDept: '',
8
+ primaryCategory: PRIMARY_CATEGORY,
9
+ siteIdentifier: '',
10
+ lob: '',
11
+ subCategory1: '',
12
+ subCategory2: '',
13
+ subCategory3: '',
14
+ appVersion: '',
15
+ language: '',
16
+ country: '',
17
+ pageCategory: '',
18
+ flowName: '',
19
+ tokenFLag: '',
20
+ spaFlag: ''
21
+ },
22
+ content: {
23
+ author: '',
24
+ businessSize: '',
25
+ category: '',
26
+ company: '',
27
+ industry: '',
28
+ name: '',
29
+ product: '',
30
+ profRole: '',
31
+ publishDate: '',
32
+ subCategory: '',
33
+ topic: '',
34
+ type: ''
35
+ }
36
+ },
37
+ eventData: {
38
+ events: '',
39
+ fCTA: '',
40
+ fIndustry: '',
41
+ fLines: '',
42
+ fName: '',
43
+ interactionType: '',
44
+ linesSlider: ''
45
+ },
46
+ user: {
47
+ profile: {
48
+ profileInfo: {
49
+ visitorType: '',
50
+ accountNumber: '',
51
+ accountStatus: '',
52
+ userType: '',
53
+ userName: '',
54
+ accountPlan: '',
55
+ UserID: '',
56
+ responsiveSiteVersion: '',
57
+ country: '',
58
+ acctnumLocations: '',
59
+ acctcontractFlag: ''
60
+ }
61
+ }
62
+ },
63
+ transaction: [
64
+ {
65
+ productInfo: {
66
+ productID: ''
67
+ },
68
+ quantity: '',
69
+ price: {
70
+ basePrice: ''
71
+ }
72
+ }
73
+ ]
74
+ }
75
+
76
+
77
+ // Updates data layer variables on every page load.
78
+ document.addEventListener('DOMContentLoaded', function() {
79
+ const urlPath = window.location.pathname
80
+ const pageName = getPageName(urlPath)
81
+ const { digitalData } = window
82
+ const categorySplit = PRIMARY_CATEGORY.split(':')
83
+ digitalData.page.pageInfo.functionDept = categorySplit.slice(0, categorySplit.length - 1).join(':')
84
+ digitalData.page.pageInfo.siteIdentifier = categorySplit.slice(1, categorySplit.length).join(':')
85
+ digitalData.page.pageInfo.lob = categorySplit[0]
86
+ digitalData.page.pageInfo.pageName = pageName
87
+
88
+ const subCatArray = updateSubCategories(pageName, digitalData)
89
+ digitalData.page.pageInfo.subCategory1 = subCatArray[0]
90
+ digitalData.page.pageInfo.subCategory2 = subCatArray[1]
91
+ digitalData.page.pageInfo.subCategory3 = subCatArray[2]
92
+ })
93
+
94
+ // Click event for Sign-in button
95
+ // Changes visitorType value when clicked.
96
+ document.getElementById('signin').addEventListener('click', function() {
97
+ updateVisitorType()
98
+ })
99
+
100
+ // Changes visitoryType to 'customer' if sign-in
101
+ // button is clicked.
102
+ // Default is null
103
+ function updateVisitorType() {
104
+ const { digitalData } = window
105
+ digitalData.user.profile.profileInfo.visitorType = 'customer'
106
+ }
107
+
108
+ function getPageName(urlPath) {
109
+ let pageName = ''
110
+ switch (urlPath) {
111
+ case '/' :
112
+ pageName = PRIMARY_CATEGORY + ':homepage'
113
+ break
114
+ default:
115
+ pageName = PRIMARY_CATEGORY + urlPath.replaceAll('/', ':')
116
+ }
117
+ return pageName
118
+ }
119
+
120
+ function updateSubCategories(pageName, digitalData) {
121
+ let subCategory1 = ''
122
+ let subCategory2 = ''
123
+ let subCategory3 = ''
124
+ const primaryCategoryArray = PRIMARY_CATEGORY.split(':')
125
+ const pageNameArray = pageName.split(':')
126
+ const categoryArray = []
127
+ const categoryResult = pageNameArray.filter(x => !primaryCategoryArray.includes(x))
128
+ subCategory1 = PRIMARY_CATEGORY + ':' + categoryResult[0]
129
+ subCategory2 = PRIMARY_CATEGORY + ':' + categoryResult[0]
130
+ subCategory3 = PRIMARY_CATEGORY + ':' + categoryResult[0]
131
+ if (categoryResult[1] != undefined) {
132
+ subCategory2 = subCategory2 + ':' + categoryResult[1]
133
+ subCategory3 = subCategory2
134
+ }
135
+ if (categoryResult[2] != undefined) {
136
+ subCategory3 = subCategory3 + ':' + categoryResult[2]
137
+ }
138
+ categoryArray.push(subCategory1)
139
+ categoryArray.push(subCategory2)
140
+ categoryArray.push(subCategory3)
141
+ return categoryArray
142
+ };
@@ -1,3 +1,3 @@
1
1
  module NexmoDeveloper
2
- VERSION = '0.0.137'.freeze
2
+ VERSION = '0.0.138'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: station
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.137
4
+ version: 0.0.138
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vonage DevRel
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-12-15 00:00:00.000000000 Z
11
+ date: 2021-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activeadmin
@@ -717,14 +717,14 @@ files:
717
717
  - "./lib/nexmo_developer/public/android-chrome-512x512.png"
718
718
  - "./lib/nexmo_developer/public/apple-touch-icon-precomposed.png"
719
719
  - "./lib/nexmo_developer/public/apple-touch-icon.png"
720
- - "./lib/nexmo_developer/public/assets/.sprockets-manifest-581357ac3ba229adfc4849f02f2e7a62.json"
720
+ - "./lib/nexmo_developer/public/assets/.sprockets-manifest-4e6d2b8abc718dafd9c3cc32787eea3b.json"
721
721
  - "./lib/nexmo_developer/public/assets/application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css"
722
722
  - "./lib/nexmo_developer/public/assets/application-6e9186f7602070c57b5c60de9b45ad12f1fccdcf83e08ea28c809d7a5a42a232.css.gz"
723
723
  - "./lib/nexmo_developer/public/assets/application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js"
724
724
  - "./lib/nexmo_developer/public/assets/application-aa88b3c7bd34ec529f43849541752fda7c9c202aa9fff905be578ef88d103b46.js.gz"
725
725
  - "./lib/nexmo_developer/public/assets/archives/app-store-badges.zip"
726
- - "./lib/nexmo_developer/public/assets/digitalData-c8a2b5282d47e7089f7030b9d5e3054b3f8197a394c2b55288ec42941a6c2719.js"
727
- - "./lib/nexmo_developer/public/assets/digitalData-c8a2b5282d47e7089f7030b9d5e3054b3f8197a394c2b55288ec42941a6c2719.js.gz"
726
+ - "./lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js"
727
+ - "./lib/nexmo_developer/public/assets/digitalData-cc7ee32b7180e36d640fbee63fbcecb8a0f42cd67aaccc3d0883bda4ed384932.js.gz"
728
728
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.eot"
729
729
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.json"
730
730
  - "./lib/nexmo_developer/public/assets/fonts/icomoon.svg"
@@ -1,81 +0,0 @@
1
- window.digitalData = {
2
- page: {
3
- pageInfo: {
4
- pageName: '',
5
- functionDept: 'biz:api:adp',
6
- primaryCategory: 'biz:api:adp:developer',
7
- siteIdentifier: 'api:adp:developer',
8
- lob: 'biz',
9
- subCategory1: '',
10
- subCategory2: '',
11
- subCategory3: '',
12
- appVersion: '',
13
- language: '',
14
- country: '',
15
- pageCategory: '',
16
- flowName: '',
17
- tokenFLag: '',
18
- spaFlag: ''
19
- },
20
- content: {
21
- author: '',
22
- businessSize: '',
23
- category: '',
24
- company: '',
25
- industry: '',
26
- name: '',
27
- product: '',
28
- profRole: '',
29
- publishDate: '',
30
- subCategory: '',
31
- topic: '',
32
- type: ''
33
- }
34
- },
35
- eventData: {
36
- events: '',
37
- fCTA: '',
38
- fIndustry: '',
39
- fLines: '',
40
- fName: '',
41
- interactionType: '',
42
- linesSlider: ''
43
- },
44
- user: {
45
- profile: {
46
- profileInfo: {
47
- visitorType: '',
48
- accountNumber: '',
49
- accountStatus: '',
50
- userType: '',
51
- userName: '',
52
- accountPlan: '',
53
- UserID: '',
54
- responsiveSiteVersion: '',
55
- country: '',
56
- acctnumLocations: '',
57
- acctcontractFlag: ''
58
- }
59
- }
60
- },
61
- transaction: [
62
- {
63
- productInfo: {
64
- productID: ''
65
- },
66
- quantity: '',
67
- price: {
68
- basePrice: ''
69
- }
70
- }
71
- ]
72
- }
73
-
74
- document.getElementById('signin').addEventListener('click', function() {
75
- updateVisitorType()
76
- })
77
-
78
- function updateVisitorType() {
79
- const { digitalData } = window
80
- digitalData.user.profile.profileInfo.visitorType = 'customer'
81
- };