URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Submission: On April 16 via api from US

Summary

This website contacted 55 IPs in 6 countries across 48 domains to perform 237 HTTP transactions. The main IP is 2a02:26f0:6c00:18b::eaf, located in Ascension Island and belongs to AKAMAI-ASN1, US. The main domain is www.kohls.com.
TLS certificate: Issued by DigiCert SHA2 Extended Validation Ser... on January 21st 2020. Valid for: 2 years.
This is the only time www.kohls.com was scanned on urlscan.io!

urlscan.io Verdict: No classification

Domain & IP information

IP Address AS Autonomous System
77 2a02:26f0:6c0... 20940 (AKAMAI-ASN1)
7 2606:4700::68... 13335 (CLOUDFLAR...)
1 4 18.202.93.59 16509 (AMAZON-02)
3 2a02:26f0:6c0... 20940 (AKAMAI-ASN1)
3 2a02:26f0:6c0... 20940 (AKAMAI-ASN1)
1 34.252.123.130 16509 (AMAZON-02)
2 15.188.31.119 16509 (AMAZON-02)
1 1 66.117.28.86 15224 (OMNITURE)
1 66.117.29.4 15224 (OMNITURE)
1 13.225.73.98 16509 (AMAZON-02)
1 54.243.79.244 14618 (AMAZON-AES)
6 23.203.64.67 16625 (AKAMAI-AS)
6 34.248.248.83 16509 (AMAZON-02)
1 3.219.149.238 14618 (AMAZON-AES)
3 2a00:1450:400... 15169 (GOOGLE)
1 2 172.217.23.98 15169 (GOOGLE)
1 15 2a00:1450:400... 15169 (GOOGLE)
2 6 2a00:1450:400... 15169 (GOOGLE)
6 2a00:1450:400... 15169 (GOOGLE)
1 34.201.234.122 14618 (AMAZON-AES)
4 2620:1ec:c11:... 8068 (MICROSOFT...)
1 3 23.11.238.95 16625 (AKAMAI-AS)
2 2a00:1450:400... 15169 (GOOGLE)
2 2a03:2880:f02... 32934 (FACEBOOK)
1 13.225.73.3 16509 (AMAZON-02)
1 151.101.13.179 54113 (FASTLY)
2 2a02:26f0:6c0... 20940 (AKAMAI-ASN1)
1 13.224.194.58 16509 (AMAZON-02)
6 2a02:26f0:6c0... 20940 (AKAMAI-ASN1)
1 2 172.217.18.166 15169 (GOOGLE)
2 13.225.73.47 16509 (AMAZON-02)
1 74.119.119.135 19750 (AS-CRITEO)
1 35.186.249.72 15169 (GOOGLE)
1 1 178.250.0.157 44788 (ASN-CRITE...)
1 1 2600:1f18:730... 14618 (AMAZON-AES)
1 3.208.200.138 14618 (AMAZON-AES)
2 2 37.252.172.45 29990 (ASN-APPNEX)
2 52.215.180.197 16509 (AMAZON-02)
1 2600:9000:20e... 16509 (AMAZON-02)
1 1 2a00:1450:400... 15169 (GOOGLE)
2 35.186.226.184 15169 (GOOGLE)
1 2606:4700::68... 13335 (CLOUDFLAR...)
1 54.164.173.111 14618 (AMAZON-AES)
1 151.101.12.157 54113 (FASTLY)
2 104.244.42.195 13414 (TWITTER)
2 104.244.42.197 13414 (TWITTER)
3 2a03:2880:f12... 32934 (FACEBOOK)
1 35.227.211.136 15169 (GOOGLE)
4 52.2.41.57 14618 (AMAZON-AES)
7 34.194.211.188 14618 (AMAZON-AES)
1 35.190.72.21 15169 (GOOGLE)
1 34.95.127.121 15169 (GOOGLE)
2 23.213.164.234 16625 (AKAMAI-AS)
2 178.250.0.130 44788 (ASN-CRITE...)
1 23.213.15.82 16625 (AKAMAI-AS)
6 2a00:1450:400... 15169 (GOOGLE)
3 14 172.217.22.66 15169 (GOOGLE)
13 2a00:1450:400... 15169 (GOOGLE)
1 52.6.27.178 14618 (AMAZON-AES)
237 55
Apex Domain
Subdomains
Transfer
43 kohls.com
www.kohls.com
api-bd.kohls.com
ww8.kohls.com
mon1.kohls.com
1 MB
39 kohlsimg.com
media.kohlsimg.com
481 KB
23 doubleclick.net
googleads.g.doubleclick.net
8632166.fls.doubleclick.net
cm.g.doubleclick.net
stats.g.doubleclick.net
securepubads.g.doubleclick.net
273 KB
19 googlesyndication.com
tpc.googlesyndication.com
pagead2.googlesyndication.com
281 KB
17 clicktale.net
cdnssl.clicktale.net
conductor.clicktale.net
ing-district.clicktale.net
136 KB
9 google.de
www.google.de
adservice.google.de
1 KB
7 google.com
www.google.com
adservice.google.com
989 B
7 stylitics.com
widget.stylitics.com
widget-api.stylitics.com
319 KB
6 googletagservices.com
www.googletagservices.com
127 KB
6 thebrighttag.com
s.thebrighttag.com
11 KB
6 btstatic.com
s.btstatic.com
17 KB
5 demdex.net
dpm.demdex.net
kohls.demdex.net
8 KB
4 bing.com
bat.bing.com
15 KB
3 facebook.com
www.facebook.com
497 B
3 liadm.com
rp.liadm.com
rp4.liadm.com
idx.liadm.com
1 KB
3 scorecardresearch.com
sb.scorecardresearch.com
2 KB
3 googletagmanager.com
www.googletagmanager.com
88 KB
2 criteo.net
static.criteo.net
520 B
2 pinterest.com
ct.pinterest.com
634 B
2 t.co
t.co
572 B
2 twitter.com
analytics.twitter.com
407 B
2 snapchat.com
tr.snapchat.com
2 adsrvr.org
match.adsrvr.org
805 B
2 adnxs.com
secure.adnxs.com
2 KB
2 criteo.com
d.us.criteo.com
gum.criteo.com
74 KB
2 micpn.com
tjxbfc1n.micpn.com
16 KB
2 pinimg.com
s.pinimg.com
17 KB
2 tagdelivery.com
cdn.tagdelivery.com
ad.tagdelivery.com
12 KB
2 facebook.net
connect.facebook.net
142 KB
2 google-analytics.com
www.google-analytics.com
18 KB
2 zineone.com
cdn.zineone.com
apps.zineone.com
176 KB
2 go-mpulse.net
s.go-mpulse.net
c.go-mpulse.net
52 KB
1 indexww.com
js-sec.indexww.com
37 KB
1 ojrq.net
www.ojrq.net
415 B
1 rlcdn.com
idsync.rlcdn.com
api.rlcdn.com Failed
40 B
1 sjv.io
kohls.sjv.io
826 B
1 ads-twitter.com
static.ads-twitter.com
2 KB
1 cloudflare.com
www.cloudflare.com
471 B
1 agkn.com
d.agkn.com
589 B
1 impactradius-event.com
d.impactradius-event.com
13 KB
1 curalate.com
cdn.curalate.com
16 KB
1 sc-static.net
sc-static.net
6 KB
1 igodigital.com
6249496.collect.igodigital.com
2 KB
1 googleadservices.com
www.googleadservices.com
10 KB
1 brsrvr.com
cdns.brsrvr.com
4 KB
1 akstat.io
684dd307.akstat.io
201 B
1 omtrdc.net
kohls.tt.omtrdc.net
8 KB
1 everesttech.net
cm.everesttech.net
554 B
237 48
Domain Requested by
39 media.kohlsimg.com www.kohls.com
api-bd.kohls.com
28 www.kohls.com www.kohls.com
s.go-mpulse.net
14 securepubads.g.doubleclick.net 3 redirects www.googletagservices.com
s.go-mpulse.net
securepubads.g.doubleclick.net
www.kohls.com
13 tpc.googlesyndication.com securepubads.g.doubleclick.net
tpc.googlesyndication.com
8 api-bd.kohls.com www.kohls.com
api-bd.kohls.com
7 ing-district.clicktale.net s.go-mpulse.net
cdnssl.clicktale.net
6 pagead2.googlesyndication.com s.go-mpulse.net
securepubads.g.doubleclick.net
6 www.googletagservices.com www.kohls.com
securepubads.g.doubleclick.net
6 cdnssl.clicktale.net www.kohls.com
cdnssl.clicktale.net
6 www.google.de
6 www.google.com 2 redirects
6 s.thebrighttag.com s.btstatic.com
6 s.btstatic.com www.kohls.com
s.btstatic.com
5 googleads.g.doubleclick.net 1 redirects www.googleadservices.com
5 mon1.kohls.com www.kohls.com
mon1.kohls.com
5 widget.stylitics.com www.kohls.com
4 conductor.clicktale.net cdnssl.clicktale.net
s.go-mpulse.net
4 bat.bing.com s.btstatic.com
4 dpm.demdex.net 1 redirects www.kohls.com
s.go-mpulse.net
3 adservice.google.de www.googletagservices.com
3 www.facebook.com
3 sb.scorecardresearch.com 1 redirects www.kohls.com
3 www.googletagmanager.com s.btstatic.com
2 static.criteo.net
2 ct.pinterest.com s.go-mpulse.net
2 t.co
2 analytics.twitter.com static.ads-twitter.com
2 tr.snapchat.com sc-static.net
2 match.adsrvr.org s.go-mpulse.net
2 secure.adnxs.com 2 redirects
2 tjxbfc1n.micpn.com www.kohls.com
2 8632166.fls.doubleclick.net 1 redirects www.googletagmanager.com
2 s.pinimg.com www.kohls.com
s.pinimg.com
2 connect.facebook.net s.btstatic.com
connect.facebook.net
2 www.google-analytics.com www.kohls.com
2 widget-api.stylitics.com s.go-mpulse.net
2 ww8.kohls.com www.kohls.com
1 idx.liadm.com s.go-mpulse.net
1 adservice.google.com www.googletagservices.com
1 js-sec.indexww.com www.kohls.com
1 www.ojrq.net
1 idsync.rlcdn.com
1 kohls.sjv.io s.go-mpulse.net
1 static.ads-twitter.com s.btstatic.com
1 ad.tagdelivery.com cdn.tagdelivery.com
1 www.cloudflare.com s.go-mpulse.net
1 stats.g.doubleclick.net 1 redirects
1 d.agkn.com
1 cm.g.doubleclick.net 1 redirects
1 rp4.liadm.com
1 rp.liadm.com 1 redirects
1 gum.criteo.com 1 redirects
1 d.impactradius-event.com www.kohls.com
1 d.us.criteo.com s.btstatic.com
1 cdn.curalate.com www.kohls.com
1 cdn.tagdelivery.com s.btstatic.com
1 sc-static.net www.kohls.com
1 6249496.collect.igodigital.com s.btstatic.com
1 www.googleadservices.com www.googletagmanager.com
1 apps.zineone.com s.go-mpulse.net
1 cdns.brsrvr.com www.kohls.com
1 cdn.zineone.com www.kohls.com
1 684dd307.akstat.io s.go-mpulse.net
1 c.go-mpulse.net s.go-mpulse.net
1 kohls.tt.omtrdc.net www.kohls.com
1 cm.everesttech.net 1 redirects
1 kohls.demdex.net www.kohls.com
1 s.go-mpulse.net www.kohls.com
0 api.rlcdn.com Failed s.go-mpulse.net
237 69
Subject Issuer Validity Valid
www.kohls.com
DigiCert SHA2 Extended Validation Server CA
2020-01-21 -
2021-09-26
2 years crt.sh
*.stylitics.com
Sectigo RSA Domain Validation Secure Server CA
2019-04-17 -
2020-05-16
a year crt.sh
*.demdex.net
DigiCert SHA2 High Assurance Server CA
2018-01-09 -
2021-02-12
3 years crt.sh
akstat.io
DigiCert SHA2 Secure Server CA
2019-04-16 -
2020-06-14
a year crt.sh
ww8.kohls.com
DigiCert SHA2 High Assurance Server CA
2019-10-16 -
2021-01-20
a year crt.sh
*.tt.omtrdc.net
DigiCert SHA2 High Assurance Server CA
2017-10-19 -
2020-11-25
3 years crt.sh
*.zineone.com
Amazon
2019-08-28 -
2020-09-28
a year crt.sh
*.brsrvr.com
Go Daddy Secure Certificate Authority - G2
2018-06-30 -
2020-08-29
2 years crt.sh
s.btstatic.com
DigiCert SHA2 Secure Server CA
2020-02-10 -
2022-02-17
2 years crt.sh
*.thebrighttag.com
DigiCert SHA2 Secure Server CA
2020-03-16 -
2021-03-24
a year crt.sh
*.google-analytics.com
GTS CA 1O1
2020-04-01 -
2020-06-24
3 months crt.sh
*.g.doubleclick.net
GTS CA 1O1
2020-03-24 -
2020-06-16
3 months crt.sh
www.google.com
GTS CA 1O1
2020-03-24 -
2020-06-16
3 months crt.sh
www.google.de
GTS CA 1O1
2020-04-01 -
2020-06-24
3 months crt.sh
*.collect.igodigital.com
DigiCert SHA2 Secure Server CA
2020-02-14 -
2021-02-18
a year crt.sh
www.bing.com
Microsoft IT TLS CA 2
2019-04-30 -
2021-04-30
2 years crt.sh
*.scorecardresearch.com
Sectigo RSA Organization Validation Secure Server CA
2019-12-16 -
2020-12-25
a year crt.sh
*.facebook.com
DigiCert SHA2 High Assurance Server CA
2020-03-01 -
2020-05-30
3 months crt.sh
sc-static.net
DigiCert SHA2 Secure Server CA
2019-03-11 -
2021-03-15
2 years crt.sh
n.ssl.fastly.net
GlobalSign CloudSSL CA - SHA256 - G3
2019-11-07 -
2021-03-03
a year crt.sh
*.pinterest.com
DigiCert SHA2 High Assurance Server CA
2019-06-05 -
2020-07-22
a year crt.sh
*.curalate.com
Amazon
2020-02-18 -
2021-03-18
a year crt.sh
*.clicktale.net
DigiCert SHA2 Secure Server CA
2019-10-06 -
2020-11-04
a year crt.sh
*.doubleclick.net
GTS CA 1O1
2020-03-24 -
2020-06-16
3 months crt.sh
*.micpn.com
Sectigo RSA Domain Validation Secure Server CA
2019-03-18 -
2020-06-15
a year crt.sh
*.us.criteo.com
DigiCert ECC Secure Server CA
2019-06-12 -
2020-06-16
a year crt.sh
*.impactradius-event.com
COMODO RSA Domain Validation Secure Server CA
2019-01-08 -
2021-01-20
2 years crt.sh
*.liadm.com
Amazon
2020-01-17 -
2021-02-17
a year crt.sh
*.adsrvr.org
Trustwave Organization Validation SHA256 CA, Level 1
2019-03-07 -
2021-04-19
2 years crt.sh
*.agkn.com
RapidSSL RSA CA 2018
2018-06-21 -
2020-09-16
2 years crt.sh
tr.snapchat.com
DigiCert SHA2 Secure Server CA
2019-02-19 -
2021-02-23
2 years crt.sh
cloudflare.com
DigiCert ECC Extended Validation Server CA
2018-10-30 -
2020-11-03
2 years crt.sh
*.tagdelivery.com
Microsoft IT TLS CA 4
2020-03-02 -
2022-03-02
2 years crt.sh
ads-twitter.com
DigiCert SHA2 High Assurance Server CA
2019-08-14 -
2020-08-18
a year crt.sh
*.twitter.com
DigiCert SHA2 High Assurance Server CA
2020-03-05 -
2021-03-02
a year crt.sh
t.co
DigiCert SHA2 High Assurance Server CA
2020-03-05 -
2021-03-02
a year crt.sh
*.sjv.io
Sectigo RSA Domain Validation Secure Server CA
2019-04-22 -
2021-04-21
2 years crt.sh
*.rlcdn.com
Sectigo RSA Domain Validation Secure Server CA
2019-04-24 -
2020-04-23
a year crt.sh
*.ojrq.net
COMODO RSA Domain Validation Secure Server CA
2018-01-05 -
2021-01-27
3 years crt.sh
*.criteo.net
DigiCert ECC Secure Server CA
2020-03-30 -
2020-06-28
3 months crt.sh
san.casalemedia.com
GeoTrust RSA CA 2018
2020-03-02 -
2021-04-01
a year crt.sh
*.google.de
GTS CA 1O1
2020-04-01 -
2020-06-24
3 months crt.sh
*.google.com
GTS CA 1O1
2020-04-01 -
2020-06-24
3 months crt.sh
tpc.googlesyndication.com
GTS CA 1O1
2020-04-01 -
2020-06-24
3 months crt.sh

This page contains 13 frames:

Primary Page: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Frame ID: D599F88CA168C89D63A5278AAB043E9B
Requests: 221 HTTP requests in this frame

Frame: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Frame ID: 3FBFC9EE9D973E1B0CDD41E65550CA66
Requests: 2 HTTP requests in this frame

Frame: https://kohls.demdex.net/dest5.html?d_nsid=0
Frame ID: 5B613EFF58A480BB538E6BC2B295A394
Requests: 1 HTTP requests in this frame

Frame: https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Frame ID: 2B1C0D52E9358F26594B609E88C9E645
Requests: 4 HTTP requests in this frame

Frame: https://8632166.fls.doubleclick.net/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
Frame ID: 3710FB067E85AAA2FB5E6320226FDC80
Requests: 1 HTTP requests in this frame

Frame: https://tr.snapchat.com/cm/i?pid=8e5c8f64-cb28-46b3-8d73-411e50ce8e8e
Frame ID: 18C08A3C137D798487D8C4F29D715DBC
Requests: 1 HTTP requests in this frame

Frame: https://tr.snapchat.com/p
Frame ID: 5E76E9EFE267E6B5B93107812A7AE00E
Requests: 1 HTTP requests in this frame

Frame: https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjstfb2UyIYSJjBZhVDS1jnf7RHvtqBP6gXZ8flsWdOEXn91DvemPIxtKp1ImZxo9ifKnl497vSz2I7NWjTsavE_VzfWKAVERdpmRgId-TfeiLBi-PLzwNJnWM8_6_8l79bRUjBYIuZBulO2-v5lStq9f3chokutdy6oCNkdSnCbHfgmr1F2FuIO8USTLgooJq16SaAV1ueHGLIn7SH4hdEHDgO9pDBCC1DxtAladJDzsAKX3SYHgoIZKPZszgQ&sig=Cg0ArKJSzKVjMHEtjaYDEAE&urlfix=1&adurl=
Frame ID: 56BC94D048416FC4BCE4A79F39CA94BF
Requests: 12 HTTP requests in this frame

Frame: https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjsvPmOA4qIpoof36joa4S8SihDi7Txm6O_WJRHjq6unDTpn8roLMe63ypQCrBh4FBgSNis8nDyZDRTTKbqssvwcRHDyRyoNtYxp-K8V3FeOGM0wAcqD3_C6Q_xSG-G5vYYtXqMP3M8a7pQlX5xdbOPFJg47hQrGGbG7z71w6GaJbVWAy3Tp7s2l4dyuMzL9tvcTCH_7o1T7gjSrv1ed5uNDzwMiCiRB7Ea77H4Nk8r-5d3Qa5LYa6SQx2nkoRQ&sig=Cg0ArKJSzFhTnR8cqkcOEAE&urlfix=1&adurl=
Frame ID: 0802759886D4EE65E5FD29F9E96950BD
Requests: 12 HTTP requests in this frame

Frame: https://tpc.googlesyndication.com/safeframe/1-0-37/html/container.html
Frame ID: 7629CB3ECBBCE52AAC9C64F448AACDF9
Requests: 1 HTTP requests in this frame

Frame: https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Frame ID: DF727206F44B60EFB625066B0E3B0711
Requests: 1 HTTP requests in this frame

Frame: https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Frame ID: BB3707373868C67F02A310DF786DF21B
Requests: 1 HTTP requests in this frame

Frame: https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Frame ID: 52A0701E1A111C5A5D98A83C9144EB66
Requests: 1 HTTP requests in this frame

Screenshot


Detected technologies

Overall confidence: 100%
Detected patterns
  • script /googletagservices\.com\/tag\/js\/gpt(?:_mobile)?\.js/i

Overall confidence: 100%
Detected patterns
  • script /\/\/connect\.facebook\.net\/[^/]*\/[a-z]*\.js/i

Overall confidence: 100%
Detected patterns
  • script /google-analytics\.com\/(?:ga|urchin|analytics)\.js/i

Overall confidence: 100%
Detected patterns
  • script /\/\/s\.btstatic\.com\/tag\.js/i

Overall confidence: 100%
Detected patterns
  • script /\/s[_-]code.*\.js/i

Overall confidence: 100%
Detected patterns
  • html /<iframe[^>]* (?:id="comscore"|scr=[^>]+comscore)|\.scorecardresearch\.com\/beacon\.js|COMSCORE\.beacon/i
  • script /\.scorecardresearch\.com\/beacon\.js|COMSCORE\.beacon/i

Page Statistics

237
Requests

98 %
HTTPS

34 %
IPv6

48
Domains

69
Subdomains

55
IPs

6
Countries

3602 kB
Transfer

10533 kB
Size

18
Cookies

Redirected requests

There were HTTP redirect chains for the following requests:

Request Chain 38
  • https://dpm.demdex.net/id?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320 HTTP 302
  • https://dpm.demdex.net/id/rd?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320
Request Chain 52
  • https://cm.everesttech.net/cm/dd?d_uuid=61416016324387329012279613710811450033 HTTP 302
  • https://dpm.demdex.net/ibs:dpid=411&dpuuid=XphHkAAAAdlS5y3-
Request Chain 147
  • https://8632166.fls.doubleclick.net/activityi;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men HTTP 302
  • https://8632166.fls.doubleclick.net/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
Request Chain 152
  • https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/?value=0&guid=ON&script=0 HTTP 302
  • https://www.google.com/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105 HTTP 302
  • https://www.google.de/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105&ipr=y
Request Chain 153
  • https://gum.criteo.com/sync?c=10&r=1&u=https%3A%2F%2Fs.thebrighttag.com%2Fcs%3Fbtt%3D0%26tp%3Dcr%26uid%3D%40USERID%40 HTTP 302
  • https://s.thebrighttag.com/cs?btt=0&tp=cr&uid=JF1cfZ9BMIoutb1XvDrppudMLiAIOfWX
Request Chain 154
  • https://rp.liadm.com/p?aid=a-00oc&duid=2090332605182763747 HTTP 302
  • https://rp4.liadm.com/p?aid=a-00oc&duid=2090332605182763747&i6=MmEwMTo0Zjg6MTkyOjU0MTQ6OjI%3D&n3pc=true&pu=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
Request Chain 155
  • https://secure.adnxs.com/getuid?https%3A%2F%2Fs.thebrighttag.com%2Fcs%3Fbtt%3DVafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w%26uid%3D$UID%26tp%3Dan%26gdpr%3D1 HTTP 307
  • https://secure.adnxs.com/bounce?%2Fgetuid%3Fhttps%253A%252F%252Fs.thebrighttag.com%252Fcs%253Fbtt%253DVafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w%2526uid%253D%24UID%2526tp%253Dan%2526gdpr%253D1 HTTP 302
  • https://s.thebrighttag.com/cs?btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&uid=0&tp=an&gdpr=1
Request Chain 157
  • https://cm.g.doubleclick.net/pixel?gdpr=1&google_nid=signal_dmp&google_cm&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w HTTP 302
  • https://s.thebrighttag.com/cs?tp=gcms&gdpr=1&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&google_gid=CAESEIa9JfMxoPIk1iuKnzu6zD4&google_cver=1
Request Chain 162
  • https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&v=1&_v=j81&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&gjid=1840553344&_gid=679854657.1587038100&_u=YGBAgAAB~&z=1275544147 HTTP 302
  • https://www.google.com/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147 HTTP 302
  • https://www.google.de/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147&slf_rd=1&random=3570640782
Request Chain 163
  • https://sb.scorecardresearch.com/b?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&c7=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c9= HTTP 302
  • https://sb.scorecardresearch.com/b2?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&c7=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c9=
Request Chain 222
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcKwow1BX2-y3wTr-19f_otuY-CqDSy5Qt8DJf_CjS-RdCsMtXXwaeJwRlwYS-8LKNcrbR_Kf5lbPvrGMjBfQLMOdrGELjbIHaTejcddlXFHd4S6b9KFO_gmH4P80c&sig=Cg0ArKJSzOwhYiX1R09_EAE&urlfix=1&adurl=https%3A%2F%2Ftpc.googlesyndication.com%2Fsimgad%2F3197102829055753975 HTTP 302
  • https://tpc.googlesyndication.com/simgad/3197102829055753975
Request Chain 223
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcKwow1BX2-y3wTr-19f_otuY-CqDSy5Qt8DJf_CjS-RdCsMtXXwaeJwRlwYS-8LKNcrbR_Kf5lbPvrGMjBfQLMOdrGELjbIHaTejcddlXFHd4S6b9KFO_gmH4P80c&sig=Cg0ArKJSzOwhYiX1R09_EAE&urlfix=1&adurl=https%3A%2F%2Ftpc.googlesyndication.com%2Fsimgad%2F17538165024363267041 HTTP 302
  • https://tpc.googlesyndication.com/simgad/17538165024363267041
Request Chain 224
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcKwow1BX2-y3wTr-19f_otuY-CqDSy5Qt8DJf_CjS-RdCsMtXXwaeJwRlwYS-8LKNcrbR_Kf5lbPvrGMjBfQLMOdrGELjbIHaTejcddlXFHd4S6b9KFO_gmH4P80c&sig=Cg0ArKJSzOwhYiX1R09_EAE&urlfix=1&adurl=https%3A%2F%2Ftpc.googlesyndication.com%2Fsimgad%2F16045082179982752651 HTTP 302
  • https://tpc.googlesyndication.com/simgad/16045082179982752651

237 HTTP transactions

Resource
Path
Size
x-fer
Type
MIME-Type
Primary Request mens-clothing.jsp
www.kohls.com/sale-event/
243 KB
246 KB
Document
General
Full URL
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
0f9b6b0249bc2941ceb82e2668069bf411632211f48fea5d2c161927ee80c442
Security Headers
Name Value
Content-Security-Policy block-all-mixed-content; frame-ancestors 'self';
Strict-Transport-Security max-age=15768000 ; preload
X-Frame-Options SAMEORIGIN

Request headers

:method
GET
:authority
www.kohls.com
:scheme
https
:path
/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
none
sec-fetch-mode
navigate
sec-fetch-user
?1
sec-fetch-dest
document
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
200
content-type
text/html; charset=UTF-8
set-cookie
AKA_RV=71; expires=Tue, 13-Oct-2020 11:54:55 GMT; path=/; secure _abck=F92360FDB6DCD76613CD11D0C66469EA~-1~YAAQFbsQAvLxqYFxAQAAIIrXggNryzCDJ5x1TB0BlKGEB5Uz7MlPNAEzemUi1FZ12opvDOL4m5zZSSR3Z8Yb4KQhSl+3WEEZDyxJPvQjoI7lfeucYFIrGHfJIV40To5W2rcEW8R4zFUo8fOOwNoOUZG+JL5lXIn8zRgyDbU/yx9NmOI+4Rgz2sRroY8r3qf/2dFrqAvacZLsYUIgE7dU1nmKov+sooQOIDCvNsI/86zNrOhYJQOAKelY3qAW2XN0NNSbT0pguUcuPl3jbnhOLn1ZcgtmcPdtIiNL/IlZVMjlzQ7aGbDoY3c=~-1~-1~-1; Domain=.kohls.com; Path=/; Expires=Fri, 16 Apr 2021 11:54:55 GMT; Max-Age=31536000; Secure bm_sz=2F3E0824CF3D8ECD86A7A388B77EB0BC~YAAQFbsQAvHxqYFxAQAAIIrXggcdKSoIYAQ18eKmxtUkOaC4IWg5yYwwN5bHPRHxL7/uN3lXBYw3rA6tklNn/Alaz2CZDLJX2mkMvAz8udXm0rjX0XBCX07/6qjDQv/0CHrF9ss6iYPhITpiXnQrnohViR/yrO4//AFol9/es95qd2FW/QVHzMHKD0N6Zw==; Domain=.kohls.com; Path=/; Expires=Thu, 16 Apr 2020 15:54:55 GMT; Max-Age=14400; HttpOnly bm_mi=AFC5E8443E4484D72328100E4143150B~tiI3YjRRqiKz7pLRBRRH2nQTYjDIPn6gf0LMVDtpWHMIc6kPCCFfhFpLm3cdw+RUiJrTUaXy8kXXW52pFLNgKbLIdobeF7/nMJHE4NN9ymPl8yiz3Tu1eXCt7N4VNQwzXH5EMDaWt/+c82IE46kc5Qt959T1jlEHj4pU8q5je6ouioY94mfKg6VVVK9w7LbBkK6gssdxsdgasHn0t6IgnoBd+qEzDSd0vsqhRpOyecSt4rXmcIuAbUXHnGoY/CAm; Domain=.kohls.com; Path=/; Max-Age=0; HttpOnly SL_Cookie=a1; expires=Fri, 17 Apr 2020 03:13:53 GMT; path=/; domain=.kohls.com; secure akavpau_www=1587038395~id=177a40ba99a9ac464e24fe36ccb2a6d0; Path=/; Secure; SameSite=None ak_bmsc=9568733278707EC12C8BAD27E58143A80210BB15277A00008F47985EFBAD4F26~plP/t5PyELnjNaFAMXjTYcdU3TjI+RuG3p9aRF9eyfpF3TRhaAhy+N9hz8EroKhs2Tma9eq+EKDowd7N2yhDiX2w3ghPgY54NLJl/4kqN4A+hR/51uYPTKE0eWARc3jwta/iJ1ql2nPLXUyYJIqzFlQLpmLSZg8lbLN/ALS2+FCs98rUW8mO7CfT3p8ZNfXG1UhnWgtPCsoPMQReX1pZPta69KNmPGiaqz1EDUrWR5w8c=; expires=Thu, 16 Apr 2020 13:54:55 GMT; max-age=7200; path=/; domain=.kohls.com; HttpOnly AKA_PDP2=False; expires=Tue, 13-Oct-2020 11:54:55 GMT; path=/; secure AKA_HP2=True; expires=Tue, 13-Oct-2020 11:54:55 GMT; path=/; secure SL_Cookie=a1; expires=Fri, 17 Apr 2020 11:26:20 GMT; path=/; domain=.kohls.com; secure SL_Cookie=a1; expires=Fri, 17 Apr 2020 09:56:35 GMT; path=/; domain=.kohls.com; secure SL_Cookie=a1; expires=Thu, 16 Apr 2020 12:00:00 GMT; path=/; domain=.kohls.com; secure SL_Cookie=a1; expires=Fri, 17 Apr 2020 09:56:35 GMT; path=/; domain=.kohls.com; secure SL_Cookie=a1; expires=Fri, 17 Apr 2020 11:26:19 GMT; path=/; domain=.kohls.com; secure SL_Cookie=a1; expires=Fri, 17 Apr 2020 11:26:19 GMT; path=/; domain=.kohls.com; secure
device_type
Touch
strict-transport-security
max-age=15768000 ; preload
x-origin-ttl
Fri, 17 Apr 2020 03:13:53 GMT Fri, 17 Apr 2020 03:13:53 GMT Fri, 17 Apr 2020 03:13:53 GMT
x-origin-cc
max-age=86460 max-age=86460 max-age=86460
x-frame-options
SAMEORIGIN
content-security-policy
block-all-mixed-content; frame-ancestors 'self';
esi_status
ENABLED
server-timing
edge; dur=2 cdn-cache; desc=HIT
host_service
x-akamai-transformed
9 245005 0 pmb=mTOE,3mRUM,2
cache-control
private, max-age=600
expires
Thu, 16 Apr 2020 12:04:55 GMT
date
Thu, 16 Apr 2020 11:54:55 GMT
environment.js
www.kohls.com/snb/media/javascript/deploy/
8 KB
4 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/environment.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
7981dac50c9f26875336de70feca8696ea7e73a7d74438842eb21810dcb39755
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 03:24:31 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 03:24:31 GMT, Thu, 02 Apr 2020 03:24:31 GMT, Thu, 02 Apr 2020 03:24:31 GMT, Thu, 02 Apr 2020 03:24:31 GMT, Thu, 02 Apr 2020 03:24:31 GMT, Thu, 02 Apr 2020 03:24:31 GMT
etag
"5e6c7201-2060"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
3061
expires
Fri, 17 Apr 2020 11:54:56 GMT
kjscore3.js
www.kohls.com/snb/media/javascript/deploy/
51 KB
17 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
14fcf6193151f5336b176b2c55eadfad39d073d6670629f726fe66009054e0cc
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:15 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:14 GMT, Thu, 02 Apr 2020 05:38:14 GMT, Thu, 02 Apr 2020 05:38:14 GMT, Thu, 02 Apr 2020 05:38:14 GMT
etag
"5e729ee8-cd0c"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
17129
expires
Fri, 17 Apr 2020 11:54:56 GMT
ktag.js
www.kohls.com/snb/media/javascript/deploy/
137 KB
42 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/ktag.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
22ffd3c91878a778c0c80d919abd9c063bf1b889faed4bc0e2fe69617a9f8458
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:05 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:04 GMT, Thu, 02 Apr 2020 05:38:04 GMT, Thu, 02 Apr 2020 05:38:04 GMT
etag
"5e729ee8-223d7"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
42089
expires
Fri, 17 Apr 2020 11:54:56 GMT
homepage1.css
www.kohls.com/snb/media/css/
189 KB
30 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/homepage1.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
aceabcad789ecff956642f386c61536a07b581d1c73f5bd4462686682bf9aa5f
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:40:30 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:40:30 GMT, Thu, 02 Apr 2020 05:40:30 GMT, Thu, 02 Apr 2020 05:40:30 GMT, Thu, 02 Apr 2020 05:40:30 GMT
etag
"5e729eea-2f43e"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
29981
expires
Fri, 17 Apr 2020 11:54:56 GMT
homepage.css
www.kohls.com/snb/media/css/
238 KB
36 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/homepage.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
2294527b0a142dc18d6247eab841f78253166755adac5cc483f3ece6e04f4677
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 25 Mar 2020 05:54:00 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 26 Mar 2020 05:53:58 GMT, Thu, 26 Mar 2020 05:53:58 GMT, Thu, 26 Mar 2020 05:53:58 GMT, Thu, 26 Mar 2020 05:53:58 GMT, Thu, 26 Mar 2020 05:53:58 GMT, Thu, 26 Mar 2020 05:53:58 GMT
etag
"5e6c7202-3b82b"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
36427
expires
Fri, 17 Apr 2020 11:54:56 GMT
hfjFonts.css
www.kohls.com/snb/media/css/fonts/
238 KB
137 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/fonts/hfjFonts.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
9d39e3127b199df526678091aa4681f829efb05a2df130f83edb51da08753fcd
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:53:21 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:53:20 GMT, Thu, 02 Apr 2020 05:53:20 GMT, Thu, 02 Apr 2020 05:53:20 GMT
etag
"5e729f05-3b6b7"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
139432
expires
Fri, 17 Apr 2020 11:54:56 GMT
skava-custom.css
www.kohls.com/snb/media/css/
6 KB
2 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/skava-custom.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
ea46c4bbfb1c549721ae599d61413502c57785c0f411e9aafcf95985d2ea4a8b
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 25 Mar 2020 05:55:44 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 26 Mar 2020 05:55:43 GMT, Thu, 26 Mar 2020 05:55:43 GMT, Thu, 26 Mar 2020 05:55:43 GMT, Thu, 26 Mar 2020 05:55:43 GMT, Thu, 26 Mar 2020 05:55:43 GMT
etag
"5e6c7214-1960"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
1072
expires
Fri, 17 Apr 2020 11:54:56 GMT
bd-experience-rendering-sdk.base.min.css
api-bd.kohls.com/update/ede/assets/experiences/webstore/
0
303 B
Stylesheet
General
Full URL
https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.base.min.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Apache /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
server
Apache
fwdhst
kohls.download.akamai.com
etag
"d41d8cd98f00b204e9800998ecf8427e:1553752341"
vary
Accept-Encoding
content-type
text/css
status
200
cache-control
max-age=1800
akamai-request-id2
2.16.187.21:25db443
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
20
expires
Thu, 16 Apr 2020 12:24:56 GMT
bd-experience-rendering-sdk.default.theme.min.css
api-bd.kohls.com/update/ede/assets/experiences/webstore/
194 KB
20 KB
Stylesheet
General
Full URL
https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.default.theme.min.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Apache /
Resource Hash
63630dabec4f48e5b818c21158eda205d78186285a429833931511b5c79ea337

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
server
Apache
fwdhst
kohls.download.akamai.com
etag
"b330d165d1fa1f7ddb4d73fcbf23f587:1580192838"
vary
Accept-Encoding
content-type
text/css
status
200
cache-control
max-age=1800
akamai-request-id2
2.16.187.21:25db42d
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
20170
expires
Thu, 16 Apr 2020 12:24:56 GMT
bd-experience-rendering-sdk.min.js
api-bd.kohls.com/update/ede/assets/experiences/webstore/
502 KB
111 KB
Script
General
Full URL
https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Apache /
Resource Hash
b69335ae739737089bebce27cfc370df981bd29f27fca7ba40cc6cd893af9060

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
server
Apache
fwdhst
kohls.download.akamai.com
etag
"744116693b0d1dafbb72e36f8d5f7d29:1580192839"
vary
Accept-Encoding
content-type
application/x-javascript
status
200
cache-control
max-age=1800
akamai-request-id2
2.16.187.21:25db46d
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
113597
expires
Thu, 16 Apr 2020 12:24:56 GMT
33bf7c8
www.kohls.com/akam/11/
32 KB
11 KB
Script
General
Full URL
https://www.kohls.com/akam/11/33bf7c8
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
8c37840429cf932dcab57bf805c73d1508a27dcbd457839af775c02a34c7cfb3
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
last-modified
Thu, 02 May 2019 20:06:44 GMT
x-origin-ttl
, , ,
etag
"dc6bce692019f8bdfe74d157d03b5282f232f903bee145fc2eb880dbf02f6331"
vary
Accept-Encoding
content-type
application/javascript
status
200
server-timing
cdn-cache; desc=HIT, edge; dur=1
cache-control
max-age=0, no-cache, no-store
x-origin-cc
, , ,
strict-transport-security
max-age=15768000 ; preload
content-length
10450
expires
Thu, 16 Apr 2020 11:54:56 GMT
order-status-icon.png
www.kohls.com/media/images/global-header-refresh-icons/
1 KB
2 KB
Image
General
Full URL
https://www.kohls.com/media/images/global-header-refresh-icons/order-status-icon.png
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
99e502f00a1a89faf52ecf66791b4e3f5e85d5806544ecbf2943c5e4c4667c7e
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
last-modified
Tue, 16 Jan 2018 19:45:04 GMT
x-origin-ttl
, , , , , , , , , , , , , ,
etag
"17c0-4c5-562e9f7921000"
strict-transport-security
max-age=15768000 ; preload
content-type
image/png
status
200
cache-control
max-age=86400
x-origin-cc
, , , , , , , , , , , , , ,
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
x-edgeconnect-cache-status
1
content-length
1221
expires
Fri, 17 Apr 2020 11:54:56 GMT
dp-mens-dm-20200405-hero
media.kohlsimg.com/is/image/kohls/
62 KB
63 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dm-20200405-hero?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
a71acced4acf6b86479a51de2b083b124739b004d7c4a442ea19f3803e22d112

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"042b910e5a6429b0f9086becae69fc72"
x-serial
1165
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
63818
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-vis-tops
media.kohlsimg.com/is/image/kohls/
21 KB
21 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-tops?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
f49c965a0c06a4fe2002e168e64f485c6cc3a976551a2157ec7e92f44d399160

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"92bd335de1d32d21a9e325d1842f3e41"
x-serial
851
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
21418
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-vis-outdoors
media.kohlsimg.com/is/image/kohls/
8 KB
8 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-outdoors?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
0d25afb94067e1a95ad3f9dfcf2c0081809410af3dce2c143973e4768794855b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"cf13bb2926aa6692586d61d463ab96ba"
x-serial
1736
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
8040
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-vis-socks
media.kohlsimg.com/is/image/kohls/
3 KB
3 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-socks?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
ea837f894d32d6b0c043366ae389cc6bccf93a3af3e55ff296c62274ceee37d8

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"c5c71a05e94fe42133e3d9e2d481fb48"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
3374
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-vis-swim
media.kohlsimg.com/is/image/kohls/
14 KB
14 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-swim?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
c16bdf1444336a4d1fc3c451186f3c3a9f841195f1aff70f47df6e9aa9b1f3a7

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"1176cf2eb14d0d1de1d7d2b87ee3cafb"
x-serial
1538
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
14050
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-vis-bottoms
media.kohlsimg.com/is/image/kohls/
8 KB
8 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-bottoms?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
f7faab19d8a62e6d1f068b1bcbda7f9aa1e03b7688bc993d4fb398f49057957d

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Server
etag
"7edebdc86c4a268d695e8958e0785541"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=900
content-length
8372
expires
Thu, 16 Apr 2020 12:09:57 GMT
dp-mens-dp-20200405-200401-mens-vis-shoes
media.kohlsimg.com/is/image/kohls/
5 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-vis-shoes?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
43a6a9edb9f967ee24f2a1ed4baebcec4ef861c912bd58cfc9bfe7397cb41ab8

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"49b7ebc222266898a7263db60989dc67"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4984
expires
Thu, 23 Apr 2020 11:54:56 GMT
style.css
widget.stylitics.com/kohls-mnm-v2/css/
77 KB
15 KB
Stylesheet
General
Full URL
https://widget.stylitics.com/kohls-mnm-v2/css/style.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
c33bfb9bf99597501c78e3dc3530babcd11f7b98b7aca0a4631f312a14e400c9

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
cf-cache-status
HIT
age
671
status
200
cf-request-id
022470a401000096a4bf35d200000001
last-modified
Tue, 10 Mar 2020 19:24:25 GMT
server
cloudflare
etag
W/"5e67e969-13448"
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, POST, OPTIONS
content-type
text/css
access-control-allow-origin
*
access-control-expose-headers
Content-Length,Content-Range
cache-control
public, max-age=3600
cf-ray
584db6e66ad396a4-FRA
access-control-allow-headers
DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range
expires
Thu, 16 Apr 2020 12:54:56 GMT
widget.js
widget.stylitics.com/v2/
247 KB
95 KB
Script
General
Full URL
https://widget.stylitics.com/v2/widget.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
9a360cf5ee4308a7d244179b2f91f25d33310871c20b6cf765093acb81fd8e49

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
cf-cache-status
HIT
age
208
status
200
cf-request-id
022470a401000096a4bf35e200000001
last-modified
Wed, 08 Apr 2020 23:29:34 GMT
server
cloudflare
etag
W/"5e8e5e5e-3dcfd"
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, POST, OPTIONS
content-type
application/javascript
access-control-allow-origin
*
access-control-expose-headers
Content-Length,Content-Range
cache-control
public, max-age=3600
cf-ray
584db6e66ad696a4-FRA
access-control-allow-headers
DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range
expires
Thu, 16 Apr 2020 12:54:56 GMT
main.js
widget.stylitics.com/kohls-mnm-v2/js/
276 KB
92 KB
Script
General
Full URL
https://widget.stylitics.com/kohls-mnm-v2/js/main.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
a26c4421f420f7a7a0615312c31cb8150ce3dfc51afe4d9516b4bf36f5d24bac

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
cf-cache-status
HIT
age
665
status
200
cf-request-id
022470a454000096a4bf363200000001
last-modified
Tue, 10 Mar 2020 19:24:46 GMT
server
cloudflare
etag
W/"5e67e97e-44e38"
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, POST, OPTIONS
content-type
application/javascript
access-control-allow-origin
*
access-control-expose-headers
Content-Length,Content-Range
cache-control
public, max-age=3600
cf-ray
584db6e6eb4e96a4-FRA
access-control-allow-headers
DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range
expires
Thu, 16 Apr 2020 12:54:56 GMT
dp-mens-dp-20200405-200401-mens-four-athleisure
media.kohlsimg.com/is/image/kohls/
4 KB
4 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-four-athleisure?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
7e3c90a577f823675de936edeb8afd3a28e3200ef315a25b794ab56014e851cf

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"108c76de73b28f0b3377d59775666fb2"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
3698
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-four-active
media.kohlsimg.com/is/image/kohls/
6 KB
6 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-four-active?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
6166bbacde4b50eaeb5ea098c80b35a804803ef785748485d4c9c642761d9ed5

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"5fdd65dff18b9278d97a616ec22098e3"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
5640
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-four-golf
media.kohlsimg.com/is/image/kohls/
10 KB
10 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-four-golf?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
6d5d5b849d06209db22dd9551e7352cc565ae9b35a4b859f8ca3b65abdb3a15c

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Server
etag
"192ffd2ef60e353ad15c17e6a983e1e1"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=900
content-length
10498
expires
Thu, 16 Apr 2020 12:09:57 GMT
dp-mens-dp-20200405-200401-mens-four-sports
media.kohlsimg.com/is/image/kohls/
5 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-four-sports?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
9b85c222fcdb4cdab6b4d8d138ca311dab7084f78e2c95ad85bb3608d05a065e

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"6403c93fa731d1b7bee96c87b258b22d"
x-serial
277
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4816
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-five-suit
media.kohlsimg.com/is/image/kohls/
43 KB
43 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-five-suit?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
2282d952f6652ce9195267b3fe681b99cfe9fccd41912c86c31c3e47e774494b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"31fe1c10deb5847f98d41640b5adadc7"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
44208
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-five-shirts
media.kohlsimg.com/is/image/kohls/
6 KB
7 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-five-shirts?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
9b9b5d1c856c505f2af4236e65fb900f46422f6b46c3a50b6af89d5d4143b3f1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"8885ab938ce89ae57fe0227dfed2608c"
x-serial
442
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
6628
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-five-bottoms
media.kohlsimg.com/is/image/kohls/
3 KB
3 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-five-bottoms?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
7ea9d44289ca8ecbc992776cf306e87cc1dcdd3c40ae059f7d5f6af9aa2e3bb7

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"cffeacc20c19aa4989e5d59fa27e72d9"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
2936
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-five-ties
media.kohlsimg.com/is/image/kohls/
11 KB
11 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-five-ties?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
a383e9ea4c5445aa825239410fc864d86bb6d12ad490a7be09c0a27d38817fb2

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"b84bdde00b001b22a6cffd5a565bb4e3"
x-serial
927
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
11534
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-200401-mens-five-jackets
media.kohlsimg.com/is/image/kohls/
8 KB
9 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-200401-mens-five-jackets?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
9e8fa3d78b2a0d6998d310c4c767eee97da81723463d8839ce7682da8ea5a011

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"02d79f3b821debbf92b8c9fc299b4ec3"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
8572
expires
Thu, 23 Apr 2020 11:54:56 GMT
style.css
widget.stylitics.com/kohls-mnm-staging/css/
80 KB
15 KB
Stylesheet
General
Full URL
https://widget.stylitics.com/kohls-mnm-staging/css/style.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
161322df654846f96bd20ee1a587c35a9c6395db1c0fef3a6deb390b66a4ec95

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
cf-cache-status
HIT
age
1775
status
200
cf-request-id
022470a454000096a4bf364200000001
last-modified
Wed, 15 Apr 2020 14:40:19 GMT
server
cloudflare
etag
W/"5e971cd3-13f84"
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, POST, OPTIONS
content-type
text/css
access-control-allow-origin
*
access-control-expose-headers
Content-Length,Content-Range
cache-control
public, max-age=3600
cf-ray
584db6e6eb4f96a4-FRA
access-control-allow-headers
DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range
expires
Thu, 16 Apr 2020 12:54:56 GMT
main.js
widget.stylitics.com/kohls-mnm-staging/js/
280 KB
93 KB
Script
General
Full URL
https://widget.stylitics.com/kohls-mnm-staging/js/main.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
dde63196963650b1265d8f0e311504fd8077c20bed94501f75adf77f8ddee11d

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
cf-cache-status
HIT
age
1775
status
200
cf-request-id
022470a455000096a4bf365200000001
last-modified
Wed, 15 Apr 2020 14:40:40 GMT
server
cloudflare
etag
W/"5e971ce8-45fb4"
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, POST, OPTIONS
content-type
application/javascript
access-control-allow-origin
*
access-control-expose-headers
Content-Length,Content-Range
cache-control
public, max-age=3600
cf-ray
584db6e6eb5096a4-FRA
access-control-allow-headers
DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range
expires
Thu, 16 Apr 2020 12:54:56 GMT
dp-templates-half-20200401-comfy-clothes
media.kohlsimg.com/is/image/kohls/
50 KB
51 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-templates-half-20200401-comfy-clothes?scl=1&fmt=pjpeg&qlt=80,1
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
3158e137735ba9d198046be10ac174bcf752a5f7051c85c19b789069b1c6783f

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Server
etag
"c4b6cd7ff9f8508393e1cccf6de43cab"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=376
content-length
51595
expires
Thu, 16 Apr 2020 12:01:12 GMT
dp-mens-half-20200405-family-fun
media.kohlsimg.com/is/image/kohls/
39 KB
39 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-half-20200405-family-fun?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
8c047f0950d687e342df8e70cdd5dfdd6ca3ff525d41b9020139e82a6ec8d6d7

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"75d20f5311d3c01960281172ea33ebae"
x-serial
1218
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
39566
expires
Thu, 23 Apr 2020 11:54:56 GMT
wo-m-20200228-fam-fun.gif
media.kohlsimg.com/is/content/kohls/
27 KB
27 KB
Image
General
Full URL
https://media.kohlsimg.com/is/content/kohls/wo-m-20200228-fam-fun.gif
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
b5bee989dd7481e168729af79a76c094411711bc6ff4e84973ad6534e245d3ff

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
x-serial
954
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
last-modified
Fri, 27 Mar 2020 03:34:28 GMT
content-length
27222
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-bt-guys-m_11
media.kohlsimg.com/is/image/kohls/
6 KB
6 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-bt-guys-m_11?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
567499fa0997401930cd649b501db1e65e54ba799312af544d52e88d639526da

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
x-check-cacheable
YES
server
Akamai Image Manager
etag
"7543730e4889b304abd50a8cd88d8c2d"
x-serial
1262
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
5814
expires
Thu, 23 Apr 2020 11:54:56 GMT
dp-mens-dp-20200405-big-tall-guys_08
media.kohlsimg.com/is/image/kohls/
27 KB
28 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/dp-mens-dp-20200405-big-tall-guys_08?scl=1&fmt=pjpeg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
80ff8d853b239de01aeff55a14e4337c1b622691a86673f5b89042e5fec1f3db

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Manager
etag
"d97212f4d342e8ee99f1825bf50de486"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
27942
expires
Thu, 23 Apr 2020 11:54:56 GMT
rd
dpm.demdex.net/id/
Redirect Chain
  • https://dpm.demdex.net/id?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320
  • https://dpm.demdex.net/id/rd?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320
8 KB
3 KB
XHR
General
Full URL
https://dpm.demdex.net/id/rd?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
18.202.93.59 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-18-202-93-59.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
1b996535566391fc2e467e04a2731a4696cae01bbb5c35ff4245e83e5c62624b
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

DCS
dcs-prod-irl1-v065-0334d6dd1.edge-irl1.demdex.com 5.66.0.20200408080925 3ms (+0ms)
Pragma
no-cache
Strict-Transport-Security
max-age=31536000; includeSubDomains
Content-Encoding
gzip
X-TID
efPyMYYGQIQ=
Vary
Origin, Accept-Encoding, User-Agent
P3P
policyref="/w3c/p3p.xml", CP="NOI NID CURa ADMa DEVa PSAa PSDa OUR SAMa BUS PUR COM NAV INT"
Access-Control-Allow-Origin
https://www.kohls.com
Cache-Control
no-cache,no-store,must-revalidate,max-age=0,proxy-revalidate,no-transform,private
Access-Control-Allow-Credentials
true
Connection
keep-alive
Content-Type
application/json;charset=utf-8
Content-Length
2238
Expires
Thu, 01 Jan 1970 00:00:00 GMT

Redirect headers

Pragma
no-cache
Strict-Transport-Security
max-age=31536000; includeSubDomains
Access-Control-Allow-Origin
https://www.kohls.com
X-TID
LCIkFddtQ/o=
Vary
Origin
P3P
policyref="/w3c/p3p.xml", CP="NOI NID CURa ADMa DEVa PSAa PSDa OUR SAMa BUS PUR COM NAV INT"
Location
https://dpm.demdex.net/id/rd?d_visid_ver=4.3.0&d_fieldgroup=MC&d_rtbd=json&d_ver=2&d_verify=1&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&ts=1587038096320
Cache-Control
no-cache,no-store,must-revalidate,max-age=0,proxy-revalidate,no-transform,private
Access-Control-Allow-Credentials
true
Connection
keep-alive
Content-Length
0
Expires
Thu, 01 Jan 1970 00:00:00 GMT
ipadcss.css
www.kohls.com/snb/media/css/
4 KB
2 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/ipadcss.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
132fefcf69e743721cc84433604b9be4030a96f20797af1e03ab030edca4d76f
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:44 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:42 GMT, Thu, 02 Apr 2020 05:38:42 GMT, Thu, 02 Apr 2020 05:38:42 GMT, Thu, 02 Apr 2020 05:38:42 GMT, Thu, 02 Apr 2020 05:38:42 GMT
etag
"5e729eea-11a5"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
1080
expires
Fri, 17 Apr 2020 11:54:56 GMT
0d627b0f916377baf33570265c79a
www.kohls.com/public/
64 KB
16 KB
Script
General
Full URL
https://www.kohls.com/public/0d627b0f916377baf33570265c79a
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
8bd5e5729a3fb989a0bcb99fd966df11e1c44198c447712fa4136996e2b28c0a
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
last-modified
Tue, 04 Feb 2020 20:25:53 GMT
x-origin-ttl
,
etag
"aa9808af4a63a6991976c58d3a0b688b4fa00b617dcffd0fc56464fdf04f2074"
vary
Accept-Encoding
content-type
application/javascript
status
200
server-timing
cdn-cache; desc=HIT, edge; dur=1
cache-control
max-age=604800
x-origin-cc
,
strict-transport-security
max-age=15768000 ; preload
content-length
16429
expires
Thu, 16 Apr 2020 11:54:56 GMT
id
api-bd.kohls.com/v1/ecs/correlation/
36 B
357 B
XHR
General
Full URL
https://api-bd.kohls.com/v1/ecs/correlation/id
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:189::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
3f57f82f11d7b0f7f696ea616a9973293f72813b269803acdf80ba6c8e8b0da9

Request headers

Accept
*/*
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
fwdhst
origin-gcp-us-central1-ecs.kohls.com
status
200
content-type
text/plain
access-control-allow-origin
*
akamai-request-id2
2.16.187.23:b37cd96
server-timing
cdn-cache; desc=MISS, edge; dur=96, origin; dur=51
content-length
36
id
api-bd.kohls.com/v1/ecs/correlation/
36 B
358 B
XHR
General
Full URL
https://api-bd.kohls.com/v1/ecs/correlation/id
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:189::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
074fe1fd6af90f94febd52f66bc3e2112e4e4a4a0e4c807cf6766810518e4905

Request headers

Accept
*/*
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
fwdhst
origin-gcp-us-central1-ecs.kohls.com
status
200
content-type
text/plain
access-control-allow-origin
*
akamai-request-id2
2.16.187.23:b37cd99
server-timing
cdn-cache; desc=MISS, edge; dur=107, origin; dur=16
content-length
36
truncated
/
63 KB
0
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
f24cd77318c239a2211ea8382efa423e81b21e515b902fbf707b7996f1b99a45

Request headers

Origin
https://www.kohls.com
Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
text/plain;charset=US-ASCII
truncated
/
30 KB
0
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
80cc8ef5083239b68a12bff0d34ce0fd015791a72ef9c173417edc29d95da6e8

Request headers

Origin
https://www.kohls.com
Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
text/plain;charset=US-ASCII
4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
s.go-mpulse.net/boomerang/ Frame 3FBF
202 KB
49 KB
Script
General
Full URL
https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:181::11a6 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
9fb974b84a129972abbd1e2e5cfdf685cab5f6f22d881adf3845bc73b43eb4ad

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Mon, 09 Mar 2020 22:40:11 GMT
vary
Accept-Encoding
content-type
application/javascript; charset=utf-8
status
200
cache-control
max-age=604800
timing-allow-origin
*
content-length
50141
search-icon.svg
www.kohls.com/snb/media/images/global-header-refresh-icons/
324 B
666 B
Image
General
Full URL
https://www.kohls.com/snb/media/images/global-header-refresh-icons/search-icon.svg
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
a3d50ef27006d215b4828faae5cce1617ef8cbb2800346351dc17cb5159eaa50
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/snb/media/css/homepage.css
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
last-modified
Wed, 18 Mar 2020 22:21:58 GMT
x-origin-ttl
, ,
etag
"5e729f06-144"
vary
Accept-Encoding
content-type
image/svg+xml
status
200
server-timing
cdn-cache; desc=HIT, edge; dur=1
cache-control
max-age=86400
x-origin-cc
, ,
strict-transport-security
max-age=15768000 ; preload
accept-ranges
bytes
content-length
228
expires
Fri, 17 Apr 2020 11:54:56 GMT
gh-test-shoppingcart
media.kohlsimg.com/is/image/kohls/
738 B
903 B
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/gh-test-shoppingcart?scl=1&fmt=png-alpha
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
2d3c362dea9616624060e41064907033f41959ddf6bda37f26c87e6047fcd20a

Request headers

Referer
https://www.kohls.com/snb/media/css/homepage.css
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
server
Akamai Image Server
etag
"f4d95f99ca6627c0da518f4776dd6700"
status
200
content-type
image/png
access-control-allow-origin
*
cache-control
private, max-age=540
content-length
738
expires
Thu, 16 Apr 2020 12:03:56 GMT
truncated
/
14 KB
14 KB
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
8dccc8a29c28ee78f0d1f0336ccc95edfc29e32134efd81160fb7a224f51a270

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
Origin
https://www.kohls.com

Response headers

Content-Type
application/x-font-woff
truncated
/
14 KB
14 KB
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
f94a0b8748fb6d8f32b70d464162f64e541983caa0631e5d3f2e73c40a17e393

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
Origin
https://www.kohls.com

Response headers

Content-Type
application/x-font-woff
Cookie set dest5.html
kohls.demdex.net/ Frame 5B61
0
0
Document
General
Full URL
https://kohls.demdex.net/dest5.html?d_nsid=0
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/ktag.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.252.123.130 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-252-123-130.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Host
kohls.demdex.net
Connection
keep-alive
Pragma
no-cache
Cache-Control
no-cache
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site
cross-site
Sec-Fetch-Mode
navigate
Sec-Fetch-Dest
iframe
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Accept-Encoding
gzip, deflate, br
Accept-Language
en-US
Cookie
demdex=61416016324387329012279613710811450033
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

Accept-Ranges
bytes
Cache-Control
max-age=21600
Content-Encoding
gzip
Content-Type
text/html
Expires
Thu, 01 Jan 1970 00:00:00 GMT
Last-Modified
Wed, 08 Apr 2020 13:42:45 GMT
P3P
policyref="/w3c/p3p.xml", CP="NOI NID CURa ADMa DEVa PSAa PSDa OUR SAMa BUS PUR COM NAV INT"
Pragma
no-cache
Set-Cookie
demdex=61416016324387329012279613710811450033;Path=/;Domain=.demdex.net;Expires=Tue, 13-Oct-2020 11:54:56 GMT;Max-Age=15552000;Secure;SameSite=None
Strict-Transport-Security
max-age=31536000; includeSubDomains
Vary
Accept-Encoding, User-Agent
X-TID
KU2pDfxpRIU=
Content-Length
2785
Connection
keep-alive
id
ww8.kohls.com/
48 B
479 B
XHR
General
Full URL
https://ww8.kohls.com/id?d_visid_ver=4.3.0&d_fieldgroup=A&mcorgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&mid=66348673173402914051624183315367216025&ts=1587038096515
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/ktag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
15.188.31.119 Paris, France, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-15-188-31-119.eu-west-3.compute.amazonaws.com
Software
jag /
Resource Hash
fd207445c501b157718c167a34cea5bc7a19bb45082c4741f5c563f73d5e6ade
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 1; mode=block

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded

Response headers

status
200
date
Thu, 16 Apr 2020 11:54:56 GMT
x-content-type-options
nosniff
server
jag
xserver
anedge-65fb49f79-fpc44
vary
Origin
x-c
master-1221.I0e927e.M0-376
p3p
CP="This is not a P3P policy"
access-control-allow-origin
https://www.kohls.com
cache-control
no-cache, no-store, max-age=0, no-transform, private
access-control-allow-credentials
true
content-type
application/x-javascript;charset=utf-8
content-length
48
x-xss-protection
1; mode=block
ibs:dpid=411&dpuuid=XphHkAAAAdlS5y3-
dpm.demdex.net/
Redirect Chain
  • https://cm.everesttech.net/cm/dd?d_uuid=61416016324387329012279613710811450033
  • https://dpm.demdex.net/ibs:dpid=411&dpuuid=XphHkAAAAdlS5y3-
42 B
915 B
Image
General
Full URL
https://dpm.demdex.net/ibs:dpid=411&dpuuid=XphHkAAAAdlS5y3-
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
18.202.93.59 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-18-202-93-59.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Content-Type-Options nosniff

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

DCS
dcs-prod-irl1-v065-0f9ac8642.edge-irl1.demdex.com 5.66.0.20200408080925 1ms (+1ms)
Pragma
no-cache
Strict-Transport-Security
max-age=31536000; includeSubDomains
X-Content-Type-Options
nosniff
X-TID
fHJB4CrXTDY=
P3P
policyref="/w3c/p3p.xml", CP="NOI NID CURa ADMa DEVa PSAa PSDa OUR SAMa BUS PUR COM NAV INT"
Cache-Control
no-cache,no-store,must-revalidate,max-age=0,proxy-revalidate,no-transform,private
Connection
keep-alive
Content-Type
image/gif
Content-Length
42
Expires
Thu, 01 Jan 1970 00:00:00 GMT

Redirect headers

Date
Thu, 16 Apr 2020 11:54:56 GMT
Server
AMO-cookiemap/1.1
P3P
CP="NOI NID DEVa PSAa PSDa OUR IND PUR COM NAV INT DEM"
Location
https://dpm.demdex.net/ibs:dpid=411&dpuuid=XphHkAAAAdlS5y3-
Cache-Control
no-cache
Connection
Keep-Alive
Keep-Alive
timeout=15,max=100
Content-Length
0
truncated
/
14 KB
14 KB
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
c79dc828b12ed77c8d0dc59ef0c96a630d758bd5b19f26b9e5c1051822f0a39b

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
Origin
https://www.kohls.com

Response headers

Content-Type
application/x-font-woff
floop
api-bd.kohls.com/v1/ecs/topics/
0
298 B
Other
General
Full URL
https://api-bd.kohls.com/v1/ecs/topics/floop
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

status
204
date
Thu, 16 Apr 2020 11:54:57 GMT
akamai-request-id2
2.16.187.21:25db822
server-timing
cdn-cache; desc=MISS, edge; dur=354, origin; dur=41
access-control-allow-origin
*
fwdhst
origin-gcp-us-central1-ecs.kohls.com
json
kohls.tt.omtrdc.net/m2/kohls/mbox/
26 KB
8 KB
XHR
General
Full URL
https://kohls.tt.omtrdc.net/m2/kohls/mbox/json?mbox=target-global-mbox&mboxSession=412fcff3138d411f99e0bbe8e74dee0e&mboxPC=&mboxPage=96ded29061cc4630bee087c0e38e1940&mboxRid=265d96ee178f43b8995198e2bd50a930&mboxVersion=1.7.1&mboxCount=1&mboxTime=1587045296339&mboxHost=www.kohls.com&mboxURL=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&mboxReferrer=&browserHeight=1200&browserWidth=1600&browserTimeOffset=120&screenHeight=1200&screenWidth=1600&colorDepth=24&devicePixelRatio=1&screenOrientation=landscape&at_property=bb529821-b52b-bf89-2022-4492a94a6d05&customerLoggedStatus=false&tceIsRedesign=True&tceIsPDPRedesign=False&tceIsCNCRedesign=false&mboxMCSDID=563580C3CF50D421-4292704312B5143F&vst.trk=ww9.kohls.com&vst.trks=ww8.kohls.com&mboxMCGVID=66348673173402914051624183315367216025&mboxAAMB=RKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y&mboxMCGLH=6
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/ktag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
66.117.29.4 , United States, ASN15224 (OMNITURE, US),
Reverse DNS
Software
/
Resource Hash
cd1009616a9f41102d15b4daaddbe02dfae35727e8e728d42c59e491f9325d64

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
gzip
status
200
vary
Origin,Accept-Encoding
content-type
application/json;charset=UTF-8
access-control-allow-origin
https://www.kohls.com
cache-control
no-cache
access-control-allow-credentials
true
timing-allow-origin
*
x-request-id
265d96ee178f43b8995198e2bd50a930
0d627b0f916377baf33570265c79a
www.kohls.com/public/
17 B
732 B
XHR
General
Full URL
https://www.kohls.com/public/0d627b0f916377baf33570265c79a
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/public/0d627b0f916377baf33570265c79a
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
b493cdb3b30ea63f6a924f814dfccfcfe305dac02106f9994ce2bcb2e8ed28c4
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
x-origin-ttl
Thu, 16 Apr 2020 11:54:57 GMT
status
201
vary
Origin
content-type
application/json
access-control-allow-origin
https://www.kohls.com
access-control-allow-credentials
true
x-origin-cc
max-age=0, no-cache, no-store
strict-transport-security
max-age=15768000 ; preload
access-control-allow-headers
Content-Type
content-length
17
truncated
/
8 KB
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
d54f94df1233ab7224af68f63fe3df27584c4c01d70b2e65bcdc774ba05c6b41

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/png
truncated
/
157 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
80d54533f80e8233621f965ae0a7713928bdb4d491ed0eb5e90434550f1894cb

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/png
foundation3.js
www.kohls.com/snb/media/javascript/deploy/
229 KB
72 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/foundation3.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
86ff0cb1658b5b1e3368575112eab5ebdf2da7a786599ce73cee1ed875bd9f80
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:56 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:25 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:24 GMT, Thu, 02 Apr 2020 05:38:24 GMT, Thu, 02 Apr 2020 05:38:24 GMT
etag
"5e729ee8-39599"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
72898
expires
Fri, 17 Apr 2020 11:54:56 GMT
homepageR51.js
www.kohls.com/snb/media/javascript/deploy/
587 KB
119 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/homepageR51.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
260d6c5edacb67917465bd4692d5dc5b5d1abf3fd0e3bc9287b7a6e8d074d935
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
status
200
server-timing
cdn-cache; desc=HIT, edge; dur=1
content-length
120757
pragma
no-cache
last-modified
Wed, 25 Mar 2020 08:37:19 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Wed, 25 Mar 2020 08:37:18 GMT, Wed, 25 Mar 2020 08:37:18 GMT, Wed, 25 Mar 2020 08:37:18 GMT, Wed, 25 Mar 2020 08:37:18 GMT, Wed, 25 Mar 2020 08:37:18 GMT
etag
"5e6c7213-92d0d"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
cache-control
max-age=0, no-cache, no-store
x-origin-cc
, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store
accept-ranges
bytes
expires
Thu, 16 Apr 2020 11:54:57 GMT
SkavaOmnitureCode.js
www.kohls.com/snb/media/omniture/
10 KB
3 KB
Script
General
Full URL
https://www.kohls.com/snb/media/omniture/SkavaOmnitureCode.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
e5063c2f8d59f2fa55456040d32935d5cceac9c23a0ae8a3e3ce026f08542496
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:40:01 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:40:00 GMT, Thu, 02 Apr 2020 05:40:00 GMT, Thu, 02 Apr 2020 05:40:00 GMT, Thu, 02 Apr 2020 05:40:00 GMT
etag
"5e729f13-2615"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
2231
expires
Fri, 17 Apr 2020 11:54:57 GMT
kohls_v1_m56577569839297458.js
www.kohls.com/snb/media/javascript/deploy/
20 KB
5 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/kohls_v1_m56577569839297458.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
9a3c12072ed3b8a80321998ec90ed1915c2262b71c148b7a4ba08099d7fc0541
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:39:02 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:39:01 GMT, Thu, 02 Apr 2020 05:39:01 GMT, Thu, 02 Apr 2020 05:39:01 GMT
etag
"5e729f05-4f91"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
4780
expires
Fri, 17 Apr 2020 11:54:57 GMT
s_code.js
www.kohls.com/snb/media/javascript/deploy/
80 KB
25 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/s_code.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
790d3cb3a1372c1185ee7f4d65f27b31797f50d21ef4093d8933c7f32030797c
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:39:04 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:39:03 GMT, Thu, 02 Apr 2020 05:39:03 GMT, Thu, 02 Apr 2020 05:39:03 GMT
etag
"5e729f13-13f6e"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
25016
expires
Fri, 17 Apr 2020 11:54:57 GMT
experiences
api-bd.kohls.com/v1/ede/
14 KB
16 KB
XHR
General
Full URL
https://api-bd.kohls.com/v1/ede/experiences?cid=WebStore&pgid=SalesEvent&plids=Horizontal2%7C15
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:189::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
3846a9f636ae3295886fd5ec9771c8ff9df1384a27994038d1fe164132e3eabe

Request headers

Accept
application/json, text/javascript, */*; q=0.01
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
X-APP-API_KEY
NQeOQ7owHHPkdkMkKuH5tPpGu0AvIIOu
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/json

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
ede-bundle_params
{"channelId":"WebStore","pageId":"SalesEvent","executedInfoList":[{"placementId":"Horizontal2","departmentName":"","category":"","subCategory":"","bundleId":null,"placementRevision":"1576130484433","bundleRevision":null,"kiraRevision":"1576130484433","uuid":"02c42285-6b7a-4c70-a17f-b09977c8c446","infoMeta":{"type":"FlatRec"},"infoPayload":{"executedAlgorithmsInfo":{"executedAlgorithmInfoList":[],"contextBasedOptimized":false,"autoOptimized":false,"optimizedMetric":"None"},"executedRulesInfo":{"executedRuleInfoList":[{"ruleId":"494","ruleType":"MANUAL"},{"ruleId":"3","ruleType":"BOOST"},{"ruleId":"1","ruleType":"DO_NOT_RECOMMEND"}],"backfillDisabledFromRule":true},"isAb":false,"abTestId":"","currentAbVariationId":"","recGenerationCycleStatus":{"recGenerationCycleMask":70373039169600,"requestId":"dcffac85-b42d-47b2-a51c-46d5c1dd82db"}}}]}
status
200
content-type
application/json
access-control-allow-origin
*
fwdhst
origin-ede-gcp-central-green.kohls.com
access-control-expose-headers
EDE-AB_VAR_PARAMS, EDE-BUNDLE_PARAMS, Content-Type
akamai-request-id2
2.16.187.23:b37d1a8
server-timing
cdn-cache; desc=MISS, edge; dur=403, origin; dur=44
content-length
14726
config.json
c.go-mpulse.net/api/ Frame 3FBF
13 KB
3 KB
XHR
General
Full URL
https://c.go-mpulse.net/api/config.json?key=4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T&d=www.kohls.com&t=5290127&v=1.667.0&if=&sl=0&si=5s65g2905c6-q8vqfk&plugins=AK,ConfigOverride,Continuity,PageParams,IFrameDelay,AutoXHR,SPA,Angular,Backbone,Ember,History,RT,CrossDomain,BW,PaintTiming,NavigationTiming,ResourceTiming,Memory,CACHE_RELOAD,Errors,TPAnalytics,UserTiming,Akamai,Early,LOGN&acao=&ak.ai=225159
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:181::11a6 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
ca9c71feb0bf20f496856c30157473b2be864db426773a7d5c4728f63a77b5ee

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:57 GMT
Content-Encoding
gzip
Vary
Accept-Encoding
Content-Type
application/json
Access-Control-Allow-Origin
*
Cache-Control
private, max-age=300, stale-while-revalidate=60, stale-if-error=120
Connection
keep-alive
Timing-Allow-Origin
*
Content-Length
2732
tr_phase2_common.css
www.kohls.com/snb/media/css/
58 KB
10 KB
Stylesheet
General
Full URL
https://www.kohls.com/snb/media/css/tr_phase2_common.css
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
fc49380a326d18192e6e10dc8b95f7738e27af87961a0221523910a6b8470500
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:46 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:45 GMT, Thu, 02 Apr 2020 05:38:45 GMT, Thu, 02 Apr 2020 05:38:45 GMT
etag
"5e729f05-e69f"
strict-transport-security
max-age=15768000 ; preload
content-type
text/css
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
9641
expires
Fri, 17 Apr 2020 11:54:57 GMT
pb.module.js
www.kohls.com/snb/media/javascript/deploy/
46 KB
11 KB
Script
General
Full URL
https://www.kohls.com/snb/media/javascript/deploy/pb.module.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
0012bc12b8e4b21f101266c3e52c8a244739be6694eb451c8f77383655a0a998
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:38:22 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:38:22 GMT, Thu, 02 Apr 2020 05:38:22 GMT, Thu, 02 Apr 2020 05:38:22 GMT, Thu, 02 Apr 2020 05:38:22 GMT
etag
"5e729f05-b6c6"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
10502
expires
Fri, 17 Apr 2020 11:54:57 GMT
session.jsp
www.kohls.com/web/
295 B
2 KB
XHR
General
Full URL
https://www.kohls.com/web/session.jsp?lpf=v2
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/foundation3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
118577f6c1fa5cd509378cde5fd3323c46b7d13f4c77e8bac90d9ee7049d194e
Security Headers
Name Value
Content-Security-Policy block-all-mixed-content; frame-ancestors 'self';
Strict-Transport-Security max-age=15768000 ; preload
X-Frame-Options SAMEORIGIN

Request headers

Accept
application/json
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
X-Requested-With
XMLHttpRequest
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/json

Response headers

x-partner_guid
415330086436443ACCM4905ea769ace
x-edgeconnect-origin-mex-latency
21
date
Thu, 16 Apr 2020 11:54:57 GMT
x-sessionid
25a2772f-c03e-4572-95bf-4905ea769ace
vary
Accept-Encoding
x-edgeconnect-midmile-rtt
104
x-isvalidated
true
status
200
x-sessionid_expires
2020-04-16 07:09:57.353
server-timing
cdn-cache; desc=MISS, edge; dur=117, origin; dur=21
content-encoding
gzip
content-length
224
pragma
no-cache
correlation-id
:null::c6fa962b-5b06-4ccc-b55e-341b55d9d9bb::1587038097351::us-central1-f::cprod-green-accservice-prod-phwm::null::ACC::session::22.0.2-20200318.222029-967::null::null::null::null::null::null
x-lat
A
x-origin-ttl
Thu, 01 Jan 1970 00:00:00 GMT, Thu, 01 Jan 1970 00:00:00 GMT
x-frame-options
SAMEORIGIN
strict-transport-security
max-age=15768000 ; preload
content-type
application/json
cache-control
max-age=0, no-cache, no-store, private
x-origin-cc
,
content-security-policy
block-all-mixed-content; frame-ancestors 'self';
expires
Thu, 16 Apr 2020 11:54:57 GMT
oo_tab_icon_retina.gif
www.kohls.com/onlineopinionV5/
2 KB
2 KB
Image
General
Full URL
https://www.kohls.com/onlineopinionV5/oo_tab_icon_retina.gif
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Apache /
Resource Hash
140b59aaf164518b2c1b4a592f8b3fabd61dcdf810f00c83ab3d8c979a0f32b9
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:57 GMT
last-modified
Fri, 09 Sep 2016 20:34:29 GMT
server
Apache
x-origin-ttl
, , ,
etag
"498cea522de993e22192a73eedfd00be:1473453269"
strict-transport-security
max-age=15768000 ; preload
content-type
image/gif
status
200
cache-control
max-age=0, no-cache, no-store
x-origin-cc
, , ,
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
1942
expires
Thu, 16 Apr 2020 11:54:57 GMT
/
684dd307.akstat.io/
0
201 B
Other
General
Full URL
https://684dd307.akstat.io/
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:181::11a6 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:57 GMT
status
204
content-type
image/gif
access-control-allow-origin
https://www.kohls.com
cache-control
max-age=0, no-cache, no-store
access-control-allow-credentials
true
timing-allow-origin
*
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:54:57 GMT
0d627b0f916377baf33570265c79a
www.kohls.com/public/
18 B
963 B
XHR
General
Full URL
https://www.kohls.com/public/0d627b0f916377baf33570265c79a
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
fcd6acab1a311e89ae1aef024707e986871eff4071c584de3e93970c5fc4a23d
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
x-origin-ttl
Thu, 16 Apr 2020 11:54:57 GMT
status
201
vary
Origin
content-type
application/json
access-control-allow-origin
https://www.kohls.com
access-control-allow-credentials
true
x-origin-cc
max-age=0, no-cache, no-store
strict-transport-security
max-age=15768000 ; preload
access-control-allow-headers
Content-Type
content-length
18
truncated
/
3 KB
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
3ac5ca978196ded2a4cf29e2cc940a0b83809ae6f577bf22197aa60c419b45fa

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml
truncated
/
311 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
1b9677254b31d53bea24c7bf91d321e1c17c975a0d38544a141428005169364e

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
382 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
577460aebf40d39c280ede635d5eecd90fb0d356c7cfad49e915bea5d99b4e5f

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
455 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
019a576b7eccf17e9314ace09cd88544ef0c2131682d7bb8ae033a0f96ccd9dc

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
400 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
12a00ce90d3f47313490ff265720a5277a4f2db42b7cca9a830ea63d3538e241

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
432 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
26e3599cccafcf6c3766e1876c83b2ffef6d960399ef07539eb4bb9c72627ffa

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
424 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
8ee94e76927614a59084b18f322ac6257f3ec5692d13426436a3e48a12db9de0

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
452 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
350a160781abcfed2b855db11228ffa4b0e71a19c2e1212aa363336dff19d9a8

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
324 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
38dff88a20261df3e510cf1bef67e1d9c68398158137cef3b9c06505d12033ae

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
382 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
784987f702c79e593b13b91fc91b303cb44af611c6537ef988b415c1f376e8ec

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
407 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
4415770ecc7b85b58f5d595f4c62c91d6eee2d7e0f51efed0c8feb214207d6cf

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
truncated
/
457 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
644fe710e6435028a30263c2b907c700f61934afaff7a8c539c0e4337f79eccb

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/svg+xml;charset=US-ASCII
floop
api-bd.kohls.com/v1/ecs/topics/
0
297 B
Other
General
Full URL
https://api-bd.kohls.com/v1/ecs/topics/floop
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

status
204
date
Thu, 16 Apr 2020 11:54:57 GMT
akamai-request-id2
2.16.187.21:25dc098
server-timing
cdn-cache; desc=MISS, edge; dur=102, origin; dur=20
access-control-allow-origin
*
fwdhst
origin-gcp-us-central1-ecs.kohls.com
323407_Gray_Black
media.kohlsimg.com/is/image/kohls/
4 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/323407_Gray_Black?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
cab184711fe7d7cd2f4550b0d170ce8f6369c7365056c3d63a536c73a5897a40

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"21a92aef04f7af355b7a1dcda42a1969"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4524
expires
Thu, 23 Apr 2020 11:54:57 GMT
5172_Stonewash
media.kohlsimg.com/is/image/kohls/
7 KB
8 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/5172_Stonewash?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
468ca709c7e830082dc93ad909b099855f2b8509ed029ab8c714a3fcf74e89c6

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"dbbc0d6051feb228daf0154b11891570"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7510
expires
Thu, 23 Apr 2020 11:54:57 GMT
3264673_Light_Wash
media.kohlsimg.com/is/image/kohls/
7 KB
7 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3264673_Light_Wash?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
04421a091a17fc178a1e77e448d2fd739c2a900771cc1a8d287a235120a03abc

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"79a3498f8696f57599f315e42a01188a"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7428
expires
Thu, 23 Apr 2020 11:54:57 GMT
3641200_Dress_Blues
media.kohlsimg.com/is/image/kohls/
10 KB
10 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3641200_Dress_Blues?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
ee0254288c4757d0ac20592bc109df50ffbd1ef97c3153f2f29fc6001e126254

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Server
etag
"98ea1cd9e747c6d6b8aaf99ea521dfe4"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=900
content-length
10236
expires
Thu, 16 Apr 2020 12:09:58 GMT
3979888_New_White
media.kohlsimg.com/is/image/kohls/
5 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3979888_New_White?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
a6be8e64ddd860e244b623d5175b66249d7cdfed7c9806ac8bff483e17372835

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"541591ec80ad985422baed8b6ab7d6c4"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4980
expires
Thu, 23 Apr 2020 11:54:57 GMT
2966846_British_Khaki
media.kohlsimg.com/is/image/kohls/
4 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/2966846_British_Khaki?wid=300&hei=300&op_sharpen=1
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
fd5336cc3ae940c652d24bdef79071bdef9660d779e80779fa0991208604af70

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"6ed4d0669628ce8fbc0510f64584dbfe"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4432
expires
Thu, 23 Apr 2020 11:54:57 GMT
static_pb_drawerV2.js
www.kohls.com/snb/media/R51/javascript/tmpl/tr/
80 KB
10 KB
XHR
General
Full URL
https://www.kohls.com/snb/media/R51/javascript/tmpl/tr/static_pb_drawerV2.js
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
4c87707ce17127fc5385771fbde9f6c94bccbd208b0de2d0edfc2939601f6af1
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Accept
text/html, */*; q=0.01
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
X-Requested-With
XMLHttpRequest
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
br
last-modified
Wed, 01 Apr 2020 05:37:59 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Thu, 02 Apr 2020 05:37:59 GMT, Thu, 02 Apr 2020 05:37:59 GMT, Thu, 02 Apr 2020 05:37:59 GMT, Thu, 02 Apr 2020 05:37:59 GMT
etag
"5e729f06-14094"
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
status
200
cache-control
max-age=86400
x-origin-cc
, max-age=86400, max-age=86400, max-age=86400, max-age=86400
server-timing
cdn-cache; desc=HIT, edge; dur=1
accept-ranges
bytes
content-length
10002
expires
Fri, 17 Apr 2020 11:54:57 GMT
OmnitureAkamai.jsp
www.kohls.com/wcs-internal/
5 KB
2 KB
Script
General
Full URL
https://www.kohls.com/wcs-internal/OmnitureAkamai.jsp
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
b9100a86e7eb0f3f86e40d25e8dd057a28793bbb984e88438fd3e7df05eaaa49
Security Headers
Name Value
Content-Security-Policy block-all-mixed-content; frame-ancestors 'self';
Strict-Transport-Security max-age=15768000 ; preload
X-Frame-Options SAMEORIGIN

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
gzip
vary
Accept-Encoding
status
200
server-timing
cdn-cache; desc=MISS, edge; dur=123, origin; dur=574
content-length
1602
host_service
FutureTenseContentServer:11.1.1.8.0
last-modified
Thu, 16 Apr 2020 11:54:58 GMT
x-origin-ttl
,
x-frame-options
SAMEORIGIN
strict-transport-security
max-age=15768000 ; preload
content-type
application/javascript
pragma
no-cache
cache-control
max-age=0, no-cache, no-store, private
x-origin-cc
no-store, no-store
content-security-policy
block-all-mixed-content; frame-ancestors 'self';
device_type
Touch
expires
Thu, 16 Apr 2020 11:54:58 GMT
gh-test-shoppingcart
media.kohlsimg.com/is/image/kohls/
738 B
903 B
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/gh-test-shoppingcart?scl=1&fmt=png-alpha
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/foundation3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
2d3c362dea9616624060e41064907033f41959ddf6bda37f26c87e6047fcd20a

Request headers

Referer
https://www.kohls.com/snb/media/css/homepage.css
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Server
etag
"f4d95f99ca6627c0da518f4776dd6700"
status
200
content-type
image/png
access-control-allow-origin
*
cache-control
private, max-age=539
content-length
738
expires
Thu, 16 Apr 2020 12:03:56 GMT
pixel_33bf7c8
www.kohls.com/akam/11/
0
665 B
XHR
General
Full URL
https://www.kohls.com/akam/11/pixel_33bf7c8
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:57 GMT
x-origin-ttl
strict-transport-security
max-age=15768000 ; preload
content-type
text/html
status
200
cache-control
max-age=0, no-cache, no-store, private
x-origin-cc
server-timing
cdn-cache; desc=HIT, edge; dur=3
content-length
0
expires
Thu, 16 Apr 2020 11:54:57 GMT
outfits
widget-api.stylitics.com/api/
25 KB
4 KB
XHR
General
Full URL
https://widget-api.stylitics.com/api/outfits?username=kohls&total=4&with_item_coords=true&tags=mensdept_1_200304
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
49f420f3f141747489346fd7fcffaa6967e1f6d8a3ad3e3db1d7225d9dc7e6f3

Request headers

Accept
application/json, text/javascript, */*; q=0.01
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
gzip
cf-cache-status
HIT
age
1775
status
200
cf-request-id
022470a9920000bf19d021d200000001
server
cloudflare
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, PUT, PATCH, POST, DELETE, OPTIONS
content-type
application/json; charset=utf-8
access-control-allow-origin
*
expires
Thu, 16 Apr 2020 12:24:57 GMT
cache-control
public, max-age=1800
cf-ray
584db6ef5ba1bf19-FRA
access-control-allow-headers
Authorization, Content-Type
x-proxy-cache
BYPASS
outfits
widget-api.stylitics.com/api/
24 KB
4 KB
XHR
General
Full URL
https://widget-api.stylitics.com/api/outfits?username=kohls&total=4&with_item_coords=true&tags=mensdept_2_200304
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6812:15a0 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
cabfc1108fae6131503246f05870e0b2c820b3d5ce43cad41aa662d8e511e3ee

Request headers

Accept
application/json, text/javascript, */*; q=0.01
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
content-encoding
gzip
cf-cache-status
HIT
age
1775
status
200
cf-request-id
022470a9920000bf19d021e200000001
server
cloudflare
expect-ct
max-age=604800, report-uri="https://report-uri.cloudflare.com/cdn-cgi/beacon/expect-ct"
vary
Accept-Encoding
access-control-allow-methods
GET, PUT, PATCH, POST, DELETE, OPTIONS
content-type
application/json; charset=utf-8
access-control-allow-origin
*
expires
Thu, 16 Apr 2020 12:24:57 GMT
cache-control
public, max-age=1800
cf-ray
584db6ef5ba3bf19-FRA
access-control-allow-headers
Authorization, Content-Type
x-proxy-cache
BYPASS
truncated
/
14 KB
14 KB
Font
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
fb4491ac8ba8263bc3648569c13e5c3db6559373d119c760b3bdf7816f352196

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
Origin
https://www.kohls.com

Response headers

Content-Type
application/x-font-woff
323407_Gray_Black
media.kohlsimg.com/is/image/kohls/
4 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/323407_Gray_Black?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
cab184711fe7d7cd2f4550b0d170ce8f6369c7365056c3d63a536c73a5897a40

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"21a92aef04f7af355b7a1dcda42a1969"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4524
expires
Thu, 23 Apr 2020 11:54:57 GMT
5172_Stonewash
media.kohlsimg.com/is/image/kohls/
7 KB
8 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/5172_Stonewash?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
468ca709c7e830082dc93ad909b099855f2b8509ed029ab8c714a3fcf74e89c6

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"dbbc0d6051feb228daf0154b11891570"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7510
expires
Thu, 23 Apr 2020 11:54:57 GMT
3264673_Light_Wash
media.kohlsimg.com/is/image/kohls/
7 KB
7 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3264673_Light_Wash?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
04421a091a17fc178a1e77e448d2fd739c2a900771cc1a8d287a235120a03abc

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"79a3498f8696f57599f315e42a01188a"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7428
expires
Thu, 23 Apr 2020 11:54:57 GMT
3979888_New_White
media.kohlsimg.com/is/image/kohls/
5 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3979888_New_White?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
a6be8e64ddd860e244b623d5175b66249d7cdfed7c9806ac8bff483e17372835

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:57 GMT
server
Akamai Image Manager
etag
"541591ec80ad985422baed8b6ab7d6c4"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4980
expires
Thu, 23 Apr 2020 11:54:57 GMT
2966846_British_Khaki
media.kohlsimg.com/is/image/kohls/
4 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/2966846_British_Khaki?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
fd5336cc3ae940c652d24bdef79071bdef9660d779e80779fa0991208604af70

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Manager
etag
"6ed4d0669628ce8fbc0510f64584dbfe"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4432
expires
Thu, 23 Apr 2020 11:54:58 GMT
323407_Gray_Black
media.kohlsimg.com/is/image/kohls/
4 KB
5 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/323407_Gray_Black?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
cab184711fe7d7cd2f4550b0d170ce8f6369c7365056c3d63a536c73a5897a40

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Manager
etag
"21a92aef04f7af355b7a1dcda42a1969"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
4524
expires
Thu, 23 Apr 2020 11:54:58 GMT
5172_Stonewash
media.kohlsimg.com/is/image/kohls/
7 KB
8 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/5172_Stonewash?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
468ca709c7e830082dc93ad909b099855f2b8509ed029ab8c714a3fcf74e89c6

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Manager
etag
"dbbc0d6051feb228daf0154b11891570"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7510
expires
Thu, 23 Apr 2020 11:54:58 GMT
3264673_Light_Wash
media.kohlsimg.com/is/image/kohls/
7 KB
7 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3264673_Light_Wash?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Manager /
Resource Hash
04421a091a17fc178a1e77e448d2fd739c2a900771cc1a8d287a235120a03abc

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Manager
etag
"79a3498f8696f57599f315e42a01188a"
status
200
content-type
image/webp
access-control-allow-origin
*
cache-control
private, no-transform, max-age=604800
content-length
7428
expires
Thu, 23 Apr 2020 11:54:58 GMT
3641200_Dress_Blues
media.kohlsimg.com/is/image/kohls/
10 KB
10 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3641200_Dress_Blues?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
ee0254288c4757d0ac20592bc109df50ffbd1ef97c3153f2f29fc6001e126254

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Server
etag
"98ea1cd9e747c6d6b8aaf99ea521dfe4"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=900
content-length
10236
expires
Thu, 16 Apr 2020 12:09:58 GMT
3641200_Dress_Blues
media.kohlsimg.com/is/image/kohls/
10 KB
10 KB
Image
General
Full URL
https://media.kohlsimg.com/is/image/kohls/3641200_Dress_Blues?wid=300&hei=300&op_sharpen=1
Requested by
Host: api-bd.kohls.com
URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Image Server /
Resource Hash
ee0254288c4757d0ac20592bc109df50ffbd1ef97c3153f2f29fc6001e126254

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
server
Akamai Image Server
etag
"98ea1cd9e747c6d6b8aaf99ea521dfe4"
status
200
content-type
image/jpeg
access-control-allow-origin
*
cache-control
private, max-age=900
content-length
10236
expires
Thu, 16 Apr 2020 12:09:58 GMT
nv_bootstrap.js
mon1.kohls.com/nv/kohls/
1 KB
917 B
Script
General
Full URL
https://mon1.kohls.com/nv/kohls/nv_bootstrap.js?v=REL20170123
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
9a118dcfc9dcb4b08cb5974926483ca437750f2c9becf6db10128accd57b198b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
gzip
etag
"0169249613"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
public, max-age=3600
content-length
624
expires
Thu, 16 Apr 2020 12:54:58 GMT
oo_desktop.js
www.kohls.com/onlineopinionV5/
122 KB
17 KB
Script
General
Full URL
https://www.kohls.com/onlineopinionV5/oo_desktop.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Akamai Resource Optimizer /
Resource Hash
6d257ae7d283ba55180a09d9933ff94e8069ceaac0ad76c5a01bf2d4fd170665
Security Headers
Name Value
Strict-Transport-Security max-age=15768000 ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
br
status
200
server-timing
cdn-cache; desc=HIT, edge; dur=1
content-length
17213
pragma
no-cache
last-modified
Fri, 10 Apr 2020 21:05:02 GMT
server
Akamai Resource Optimizer
x-origin-ttl
, Fri, 10 Apr 2020 21:05:02 GMT, Fri, 10 Apr 2020 21:05:02 GMT, Fri, 10 Apr 2020 21:05:02 GMT, Fri, 10 Apr 2020 21:05:02 GMT
etag
"3e414249afa4e3e7ce2654942161f33c:1579898640"
strict-transport-security
max-age=15768000 ; preload
content-type
application/x-javascript
cache-control
max-age=0, no-cache, no-store
x-origin-cc
, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store, max-age=0, no-cache, no-store
accept-ranges
bytes
expires
Thu, 16 Apr 2020 11:54:58 GMT
z1m.js
cdn.zineone.com/apps/latest/
80 KB
21 KB
Script
General
Full URL
https://cdn.zineone.com/apps/latest/z1m.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
13.225.73.98 Seattle, United States, ASN16509 (AMAZON-02, US),
Reverse DNS
server-13-225-73-98.fra2.r.cloudfront.net
Software
AmazonS3 /
Resource Hash
6102b6f9b0a2f3d5b128c566862198ada13900b20be86edd070d9744329c14f1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 09 Apr 2020 12:44:54 GMT
Content-Encoding
gzip
Last-Modified
Tue, 04 Feb 2020 07:05:50 GMT
Server
AmazonS3
Age
601805
ETag
"76f3ffb5d22c60d6015df0332ad5f3f4"
X-Cache
Hit from cloudfront
Content-Type
application/javascript
Via
1.1 91ba7c34719cd9c69e0357c149b94b90.cloudfront.net (CloudFront)
Connection
keep-alive
X-Amz-Cf-Pop
FRA2-C2
Accept-Ranges
bytes
Content-Length
21357
X-Amz-Cf-Id
5TCC1UJ70CPWn9DgahVL-DBUxcfxUOTV6ifsqeIkbm6QOyLnl9ze4w==
br-trk-5117.js
cdns.brsrvr.com/v1/
9 KB
4 KB
Script
General
Full URL
https://cdns.brsrvr.com/v1/br-trk-5117.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
54.243.79.244 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-54-243-79-244.compute-1.amazonaws.com
Software
nginx/1.4.6 (Ubuntu) /
Resource Hash
3fee8ee9cdc7566bfdf93c8158870816876ef54b93e58b205cb7f52f1d9ed064

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Thu, 22 Jun 2017 09:40:40 GMT
Server
nginx/1.4.6 (Ubuntu)
Connection
keep-alive
Content-Length
3606
Content-Type
application/x-javascript
tag.js
s.btstatic.com/
34 KB
12 KB
Script
General
Full URL
https://s.btstatic.com/tag.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
4e948638a694a5d3ec13f7f13f254788d5501905e246d99779e825aff3fbb725

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:58 GMT
Content-Encoding
gzip
Last-Modified
Thu, 02 Apr 2020 15:29:30 GMT
Server
nginx
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
public, max-age=14400
Connection
keep-alive
Accept-Ranges
bytes
Content-Type
application/javascript
Content-Length
12429
s77102725942700
ww8.kohls.com/b/ss/kohlscomprod/10/JS-2.0.0/
8 KB
8 KB
Script
General
Full URL
https://ww8.kohls.com/b/ss/kohlscomprod/10/JS-2.0.0/s77102725942700?AQB=1&ndh=1&pf=1&callback=s_c_il[1].doPostbacks&et=1&t=16%2F3%2F2020%2013%3A54%3A58%204%20-120&d.&nsid=0&jsonv=1&.d&sdid=563580C3CF50D421-4292704312B5143F&mid=66348673173402914051624183315367216025&aamlh=6&ce=UTF-8&ns=kohls&pageName=mens&g=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c.&k.&pageDomain=www.kohls.com&.k&mcid.&version=4.3.0&icsmcvid=-false&mcidcto=-false&aidcto=-false&.mcid&.c&cc=USD&pageType=sale%20event%20landing&events=event1&products=%3Bproductmerch1&aamb=RKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y&tnt=521474%3A0%3A0%2C523998%3A0%3A0%2C524186%3A1%3A0%2C524571%3A1%3A0%2C524251%3A1%3A0%2C523996%3A0%3A0%2C522367%3A1%3A0%2C525023%3A1%3A0%2C519833%3A1%3A0%2C&c1=no%20taxonomy&c2=no%20taxonomy&c3=no%20taxonomy&v3=browse&c4=sale%20event%20landing&c5=non-search&c7=no%20taxonomy&v8=non-search&c16=browse&c17=kohls%20not%20logged%20in%7Cloyalty%20not%20logged%20in&v17=kohls%20not%20logged%20in%7Cloyalty%20not%20logged%20in&c18=thu%7Cweekday%7C06%3A00%20am&v18=thu%7Cweekday%7C06%3A00%20am&c22=2020-04-16&v22=desktop&v23=browse&v24=browse&v25=no%20taxonomy&v26=no%20taxonomy&v27=no%20taxonomy&v28=no%20taxonomy&c39=browse&c40=browse&v40=cloud17&c41=browse&c42=browse&v42=no%20cart&c50=D%3Ds_tempsess&c53=mens&c64=VisitorAPI%20Present&v68=mens&v71=klsbrwcki%3A&s=1600x1200&c=24&j=1.6&v=N&k=Y&bw=1600&bh=1200&AQE=1
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/s_code.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
15.188.31.119 Paris, France, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-15-188-31-119.eu-west-3.compute.amazonaws.com
Software
jag /
Resource Hash
2c01b9dc6da69c606ae678e0a6f23a5b18b83634e74d4d1b2580229ed0038570
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 1; mode=block

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

x-aam-tid
l48bRYzqT/o=
date
Thu, 16 Apr 2020 11:54:58 GMT
x-content-type-options
nosniff
x-c
master-1221.I0e927e.M0-376
p3p
CP="This is not a P3P policy"
status
200
content-length
8307
x-xss-protection
1; mode=block
dcs
dcs-prod-irl1-v065-0f1664ab8.edge-irl1.demdex.com 5.66.0.20200408080925 6ms (+1ms)
pragma
no-cache
last-modified
Fri, 17 Apr 2020 11:54:58 GMT
server
jag
xserver
anedge-65fb49f79-p2gpk
etag
3408138364293316608-4615915286357777174
vary
*
content-type
application/x-javascript;charset=utf-8
access-control-allow-origin
*
cache-control
no-cache, no-store, max-age=0, no-transform, private
expires
Wed, 15 Apr 2020 11:54:58 GMT
cav_nv.js
mon1.kohls.com/nv/kohls/ Frame 2B1C
698 KB
180 KB
Script
General
Full URL
https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Requested by
Host: mon1.kohls.com
URL: https://mon1.kohls.com/nv/kohls/nv_bootstrap.js?v=REL20170123
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
28d5c7d2279d76c0643863a7d3926cb5b831c26538611f92a105cc6533cd531a

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
gzip
etag
"0192755084"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
public, max-age=3600
content-length
183985
expires
Thu, 16 Apr 2020 12:54:58 GMT
tag
s.thebrighttag.com/
24 KB
7 KB
Script
General
Full URL
https://s.thebrighttag.com/tag?site=4DPyaxM&H=3hvfz86
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
fa8c7da9bcc47f46ad77f6b49f170a18b48aa294efddcf314175ff673d13ce44

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:54:58 GMT
Content-Encoding
gzip
Server
nginx
ETag
69a43336d9195dd57a868b781a76b868
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Transfer-Encoding
chunked
Connection
keep-alive
Content-Type
text/javascript
X-BT-RequestId
18d207f0-7fd9-11ea-8693-0000ac150b35
Expires
Thu, 01 Jan 1970 00:00:00 GMT
config.js
mon1.kohls.com/nv/kohls/dotcom/
46 KB
12 KB
Script
General
Full URL
https://mon1.kohls.com/nv/kohls/dotcom/config.js?v=REL20170123
Requested by
Host: mon1.kohls.com
URL: https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
6dfa271e269c6f6693aee52b71b1e808077d6f9c0cb8389c8e4a2181ec595f2d

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
gzip
etag
"0195452992"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
public, max-age=3600
content-length
12331
expires
Thu, 16 Apr 2020 12:54:58 GMT
af335040-8f9c-4c31-d0ce-378db05b836d
apps.zineone.com/c3/api/v1/connect/
1 MB
154 KB
XHR
General
Full URL
https://apps.zineone.com/c3/api/v1/connect/af335040-8f9c-4c31-d0ce-378db05b836d?deviceId=af335040-8f9c-4c31-d0ce-378db05b836d&os=html5&devicetype=desktop&loadConfig
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
3.219.149.238 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-3-219-149-238.compute-1.amazonaws.com
Software
/
Resource Hash
c1f73210ecf0cdd737564cf635941ef61334767087d720637de6b3ad1ef46c10

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
apikey
apps@2b6b5a02-b3e0-4a05-9e3b-d727afbfa357
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

status
200
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
access-control-allow-origin
*
access-control-allow-headers
apikey
vary
Accept-Encoding, User-Agent
content-type
text/plain;charset=utf-8
test_rum_nv
mon1.kohls.com/ Frame 2B1C
277 B
722 B
Script
General
Full URL
https://mon1.kohls.com/test_rum_nv?s=000000000000000000000&p=1&op=timing&pi=1&CavStore=-1&pid=10&d=1|0|-1|1|482|-1|7|13|114|368|-2|1195|1|1|1319|1116|10|1116|0|93||https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men|www.kohls.com|CavSF%3DcavnvComplete%2C%2C%2C%2C%2C%2C%2C%2C%2C%2C%2C1%2C%2C%2C%3B%20_abck%3D674F62AA215E6155E524B7E59F6C3D51~-1~YAAQFbsQAgPyqYFxAQAAOZDXggNvA6KHnYN9yihbDIhnE9IXYT%2F%2F1ezcVXpeGEeEsfgQgw%2FG2JJdo9i4ilACjRv9%2FACZ%2BxIawKgRUnebfqWH%2BLlDClTlRyQgR8%2FUG0s%2BadWfwnAbQFzGJD4iBBERVqJCMmYQBEooJudleegWGskEzHEdNi3yMSu4AIAjANLHta%2FiZFCxHPxT8T3qtc8a3MOKibyvn1eikwzwGYJ5QFaME3alYH1EbR7HNUcTpr7%2FamzTw20Q43CYig2D16SkVEGB%2BgZFJGtT4i99OxhvdTJNyS6G0S0zA74%3D~-1~-1~-1%3B%20akacd_www-kohls-com-mosaic-p2%3D2177452799~rv%3D25~id%3D4ae443008585b0d45ddcaa565d2d5ac0%3B%20styliticsWidgetSession%3D67f19584-98c2-4efa-8558-f7baf3042d20%3B%20akavpau_www%3D1587038398~id%3D7c521786540a75643409734244ff7bf0%3B%20s_stv%3Dnon-search%3B%20productnum%3D1%3B%20gpv_v9%3Dmens%3B%20s_cc%3Dtrue%3B%20AAMC_kohls_0%3DREGION%25PIPE%256%3B%20aam_uuid%3D61416016324387329012279613710811450033|0|114|-1|24|24|Mac%20OS|Mozilla%2F5.0%20(Macintosh%3B%20Intel%20Mac%20OS%20X%2010_14_5)%20AppleWebKit%2F537.36%20(KHTML%2C%20like%20Gecko)%20Chrome%2F74.0.3729.169%20Safari%2F537.36|en-US|%5Bobject%20PluginArray%5D|Mozilla|0|PC|74.0|10.14.5|-1|1|0|0|%7B-1%7D|1053|-2|13865|818060|0|0|0&lts=-1&d2=-1|-1|-1|1|100|0
Requested by
Host: mon1.kohls.com
URL: https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
2f1b33de12225970169889477e5f738ac9750b637edb02323d632a22c0df6098

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
access-control-request-headers
*
status
200
access-control-max-age
300
access-control-allow-methods
POST, PUT, DELETE, GET, OPTIONS
content-type
text/plain
access-control-allow-origin
*
cache-control
max-age=0, no-cache, no-store
access-control-allow-credentials
true
timing-allow-origin
*
access-control-allow-headers
Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding
content-length
0000000277
expires
Thu, 16 Apr 2020 11:54:59 GMT
js
www.googletagmanager.com/gtag/
79 KB
29 KB
Script
General
Full URL
https://www.googletagmanager.com/gtag/js?id=DC-2195488
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2008 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
Google Tag Manager /
Resource Hash
84b2426a6096b022d9eddbc7b9318f98d10c6b51bfa99bd1aa3b605dd2c2264c
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
br
vary
Accept-Encoding
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
30043
x-xss-protection
0
last-modified
Thu, 16 Apr 2020 09:00:00 GMT
server
Google Tag Manager
strict-transport-security
max-age=31536000; includeSubDomains
content-type
application/javascript; charset=UTF-8
access-control-allow-origin
*
cache-control
private, max-age=900
access-control-allow-credentials
true
access-control-allow-headers
Cache-Control
expires
Thu, 16 Apr 2020 11:54:59 GMT
js
www.googletagmanager.com/gtag/
79 KB
29 KB
Script
General
Full URL
https://www.googletagmanager.com/gtag/js?id=DC-8632166
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2008 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
Google Tag Manager /
Resource Hash
91bd671d9ef32c444bc363d40e7d072a317e899b9c662ad1dd837d1d2277ed3a
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
br
vary
Accept-Encoding
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
30045
x-xss-protection
0
last-modified
Thu, 16 Apr 2020 09:00:00 GMT
server
Google Tag Manager
strict-transport-security
max-age=31536000; includeSubDomains
content-type
application/javascript; charset=UTF-8
access-control-allow-origin
*
cache-control
private, max-age=900
access-control-allow-credentials
true
access-control-allow-headers
Cache-Control
expires
Thu, 16 Apr 2020 11:54:59 GMT
745abcebb4573a60dc1dc7f5d132864d1c23e738.js
s.btstatic.com/lib/
238 B
527 B
Script
General
Full URL
https://s.btstatic.com/lib/745abcebb4573a60dc1dc7f5d132864d1c23e738.js?v=2
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
a400fe551ce1b5f459f1808f5c93714ea243d7e4b10dc962936b21635f34f8b0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Fri, 23 Aug 2019 22:16:24 GMT
Server
nginx
ETag
"0b24c206dd04d75aece3515ed8c93413"
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
max-age=31536000
Connection
keep-alive
Content-Type
application/javascript; charset=utf-8
Content-Length
165
d29d89a5-b3bb-441a-ac2a-c8e158d57a2f
https://www.kohls.com/ Frame 2B1C
17 KB
0
Other
General
Full URL
blob:https://www.kohls.com/d29d89a5-b3bb-441a-ac2a-c8e158d57a2f
Requested by
Host: mon1.kohls.com
URL: https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Protocol
BLOB
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
af9fa9f0773266d650cff80076d18e7b3b6b170e807badd366cfef901e8e9235

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Length
17284
conversion_async.js
www.googleadservices.com/pagead/
28 KB
10 KB
Script
General
Full URL
https://www.googleadservices.com/pagead/conversion_async.js
Requested by
Host: www.googletagmanager.com
URL: https://www.googletagmanager.com/gtag/js?id=DC-2195488
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.23.98 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
mil04s23-in-f98.1e100.net
Software
cafe /
Resource Hash
1e57ef80de847edfe190c3cc278688675dd98bd4f419f189e317a6be83394d05
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
x-content-type-options
nosniff
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
content-disposition
attachment; filename="f.txt"
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
10625
x-xss-protection
0
server
cafe
etag
11196337773217644603
vary
Accept-Encoding
content-type
text/javascript; charset=UTF-8
cache-control
private, max-age=3600
timing-allow-origin
*
expires
Thu, 16 Apr 2020 11:54:59 GMT
c8c3096e256a91eaf614d7c9433aad0eb1322fcd.js
s.btstatic.com/lib/
617 B
764 B
Script
General
Full URL
https://s.btstatic.com/lib/c8c3096e256a91eaf614d7c9433aad0eb1322fcd.js?v=2
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
935c78ed2a8b54d1e45405f33a81d7122820c14a965750229f9be8e5d48d3376

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Fri, 22 Mar 2019 17:16:07 GMT
Server
nginx
ETag
"5132eebc44531d56f078eb41d9c05967"
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
max-age=31536000
Connection
keep-alive
Content-Type
application/javascript; charset=utf-8
Content-Length
402
/
googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/
2 KB
1 KB
Script
General
Full URL
https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/?random=1587038099162&cv=9&fst=1587038099162&num=1&bg=ffffff&guid=ON&resp=GooglemKTybQhCsO&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&ig=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&hn=www.googleadservices.com&async=1&rfmt=3&fmt=4
Requested by
Host: www.googleadservices.com
URL: https://www.googleadservices.com/pagead/conversion_async.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
3315380cdc8eead5f55ed86692a00a8ddbff01e376ad6fd81b94ce6264924219
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
cache-control
no-cache, must-revalidate
content-disposition
attachment; filename="f.txt"
content-type
text/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
1075
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
googleads.g.doubleclick.net/pagead/viewthroughconversion/1018012790/
2 KB
1 KB
Script
General
Full URL
https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1018012790/?random=1587038099164&cv=9&fst=1587038099164&num=1&bg=ffffff&guid=ON&resp=GooglemKTybQhCsO&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&ig=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&hn=www.googleadservices.com&async=1&rfmt=3&fmt=4
Requested by
Host: www.googleadservices.com
URL: https://www.googleadservices.com/pagead/conversion_async.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
b6d4e60de6a30f1465bb48b41857a4456116a88750f1fcba45efb5f3e53cb409
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
cache-control
no-cache, must-revalidate
content-disposition
attachment; filename="f.txt"
content-type
text/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
1078
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
bab4054f319c98a48fb79fa3356393230b835099.js
s.btstatic.com/lib/
817 B
806 B
Script
General
Full URL
https://s.btstatic.com/lib/bab4054f319c98a48fb79fa3356393230b835099.js?v=2
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
5683d721043542df3d73195d4449d2842042193e896c63aba9552de00b5ed207

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Fri, 22 Mar 2019 17:15:38 GMT
Server
nginx
ETag
"f64c91661627cc152221c44e831c53b6"
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
max-age=31536000
Connection
keep-alive
Content-Type
application/javascript; charset=utf-8
Content-Length
444
/
www.google.com/pagead/1p-user-list/1071871169/
42 B
119 B
Image
General
Full URL
https://www.google.com/pagead/1p-user-list/1071871169/?random=1587038099162&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=620034491&resp=GooglemKTybQhCsO&rmt_tld=0&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:81a::2004 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.google.de/pagead/1p-user-list/1071871169/
42 B
110 B
Image
General
Full URL
https://www.google.de/pagead/1p-user-list/1071871169/?random=1587038099162&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=620034491&resp=GooglemKTybQhCsO&rmt_tld=1&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
collect.js
6249496.collect.igodigital.com/
9 KB
2 KB
Script
General
Full URL
https://6249496.collect.igodigital.com/collect.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.201.234.122 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-201-234-122.compute-1.amazonaws.com
Software
/
Resource Hash
4a63ccc41b6e27c88fca243efd1030d401bc83bd3ae22aaff2b0d1354ba25703

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
200
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
last-modified
Thu, 16 Apr 2020 07:24:21 GMT
vary
Accept-Encoding
content-type
application/javascript
/
www.google.com/pagead/1p-user-list/1018012790/
42 B
119 B
Image
General
Full URL
https://www.google.com/pagead/1p-user-list/1018012790/?random=1587038099164&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=4239166619&resp=GooglemKTybQhCsO&rmt_tld=0&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:81a::2004 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.google.de/pagead/1p-user-list/1018012790/
42 B
110 B
Image
General
Full URL
https://www.google.de/pagead/1p-user-list/1018012790/?random=1587038099164&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=4239166619&resp=GooglemKTybQhCsO&rmt_tld=1&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
test_rum_nv
mon1.kohls.com/ Frame 2B1C
1 B
461 B
XHR
General
Full URL
https://mon1.kohls.com/test_rum_nv?s=000852568154270864264&p=1&op=pagedump&pi=1&CavStore=-1&pid=10&d=10|2|0&lts=198503991&nvcounter=1
Requested by
Host: mon1.kohls.com
URL: https://mon1.kohls.com/nv/kohls/cav_nv.js?v=REL20170123
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:6c00:18b::eaf , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
access-control-request-headers
*
status
200
access-control-max-age
300
access-control-allow-methods
POST, PUT, DELETE, GET, OPTIONS
content-type
text/plain
access-control-allow-origin
https://www.kohls.com
cache-control
max-age=0, no-cache, no-store
access-control-allow-credentials
true
timing-allow-origin
*
access-control-allow-headers
Origin, X-Requested-With, Content-Type, Accept, Authorization, Content-Encoding
content-length
0000000001
expires
Thu, 16 Apr 2020 11:54:59 GMT
d3ba78441d586dd7df57c95bad6ca4771a9d3907.js
s.btstatic.com/lib/
444 B
711 B
Script
General
Full URL
https://s.btstatic.com/lib/d3ba78441d586dd7df57c95bad6ca4771a9d3907.js?v=2
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
1c45f1dbc5afc1034ac9f4322cc6a66f4db7442f88be435d05897289ad475bd1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

x-amz-server-side-encryption
AES256
Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Thu, 10 Oct 2019 22:08:16 GMT
Server
nginx
ETag
"65b8cb09dc193bdece1c4f60f0729362"
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
max-age=31536000
Connection
keep-alive
Content-Type
application/javascript; charset=utf-8
Content-Length
311
bat.js
bat.bing.com/
25 KB
8 KB
Script
General
Full URL
https://bat.bing.com/bat.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2620:1ec:c11::200 , United States, ASN8068 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
/
Resource Hash
079e218ad07f42523479d475b4973a6e386ba95209ee964c04c1a6eb6186bda3

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:58 GMT
content-encoding
gzip
last-modified
Mon, 13 Apr 2020 22:01:50 GMT
x-msedge-ref
Ref A: 9A0638AC5D544684B72FE4F373B03488 Ref B: FRAEDGE0306 Ref C: 2020-04-16T11:54:59Z
status
200
etag
"0db222df11d61:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
private,max-age=1800
accept-ranges
bytes
content-length
7610
btprivacy.js
s.btstatic.com/
5 KB
2 KB
Script
General
Full URL
https://s.btstatic.com/btprivacy.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.3, , AES_256_GCM
Server
23.203.64.67 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-203-64-67.deploy.static.akamaitechnologies.com
Software
nginx /
Resource Hash
e15f21cd7a83e4e8d32c071f464287a2704794f2bdac683133a7b34dac6d55ba

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Last-Modified
Thu, 16 Jan 2020 19:30:42 GMT
Server
nginx
ETag
"f6dc55142ef9aa5bac26b4b5c9febf29"
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
max-age=14400
Connection
keep-alive
Content-Type
application/javascript; charset=utf-8
Content-Length
1602
bat.js
bat.bing.com/
25 KB
8 KB
Script
General
Full URL
https://bat.bing.com/bat.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2620:1ec:c11::200 , United States, ASN8068 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
/
Resource Hash
079e218ad07f42523479d475b4973a6e386ba95209ee964c04c1a6eb6186bda3

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
last-modified
Mon, 13 Apr 2020 22:01:50 GMT
x-msedge-ref
Ref A: B51554A81C6B4E09A537AF9D89E4CFEB Ref B: FRAEDGE0306 Ref C: 2020-04-16T11:54:59Z
status
200
etag
"0db222df11d61:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
private,max-age=1800
accept-ranges
bytes
content-length
7610
beacon.js
sb.scorecardresearch.com/
1 KB
1 KB
Script
General
Full URL
https://sb.scorecardresearch.com/beacon.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
23.11.238.95 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-11-238-95.deploy.static.akamaitechnologies.com
Software
/
Resource Hash
a256529bd5b1b8846f8d2536ce7581fb6cea4479992f222d01535903dff48d79

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Vary
Accept-Encoding
Content-Type
application/x-javascript
Cache-Control
private, no-transform, max-age=86400
Connection
keep-alive
Content-Length
884
Expires
Fri, 17 Apr 2020 11:54:59 GMT
analytics.js
www.google-analytics.com/
44 KB
18 KB
Script
General
Full URL
https://www.google-analytics.com/analytics.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:818::200e Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
Golfe2 /
Resource Hash
eaf1b128b927ac2868755cb7366d35554255c8af362235afe270f9614f8c806d
Security Headers
Name Value
Strict-Transport-Security max-age=10886400; includeSubDomains; preload
X-Content-Type-Options nosniff

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

strict-transport-security
max-age=10886400; includeSubDomains; preload
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Thu, 06 Feb 2020 00:21:02 GMT
server
Golfe2
age
985
date
Thu, 16 Apr 2020 11:38:34 GMT
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
public, max-age=7200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
18174
expires
Thu, 16 Apr 2020 13:38:34 GMT
fbevents.js
connect.facebook.net/en_US/
126 KB
30 KB
Script
General
Full URL
https://connect.facebook.net/en_US/fbevents.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a03:2880:f02d:12:face:b00c:0:3 , Ireland, ASN32934 (FACEBOOK, US),
Reverse DNS
Software
/
Resource Hash
5a91c6d3e635c0bd1551a53cf0769328132151a7732039170280d500dbcb4685
Security Headers
Name Value
Content-Security-Policy default-src * data: blob:;script-src *.facebook.com *.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* 'unsafe-inline' 'unsafe-eval' blob: data: 'self';style-src data: blob: 'unsafe-inline' *;connect-src *.facebook.com facebook.com *.fbcdn.net *.facebook.net *.spotilocal.com:* wss://*.facebook.com:* https://fb.scanandcleanlocal.com:* attachment.fbsbx.com ws://localhost:* blob: *.cdninstagram.com 'self';
Strict-Transport-Security max-age=31536000; preload; includeSubDomains
X-Content-Type-Options nosniff
X-Frame-Options DENY
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

strict-transport-security
max-age=31536000; preload; includeSubDomains
content-encoding
gzip
x-content-type-options
nosniff
status
200
alt-svc
h3-27=":443"; ma=3600
content-length
30466
x-xss-protection
0
pragma
public
x-fb-debug
NuiBbdcvlU8BB8FMZCmgo9geuvfqnZyxD45SQWbPff1MficQLXkziRbe5bLBRH8IUm0MeVy+k0haSFkj0dzk6Q==
x-fb-trip-id
1850256238
x-frame-options
DENY
date
Thu, 16 Apr 2020 11:54:59 GMT, Thu, 16 Apr 2020 11:54:59 GMT
vary
Accept-Encoding
content-type
application/x-javascript; charset=utf-8
cache-control
public, max-age=1200
content-security-policy
default-src * data: blob:;script-src *.facebook.com *.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* 'unsafe-inline' 'unsafe-eval' blob: data: 'self';style-src data: blob: 'unsafe-inline' *;connect-src *.facebook.com facebook.com *.fbcdn.net *.facebook.net *.spotilocal.com:* wss://*.facebook.com:* https://fb.scanandcleanlocal.com:* attachment.fbsbx.com ws://localhost:* blob: *.cdninstagram.com 'self';
expires
Sat, 01 Jan 2000 00:00:00 GMT
scevent.min.js
sc-static.net/
13 KB
6 KB
Script
General
Full URL
https://sc-static.net/scevent.min.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
13.225.73.3 Seattle, United States, ASN16509 (AMAZON-02, US),
Reverse DNS
server-13-225-73-3.fra2.r.cloudfront.net
Software
AmazonS3 /
Resource Hash
e93047ab88ddf3a33047a506b4a7594914e84fcf5ebac4b2723739e728e284b5

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 01:13:09 GMT
content-encoding
gzip
last-modified
Tue, 25 Feb 2020 22:48:01 GMT
server
AmazonS3
age
38513
vary
Accept-Encoding
x-cache
Hit from cloudfront
content-type
application/javascript
status
200
cache-control
public, s-maxage=86400, max-age=600
x-amz-cf-pop
FRA2-C2
x-amz-cf-id
5xAOz6YWn3PMu-EDWCj8fuIhbDvfSVIg9BOcgSqtKZiFIr6VxUgPfA==
via
1.1 52f0756596448c36265861853c0a44a4.cloudfront.net (CloudFront)
kohls.js
cdn.tagdelivery.com/request/client/
43 KB
11 KB
Script
General
Full URL
https://cdn.tagdelivery.com/request/client/kohls.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
151.101.13.179 Frankfurt am Main, Germany, ASN54113 (FASTLY, US),
Reverse DNS
Software
AmazonS3 /
Resource Hash
7d1b654bc56485872b4c88231b981623294f36b863fc193ae0390a6d02a99130

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
age
625
x-cache
HIT
status
200
content-length
10964
x-amz-id-2
c+o+OlonKV4EP+jAcZgRnT4DfZ66N3G3Bm5qV1wxlhWlD6t2CdcM+2Z2pBJbVE8uL/QAhy2YTWA=
x-served-by
cache-fra19125-FRA
last-modified
Thu, 09 Apr 2020 16:44:11 GMT
server
AmazonS3
x-timer
S1587038100.792890,VS0,VE0
etag
"e13e8d9466f37fc0f0235771a13bc98f"
vary
Accept-Encoding
x-amz-request-id
549B99830179DE34
via
1.1 varnish
x-robots-tag
noindex, nofollow
accept-ranges
bytes
content-type
application/javascript
x-cache-hits
2
core.js
s.pinimg.com/ct/
1 KB
730 B
Script
General
Full URL
https://s.pinimg.com/ct/core.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:180::1931 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
a8a5c752f8ae0c033572453cbb3240ca9047eae565ea1f3df7cb1ea67e9984d9

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

content-encoding
gzip
x-cdn
akamai
etag
"fdf03ac619d384023432225dbd221b25"
vary
Accept-Encoding, Origin
content-type
application/javascript
status
200
cache-control
max-age=7200
x-fallback
39741bd5-2.16.187.12
accept-ranges
bytes
content-length
563
site.min.js
cdn.curalate.com/sites/kohlsfanreel-afeck7/site/latest/
62 KB
16 KB
Script
General
Full URL
https://cdn.curalate.com/sites/kohlsfanreel-afeck7/site/latest/site.min.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
13.224.194.58 Seattle, United States, ASN16509 (AMAZON-02, US),
Reverse DNS
server-13-224-194-58.fra2.r.cloudfront.net
Software
AmazonS3 /
Resource Hash
b9d2e26f22cdbae9b33b328fcaec06435834b057c435fd14a615dda245ce64d5

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

x-amz-version-id
LAbOQw7fXEOtEF2XigbQ6RaYv5G5.Y97
content-encoding
gzip
last-modified
Thu, 30 Jan 2020 18:16:05 GMT
server
AmazonS3
age
86
date
Thu, 16 Apr 2020 11:53:34 GMT
vary
Accept-Encoding
x-cache
Hit from cloudfront
content-type
application/javascript
status
200
cache-control
max-age=1800,s-maxage=1800
x-amz-replication-status
COMPLETED
x-amz-cf-pop
FRA2-C1
x-amz-cf-id
B_FGwNHsypZwWh6FWdWm0yevELk3luK7DDjUwOWrW8T6U54ZOQEH9Q==
via
1.1 e0efba8a72628bfc3dc6d4d637b28302.cloudfront.net (CloudFront)
d82d7432-724c-4af9-8884-ffab4841f0a1.js
cdnssl.clicktale.net/www47/ptc/
96 KB
23 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www47/ptc/d82d7432-724c-4af9-8884-ffab4841f0a1.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
AmazonS3 /
Resource Hash
7d902a1ffa6a76ad5c599742f4d37b2d21c3601c7745463a10d310b60aed734f

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Origin
https://www.kohls.com

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
last-modified
Thu, 16 Apr 2020 11:24:44 GMT
server
AmazonS3
x-amz-request-id
61B00F870494DBDF
etag
"da8db03d27b659523256cb212d3e4a59"
vary
Accept-Encoding
content-type
application/x-javascript
status
200
cache-control
max-age=600
accept-ranges
bytes
access-control-allow-origin
*
content-length
22814
x-amz-id-2
q8IX+DgFEsgYIybYJnSbEyYFGQD/JkOIGQ3Og90R9kt0kvtZJgGXZ5L95AsRQvwm1JDnlAZNknc=
expires
Thu, 16 Apr 2020 12:04:59 GMT
js
www.googletagmanager.com/gtag/
79 KB
29 KB
Script
General
Full URL
https://www.googletagmanager.com/gtag/js?id=DC-8632166
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2008 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
Google Tag Manager /
Resource Hash
91bd671d9ef32c444bc363d40e7d072a317e899b9c662ad1dd837d1d2277ed3a
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
br
vary
Accept-Encoding
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
30045
x-xss-protection
0
last-modified
Thu, 16 Apr 2020 09:00:00 GMT
server
Google Tag Manager
strict-transport-security
max-age=31536000; includeSubDomains
content-type
application/javascript; charset=UTF-8
access-control-allow-origin
*
cache-control
private, max-age=900
access-control-allow-credentials
true
access-control-allow-headers
Cache-Control
expires
Thu, 16 Apr 2020 11:54:59 GMT
activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-cloth...
8632166.fls.doubleclick.net/ Frame 3710
Redirect Chain
  • https://8632166.fls.doubleclick.net/activityi;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clo...
  • https://8632166.fls.doubleclick.net/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww...
0
0
Document
General
Full URL
https://8632166.fls.doubleclick.net/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men?
Requested by
Host: www.googletagmanager.com
URL: https://www.googletagmanager.com/gtag/js?id=DC-8632166
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.18.166 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s29-in-f6.1e100.net
Software
cafe /
Resource Hash
Security Headers
Name Value
Strict-Transport-Security max-age=21600
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

:method
GET
:authority
8632166.fls.doubleclick.net
:scheme
https
:path
/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men?
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
cookie
IDE=AHWqTUkaCV9RkTvffTCHRQqe53My6cW7RKQZl1quo8fHV9ePvidGkquIu0vwp_o8
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
about:blank

Response headers

status
200
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
timing-allow-origin
*
date
Thu, 16 Apr 2020 11:54:59 GMT
expires
Thu, 16 Apr 2020 11:54:59 GMT
cache-control
private, max-age=0
strict-transport-security
max-age=21600
content-type
text/html; charset=UTF-8
x-content-type-options
nosniff
content-encoding
gzip
server
cafe
content-length
489
x-xss-protection
0
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000

Redirect headers

status
302
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
timing-allow-origin
*
date
Thu, 16 Apr 2020 11:54:59 GMT
pragma
no-cache
expires
Fri, 01 Jan 1990 00:00:00 GMT
cache-control
no-cache, must-revalidate
follow-only-when-prerender-shown
1
strict-transport-security
max-age=21600
location
https://8632166.fls.doubleclick.net/activityi;dc_pre=CPTRvNHx7OgCFYYaGwodf-8Htw;src=8632166;type=landi0;cat=unive0;ord=3201723789525;gtm=2od480;auiddc=555952915.1587038099;u1=;u10=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men;u11=Men%2527s%2520Clothing%253A%2520Explore%2520Clothes%2520For%2520Men%2520%257C%2520Kohl%2527s;u13=mens-clothing;u2=;u23=New%20Customer;u24=66348673173402914051624183315367216025;u25=;u5=0;~oref=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men?
content-type
text/html; charset=UTF-8
x-content-type-options
nosniff
server
cafe
content-length
0
x-xss-protection
0
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
1.js
tjxbfc1n.micpn.com/p/js/
44 KB
15 KB
Script
General
Full URL
https://tjxbfc1n.micpn.com/p/js/1.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
13.225.73.47 Seattle, United States, ASN16509 (AMAZON-02, US),
Reverse DNS
server-13-225-73-47.fra2.r.cloudfront.net
Software
/
Resource Hash
317ef593559c12ec00d2005fa8aef8f47511604cad625727ce8b0c12022a013d

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
x-amz-cf-pop
FRA2-C2
vary
Accept-Encoding
x-cache
Miss from cloudfront
p3p
policyref="https://movableink.com/w3c/p3p.xml", CP="DEVa PSAa PSDa IVAa IVDa OUR IND DSP NON COR NAV UNI"
status
200
cache-control
no-cache max-age=0
content-type
text/javascript
x-amz-cf-id
mFLmE5R_-gmrr0M_y8Wj39mHeWnqOWEU4mraWnHVp6-VRwCGAP_B9A==
via
1.1 286eb4b50e0acf373dd03645aee00b7f.cloudfront.net (CloudFront)
x-uuid
2ab9867b-8ab1-4687-bfab-9d5c31a82ba9
expires
Thu, 01 Dec 1994 16:00:00 GMT
hook.js
d.us.criteo.com/Delivery/ClientPaths/Library/
258 KB
73 KB
Script
General
Full URL
https://d.us.criteo.com/Delivery/ClientPaths/Library/hook.js?cid=164
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
74.119.119.135 , United States, ASN19750 (AS-CRITEO, US),
Reverse DNS
Software
nginx/1.16.1 /
Resource Hash
fc64a3f93236408f1b7804c07d5bc6a4e9feac0388b7a94a6c6c2b61c5d2186e

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Wed, 15 Apr 2020 16:00:40 GMT
server
nginx/1.16.1
etag
W/"5e972fa8-406bb"
content-type
application/javascript
A375953-1cd4-4523-a263-b5b3c8c11fb81.js
d.impactradius-event.com/
41 KB
13 KB
Script
General
Full URL
https://d.impactradius-event.com/A375953-1cd4-4523-a263-b5b3c8c11fb81.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
35.186.249.72 Mountain View, United States, ASN15169 (GOOGLE, US),
Reverse DNS
72.249.186.35.bc.googleusercontent.com
Software
UploadServer /
Resource Hash
c3d0ccc036971aca7f6332aec2cac5dd18c057ccd8395d350467b9c0dfc432c8

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:51:57 GMT
content-encoding
gzip
age
182
x-guploader-uploadid
AEnB2UqTbddm_VoqNqt2ijO8rT-6Dmf3CzrgzxDcQ4toQEE6AmBzQM5Uw5MFnLN6L-EUEE-3nWGT4r9w6pox2JTmfmUh2qCS4wRFrAw8Zj7b5IOQrV0ESeQ
x-goog-storage-class
MULTI_REGIONAL
status
200
x-goog-metageneration
1
x-goog-stored-content-encoding
gzip
alt-svc
clear
content-length
13175
last-modified
Thu, 09 Apr 2020 17:45:02 GMT
server
UploadServer
etag
"f1071e1e23d0bc22b7deba850c7b16fb"
vary
Accept-Encoding
x-goog-hash
crc32c=Alb9+w==, md5=8QceHiPQvCK33rqFDHsW+w==
x-goog-generation
1586454302796059
cache-control
public,max-age=900,s-maxage=300
x-goog-stored-content-length
13175
accept-ranges
bytes
content-type
text/javascript; charset=utf-8
expires
Thu, 16 Apr 2020 11:56:57 GMT
tag
s.thebrighttag.com/
3 KB
2 KB
Script
General
Full URL
https://s.thebrighttag.com/tag?site=4DPyaxM&H=3hvfz86&referrer=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&mode=v2&cf=4847722%2C4847939%2C6706303%2C6706308%2C7432823&btpdb.4DPyaxM.dGZjLjYyMTAxMDM=REFZUw&btpdb.4DPyaxM.dGZjLjYyMTAxMTA=REFZUw&btpdb.4DPyaxM.dGZjLjYyMDYyMTU=REFZUw&btpdb.4DPyaxM.Y3VzdG9tZXIgfCBzaWduYWwgMXN0IHBhcnR5IGlkIC0gc2Vzc2lvbg=NjQzMzY3ODczNTMzMTgwNTEzNw&btpdb.4DPyaxM.Y3VzdG9tZXIgfCBzaWduYWwgMXN0IHBhcnR5IGlkIC0gMzY1IGRheXM=MjA5MDMzMjYwNTE4Mjc2Mzc0Nw
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
62b5f85b21a85ad299b67f82a3a505f7cf0058c98c1f8b4f5c8ded1d7667922a

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:54:59 GMT
Content-Encoding
gzip
Server
nginx
ETag
51615b2d71e4b8b7535172a5afbe3c94
Vary
Accept-Encoding
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Transfer-Encoding
chunked
Connection
keep-alive
Content-Type
text/javascript
X-BT-RequestId
1958eb30-7fd9-11ea-a05d-0000ac150af8
Expires
Thu, 01 Jan 1970 00:00:00 GMT
/
www.google.de/pagead/1p-user-list/1071871169/
Redirect Chain
  • https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/?value=0&guid=ON&script=0
  • https://www.google.com/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105
  • https://www.google.de/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105&ipr=y
42 B
110 B
Image
General
Full URL
https://www.google.de/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT

Redirect headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-content-type-options
nosniff
server
cafe
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
302
content-type
image/gif
location
https://www.google.de/pagead/1p-user-list/1071871169/?value=0&guid=ON&script=0&is_vtc=1&random=4270057105&ipr=y
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
cs
s.thebrighttag.com/
Redirect Chain
  • https://gum.criteo.com/sync?c=10&r=1&u=https%3A%2F%2Fs.thebrighttag.com%2Fcs%3Fbtt%3D0%26tp%3Dcr%26uid%3D%40USERID%40
  • https://s.thebrighttag.com/cs?btt=0&tp=cr&uid=JF1cfZ9BMIoutb1XvDrppudMLiAIOfWX
35 B
353 B
Image
General
Full URL
https://s.thebrighttag.com/cs?btt=0&tp=cr&uid=JF1cfZ9BMIoutb1XvDrppudMLiAIOfWX
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:00 GMT
Server
nginx
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Connection
keep-alive
X-BT-RequestId
198440f0-7fd9-11ea-a564-0000ac150821
Content-Type
image/gif
Content-Length
35
Expires
Thu, 01 Jan 1970 00:00:00 GMT

Redirect headers

status
302
strict-transport-security
max-age=31536000
cache-control
private, max-age=0, no-cache, no-store, must-revalidate
date
Thu, 16 Apr 2020 11:54:59 GMT
content-length
203
location
https://s.thebrighttag.com/cs?btt=0&tp=cr&uid=JF1cfZ9BMIoutb1XvDrppudMLiAIOfWX
content-type
text/html; charset=utf-8
p
rp4.liadm.com/
Redirect Chain
  • https://rp.liadm.com/p?aid=a-00oc&duid=2090332605182763747
  • https://rp4.liadm.com/p?aid=a-00oc&duid=2090332605182763747&i6=MmEwMTo0Zjg6MTkyOjU0MTQ6OjI%3D&n3pc=true&pu=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
43 B
513 B
Image
General
Full URL
https://rp4.liadm.com/p?aid=a-00oc&duid=2090332605182763747&i6=MmEwMTo0Zjg6MTkyOjU0MTQ6OjI%3D&n3pc=true&pu=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
3.208.200.138 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-3-208-200-138.compute-1.amazonaws.com
Software
nginx/1.16.1 /
Resource Hash
b1442e85b03bdcaf66dc58c7abb98745dd2687d86350be9a298a1d9382ac849b
Security Headers
Name Value
Content-Security-Policy default-src 'self'
Strict-Transport-Security max-age=31536000; includeSubDomains
X-Content-Type-Options nosniff
X-Frame-Options DENY
X-Xss-Protection 1; mode=block

Request headers

Referer
https://www.kohls.com/
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
referrer-policy
origin-when-cross-origin, strict-origin-when-cross-origin
server
nginx/1.16.1
vary
Origin
x-frame-options
DENY
content-type
image/gif
status
200
x-xss-protection
1; mode=block
x-permitted-cross-domain-policies
master-only
content-security-policy
default-src 'self'
strict-transport-security
max-age=31536000; includeSubDomains
request-time
10
content-length
43
x-content-type-options
nosniff

Redirect headers

date
Thu, 16 Apr 2020 11:55:00 GMT
referrer-policy
origin-when-cross-origin, strict-origin-when-cross-origin
server
nginx/1.16.1
request-time
0
status
302
x-frame-options
DENY
location
https://rp4.liadm.com/p?aid=a-00oc&duid=2090332605182763747&i6=MmEwMTo0Zjg6MTkyOjU0MTQ6OjI%3D&n3pc=true&pu=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
x-xss-protection
1; mode=block
x-permitted-cross-domain-policies
master-only
content-security-policy
default-src 'self'
strict-transport-security
max-age=31536000; includeSubDomains
vary
Origin
content-length
0
x-content-type-options
nosniff
cs
s.thebrighttag.com/
Redirect Chain
  • https://secure.adnxs.com/getuid?https%3A%2F%2Fs.thebrighttag.com%2Fcs%3Fbtt%3DVafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w%26uid%3D$UID%26tp%3Dan%26gdpr%3D1
  • https://secure.adnxs.com/bounce?%2Fgetuid%3Fhttps%253A%252F%252Fs.thebrighttag.com%252Fcs%253Fbtt%253DVafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w%2526uid%253D%24UID%2526tp%253Dan%2526gdpr%253D1
  • https://s.thebrighttag.com/cs?btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&uid=0&tp=an&gdpr=1
35 B
353 B
Image
General
Full URL
https://s.thebrighttag.com/cs?btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&uid=0&tp=an&gdpr=1
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:00 GMT
Server
nginx
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Connection
keep-alive
X-BT-RequestId
19a0a290-7fd9-11ea-a41f-0000ac1509f8
Content-Type
image/gif
Content-Length
35
Expires
Thu, 01 Jan 1970 00:00:00 GMT

Redirect headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:02 GMT
X-Proxy-Origin
195.242.213.147; 195.242.213.147; 693.bm-nginx-loadbalancer.mgmt.fra1; *.adnxs.com; 37.252.172.43:80
AN-X-Request-Uuid
3642baaa-2651-496e-98ab-1741d5bd442a
Server
nginx/1.13.4
Access-Control-Allow-Origin
*
P3P
policyref="http://cdn.adnxs.com/w3c/policy/p3p.xml", CP="NOI DSP COR ADM PSAo PSDo OURo SAMo UNRo OTRo BUS COM NAV DEM STA PRE"
Location
https://s.thebrighttag.com/cs?btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&uid=0&tp=an&gdpr=1
Cache-Control
no-store, no-cache, private
Access-Control-Allow-Credentials
true
Connection
keep-alive
Content-Type
text/html; charset=utf-8
Content-Length
0
X-XSS-Protection
0
Expires
Sat, 15 Nov 2008 16:00:00 GMT
generic
match.adsrvr.org/track/cmf/
70 B
264 B
Image
General
Full URL
https://match.adsrvr.org/track/cmf/generic?gdpr=1&ttd_pid=signal&ttd_tpi=1&ttd_puid=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.215.180.197 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-52-215-180-197.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
8d70b3e6badb6973663b398d297bb32eaedd08826a1af98d0a1cfce5324ffce0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
x-aspnet-version
4.0.30319
p3p
CP="NOI DSP COR CUR ADMo DEVo PSAo PSDo OUR SAMo BUS UNI NAV"
status
200
cache-control
private,no-cache, must-revalidate
content-type
image/gif
content-length
70
cs
s.thebrighttag.com/
Redirect Chain
  • https://cm.g.doubleclick.net/pixel?gdpr=1&google_nid=signal_dmp&google_cm&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w
  • https://s.thebrighttag.com/cs?tp=gcms&gdpr=1&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&google_gid=CAESEIa9JfMxoPIk1iuKnzu6zD4&google_cver=1
35 B
353 B
Image
General
Full URL
https://s.thebrighttag.com/cs?tp=gcms&gdpr=1&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&google_gid=CAESEIa9JfMxoPIk1iuKnzu6zD4&google_cver=1
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:00 GMT
Server
nginx
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Connection
keep-alive
X-BT-RequestId
198d1a90-7fd9-11ea-9598-0000ac150992
Content-Type
image/gif
Content-Length
35
Expires
Thu, 01 Jan 1970 00:00:00 GMT

Redirect headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
server
HTTP server (unknown)
status
302
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
location
https://s.thebrighttag.com/cs?tp=gcms&gdpr=1&btt=VafNwc216Dd9LuYnmQawiBz2GVgCXrRpWxGHFd_5F-w&google_gid=CAESEIa9JfMxoPIk1iuKnzu6zD4&google_cver=1
cache-control
no-cache, must-revalidate
content-type
text/html; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
358
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
d.agkn.com/pixel/10107/
43 B
589 B
Image
General
Full URL
https://d.agkn.com/pixel/10107/?che=9967547713&mcvisid=66348673173402914051624183315367216025
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
2600:9000:20eb:2800:19:fc2c:a140:93a1 , United States, ASN16509 (AMAZON-02, US),
Reverse DNS
Software
Apache-Coyote/1.1 /
Resource Hash
cf4724b2f736ed1a0ae6bc28f1ead963d9cd2c1fd87b6ef32e7799fc1c5c8bda

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
via
1.1 3bf3e75bcb9a86b3eb343a1d4392a6df.cloudfront.net (CloudFront)
server
Apache-Coyote/1.1
x-amz-cf-pop
FRA2-C1
x-cache
Miss from cloudfront
p3p
CP="NOI DSP COR CURa ADMa DEVa TAIa OUR BUS IND UNI COM NAV INT"
status
200
cache-control
no-cache, must-revalidate
content-type
image/gif
content-length
43
x-amz-cf-id
53du9x4g2LQg8Alp0zE29N2JU6h7mie86yI9_dwAT8HJRYEvQwz1tg==
expires
Sat, 01 Jan 2000 00:00:00 GMT
0
bat.bing.com/action/
0
93 B
Image
General
Full URL
https://bat.bing.com/action/0?ti=4024145&Ver=2&mid=7305221e-a1dd-2ebd-d6d3-4323cd9ec404&sid=9d8e0b69-a42f-3bcf-aaae-9fdc209e4bed&pi=0&lg=en-US&sw=1600&sh=1200&sc=24&tl=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&p=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&r=&lt=1320&evt=pageLoad&msclkid=N&sv=1&rn=302887
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2620:1ec:c11::200 , United States, ASN8068 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
204
pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
cache-control
no-cache, must-revalidate
x-msedge-ref
Ref A: E1383B8F4D7548D19671DC480621B200 Ref B: FRAEDGE0306 Ref C: 2020-04-16T11:54:59Z
access-control-allow-origin
*
expires
Fri, 01 Jan 1990 00:00:00 GMT
0
bat.bing.com/action/
0
93 B
Image
General
Full URL
https://bat.bing.com/action/0?ti=4024145&Ver=2&mid=7305221e-a1dd-2ebd-d6d3-4323cd9ec404&sid=9d8e0b69-a42f-3bcf-aaae-9fdc209e4bed&prodid=event&pagetype=product&en=Y&evt=custom&msclkid=N&rn=341297
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2620:1ec:c11::200 , United States, ASN8068 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
204
pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
cache-control
no-cache, must-revalidate
x-msedge-ref
Ref A: A922B1CE175D4BD2B53E71725AF456F0 Ref B: FRAEDGE0306 Ref C: 2020-04-16T11:54:59Z
access-control-allow-origin
*
expires
Fri, 01 Jan 1990 00:00:00 GMT
collect
www.google-analytics.com/
35 B
121 B
Image
General
Full URL
https://www.google-analytics.com/collect?v=1&_v=j81&a=633738092&t=pageview&_s=1&dl=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&ul=en-us&de=UTF-8&dt=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&sd=24-bit&sr=1600x1200&vp=1585x1200&je=0&_u=YGBAgAAB~&jid=137351968&gjid=1840553344&cid=147837001.1587038100&tid=UA-45121696-1&_gid=679854657.1587038100&cd2=&cd4=&z=2074124857
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:818::200e Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
Golfe2 /
Resource Hash
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015
Security Headers
Name Value
X-Content-Type-Options nosniff

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 05:54:34 GMT
x-content-type-options
nosniff
last-modified
Sun, 17 May 1998 03:00:00 GMT
server
Golfe2
age
21625
status
200
content-type
image/gif
access-control-allow-origin
*
cache-control
no-cache, no-store, must-revalidate
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
35
expires
Mon, 01 Jan 1990 00:00:00 GMT
ga-audiences
www.google.de/ads/
Redirect Chain
  • https://stats.g.doubleclick.net/r/collect?t=dc&aip=1&_r=3&v=1&_v=j81&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&gjid=1840553344&_gid=679854657.1587038100&_u=YGBAgAAB~&z=1275544147
  • https://www.google.com/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147
  • https://www.google.de/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147&slf_rd=1&random=3570640782
42 B
109 B
Image
General
Full URL
https://www.google.de/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147&slf_rd=1&random=3570640782
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT

Redirect headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
302
content-type
text/html; charset=UTF-8
location
https://www.google.de/ads/ga-audiences?v=1&aip=1&t=sr&_r=4&tid=UA-45121696-1&cid=147837001.1587038100&jid=137351968&_v=j81&z=1275544147&slf_rd=1&random=3570640782
cache-control
no-cache, no-store, must-revalidate
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
b2
sb.scorecardresearch.com/
Redirect Chain
  • https://sb.scorecardresearch.com/b?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Clothi...
  • https://sb.scorecardresearch.com/b2?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Cloth...
0
248 B
Image
General
Full URL
https://sb.scorecardresearch.com/b2?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&c7=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c9=
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
23.11.238.95 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-11-238-95.deploy.static.akamaitechnologies.com
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:00 GMT
Cache-Control
private, no-cache, no-cache=Set-Cookie, no-store, proxy-revalidate
Connection
keep-alive
Content-Length
0
Expires
Mon, 01 Jan 1990 00:00:00 GMT

Redirect headers

Location
https://sb.scorecardresearch.com/b2?c1=2&c2=18386829&c4=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-tn1.0-s-men&ns__t=1587038099844&ns_c=UTF-8&cv=3.5&c8=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&c7=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c9=
Pragma
no-cache
Date
Thu, 16 Apr 2020 11:54:59 GMT
Cache-Control
private, no-cache, no-cache=Set-Cookie, no-store, proxy-revalidate
Connection
keep-alive
Content-Length
0
Expires
Mon, 01 Jan 1990 00:00:00 GMT
831984583490556
connect.facebook.net/signals/config/
447 KB
112 KB
Script
General
Full URL
https://connect.facebook.net/signals/config/831984583490556?v=2.9.15&r=stable
Requested by
Host: connect.facebook.net
URL: https://connect.facebook.net/en_US/fbevents.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a03:2880:f02d:12:face:b00c:0:3 , Ireland, ASN32934 (FACEBOOK, US),
Reverse DNS
Software
/
Resource Hash
0d01964116ba5a9c79219a78fd6196568ed155c40ae5a85104104f134bdc0d91
Security Headers
Name Value
Content-Security-Policy default-src * data: blob:;script-src *.facebook.com *.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* 'unsafe-inline' 'unsafe-eval' blob: data: 'self';style-src data: blob: 'unsafe-inline' *;connect-src *.facebook.com facebook.com *.fbcdn.net *.facebook.net *.spotilocal.com:* wss://*.facebook.com:* https://fb.scanandcleanlocal.com:* attachment.fbsbx.com ws://localhost:* blob: *.cdninstagram.com 'self' chrome-extension://boadgeojelhgndaghljhdicfkmllpafd chrome-extension://dliochdbjfkdbacpmhlcpmleaejidimm;
Strict-Transport-Security max-age=31536000; preload; includeSubDomains
X-Content-Type-Options nosniff
X-Frame-Options DENY
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

strict-transport-security
max-age=31536000; preload; includeSubDomains
content-encoding
gzip
x-content-type-options
nosniff
status
200
alt-svc
h3-27=":443"; ma=3600
content-length
114941
x-xss-protection
0
pragma
public
x-fb-debug
AhibZpV/Y95ejCs7szGLT1BeehYB3jhn+Kx+DXwoY1cuWoa7wQyABrfN1Imle1yjON9JZhAtgVuAeQvGgVDoyw==
x-fb-trip-id
1850256238
x-frame-options
DENY
date
Thu, 16 Apr 2020 11:54:59 GMT, Thu, 16 Apr 2020 11:54:59 GMT
vary
Accept-Encoding
content-type
application/x-javascript; charset=utf-8
cache-control
public, max-age=1200
content-security-policy
default-src * data: blob:;script-src *.facebook.com *.fbcdn.net *.facebook.net *.google-analytics.com *.virtualearth.net *.google.com 127.0.0.1:* *.spotilocal.com:* 'unsafe-inline' 'unsafe-eval' blob: data: 'self';style-src data: blob: 'unsafe-inline' *;connect-src *.facebook.com facebook.com *.fbcdn.net *.facebook.net *.spotilocal.com:* wss://*.facebook.com:* https://fb.scanandcleanlocal.com:* attachment.fbsbx.com ws://localhost:* blob: *.cdninstagram.com 'self' chrome-extension://boadgeojelhgndaghljhdicfkmllpafd chrome-extension://dliochdbjfkdbacpmhlcpmleaejidimm;
expires
Sat, 01 Jan 2000 00:00:00 GMT
/
googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/
2 KB
1 KB
Script
General
Full URL
https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1071871169/?random=1587038099909&cv=9&fst=1587038099909&num=1&bg=ffffff&guid=ON&resp=GooglemKTybQhCsO&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&ig=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&hn=www.googleadservices.com&async=1&rfmt=3&fmt=4
Requested by
Host: www.googleadservices.com
URL: https://www.googleadservices.com/pagead/conversion_async.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
2b1bbc2ab03b4ddd9746cecc5dc7ad12a664db2f63ba7cfe3de126a459abab9e
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:54:59 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
cache-control
no-cache, must-revalidate
content-disposition
attachment; filename="f.txt"
content-type
text/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
1084
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
googleads.g.doubleclick.net/pagead/viewthroughconversion/1018012790/
2 KB
1 KB
Script
General
Full URL
https://googleads.g.doubleclick.net/pagead/viewthroughconversion/1018012790/?random=1587038099914&cv=9&fst=1587038099914&num=1&bg=ffffff&guid=ON&resp=GooglemKTybQhCsO&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&ig=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&hn=www.googleadservices.com&async=1&rfmt=3&fmt=4
Requested by
Host: www.googleadservices.com
URL: https://www.googleadservices.com/pagead/conversion_async.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
91c4ca77f03e214c2317d563e2e23a337717979ca184bb22d801110c8fcb675b
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
cache-control
no-cache, must-revalidate
content-disposition
attachment; filename="f.txt"
content-type
text/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
1086
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
i
tr.snapchat.com/cm/ Frame 18C0
0
0
Document
General
Full URL
https://tr.snapchat.com/cm/i?pid=8e5c8f64-cb28-46b3-8d73-411e50ce8e8e
Requested by
Host: sc-static.net
URL: https://sc-static.net/scevent.min.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
35.186.226.184 Mountain View, United States, ASN15169 (GOOGLE, US),
Reverse DNS
184.226.186.35.bc.googleusercontent.com
Software
nginx/1.17.3 /
Resource Hash
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

:method
GET
:authority
tr.snapchat.com
:scheme
https
:path
/cm/i?pid=8e5c8f64-cb28-46b3-8d73-411e50ce8e8e
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
server
nginx/1.17.3
date
Thu, 16 Apr 2020 11:55:00 GMT
content-type
text/html
content-length
0
strict-transport-security
max-age=31536000; includeSubDomains
via
1.1 google
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
monitor-latest.js
cdnssl.clicktale.net/www/
61 KB
19 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www/monitor-latest.js
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www47/ptc/d82d7432-724c-4af9-8884-ffab4841f0a1.js
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Microsoft-IIS/8.5 /
Resource Hash
9d8a2811fe6cec544f8e4ba7915c7ee8d4caa72257d97bf4f8964dae6c621ff6

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Origin
https://www.kohls.com

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Thu, 20 Feb 2020 17:06:57 GMT
server
Microsoft-IIS/8.5
status
200
etag
"808e442810e8d51:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
max-age=86400
accept-ranges
bytes
content-length
19662
expires
Fri, 17 Apr 2020 11:55:00 GMT
d82d7432-724c-4af9-8884-ffab4841f0a1.js
cdnssl.clicktale.net/www47/pcc/
103 KB
28 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www47/pcc/d82d7432-724c-4af9-8884-ffab4841f0a1.js?DeploymentConfigName=Release_20200416&Version=5
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
AmazonS3 /
Resource Hash
df179f7583362a8382421dadcbc9a497639f19dac1ea7c3774741d88b458c058

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Origin
https://www.kohls.com

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Thu, 16 Apr 2020 09:12:45 GMT
server
AmazonS3
x-amz-request-id
33CCCD80BA7A435F
etag
"7d7e65cdfc77a2f4d27ee2998575accf"
vary
Accept-Encoding
content-type
application/x-javascript
status
200
cache-control
max-age=86400
accept-ranges
bytes
access-control-allow-origin
*
content-length
27997
x-amz-id-2
+gTNWOgdSx7ONp5x4Dj2Awqif213YIm2A8txlhZbWuC8nXGcg+LeVYXHOapgfOeWAfOBb1cyzQ8=
expires
Fri, 17 Apr 2020 11:55:00 GMT
WR-latest.js
cdnssl.clicktale.net/www/
57 KB
19 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www/WR-latest.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Microsoft-IIS/8.5 /
Resource Hash
2f05563ca65e7640350b200b8bbd1fc1d159870edae312279124cab44fd95e18

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Origin
https://www.kohls.com

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Tue, 07 Apr 2020 09:56:31 GMT
server
Microsoft-IIS/8.5
status
200
etag
"80f12fd0c2cd61:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
max-age=86400
accept-ranges
bytes
content-length
19054
expires
Fri, 17 Apr 2020 11:55:00 GMT
trace
www.cloudflare.com/cdn-cgi/
281 B
471 B
XHR
General
Full URL
https://www.cloudflare.com/cdn-cgi/trace
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2606:4700::6811:d209 , United States, ASN13335 (CLOUDFLARENET, US),
Reverse DNS
Software
cloudflare /
Resource Hash
5bef36ad4dd30972e10dcb05c116fafa3c1f79b323319961d09a9ebd02a5b36b
Security Headers
Name Value
X-Frame-Options SAMEORIGIN

Request headers

Accept
*/*
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
server
cloudflare
status
200
x-frame-options
SAMEORIGIN
content-type
text/plain
access-control-allow-origin
*
cache-control
no-cache
cf-ray
584db6fdae6497d8-FRA
cf-request-id
022470b284000097d806087200000001
expires
Thu, 01 Jan 1970 00:00:01 GMT
request
ad.tagdelivery.com/
70 B
620 B
Script
General
Full URL
https://ad.tagdelivery.com/request?targets=category%3D%2Fmens%2Fclothing%2C%2Fshoes%2Fmens&slot=1240&callback=TagDeliveryContent.callbacks._2454f2cd_ab23_4bc6_bec3_690d5ed00248&count=5&url=
Requested by
Host: cdn.tagdelivery.com
URL: https://cdn.tagdelivery.com/request/client/kohls.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
54.164.173.111 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-54-164-173-111.compute-1.amazonaws.com
Software
/
Resource Hash
426abb1e665d3f775793fcecbf29d413ef64f880bd5d4ef7e624160537c0d5e8

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:00 GMT
Content-Type
application/javascript
P3P
CP="NON DSP ADM DEV PSD OUR IND STP PHY PRE NAV UNI"
Access-Control-Allow-Origin
*
Cache-Control
max-age=0, no-cache, no-store
Connection
keep-alive
X-Robots-Tag
noindex, nofollow
Content-Length
70
X-Request-ID
0b017d18-e0de-4b39-9dac-ed5d497ca331
Expires
Thu, 16 Apr 2020 11:55:00 UTC
p
tr.snapchat.com/ Frame 5E76
0
0
Document
General
Full URL
https://tr.snapchat.com/p
Requested by
Host: sc-static.net
URL: https://sc-static.net/scevent.min.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
35.186.226.184 Mountain View, United States, ASN15169 (GOOGLE, US),
Reverse DNS
184.226.186.35.bc.googleusercontent.com
Software
nginx/1.17.3 /
Resource Hash
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

:method
POST
:authority
tr.snapchat.com
:scheme
https
:path
/p
content-length
291
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
origin
https://www.kohls.com
content-type
application/x-www-form-urlencoded
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
Origin
https://www.kohls.com
Content-Type
application/x-www-form-urlencoded
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
server
nginx/1.17.3
date
Thu, 16 Apr 2020 11:55:00 GMT
content-type
text/html
content-length
0
access-control-allow-origin
*
cache-control
no-cache, no-transform
set-cookie
sc_at=v2|H4sIAAAAAAAAAAXBiQ0AIAgEsIlIjng8roPiFAxvC9+vKpbYKRdGQjbtCZvsvk4NzqhlYKUCgw9boNVAMgAAAA==;SameSite=None;Version=1;Comment=;Domain=.snapchat.com;Path=/;Max-Age=33696000;Secure
strict-transport-security
max-age=31536000; includeSubDomains
via
1.1 google
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
uwt.js
static.ads-twitter.com/
5 KB
2 KB
Script
General
Full URL
https://static.ads-twitter.com/uwt.js
Requested by
Host: s.btstatic.com
URL: https://s.btstatic.com/tag.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
151.101.12.157 Frankfurt am Main, Germany, ASN54113 (FASTLY, US),
Reverse DNS
Software
/
Resource Hash
319949c8c08b86e9c35ea542c0dc0c30cedaa9b8d3d3c3327a36c91aefbd8af5

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
age
13222
x-cache
HIT
p3p
CP="CAO DSP LAW CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa OUR BUS IND UNI COM NAV INT"
status
200
content-length
1954
x-served-by
cache-fra19125-FRA
last-modified
Tue, 23 Jan 2018 20:09:00 GMT
x-timer
S1587038100.328410,VS0,VE0
etag
"b7b33882a4f3ffd5cbf07434f3137166+gzip"
vary
Accept-Encoding,Host
content-type
application/javascript; charset=utf-8
via
1.1 varnish
cache-control
no-cache
accept-ranges
bytes
adsct
analytics.twitter.com/i/
43 B
289 B
Image
General
Full URL
https://analytics.twitter.com/i/adsct?p_id=49582&p_user_id=f7984603-1151-4b18-99fe-6943ee42a775
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
104.244.42.195 , United States, ASN13414 (TWITTER, US),
Reverse DNS
Software
tsa_o /
Resource Hash
ac8778041fdb7f2e08ceb574c9a766247ea26f1a7d90fa854c4efcf4b361a957
Security Headers
Name Value
Strict-Transport-Security max-age=631138519
X-Content-Type-Options nosniff
X-Frame-Options SAMEORIGIN
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
status
200, 200 OK
x-twitter-response-tags
BouncerCompliant
content-length
65
x-xss-protection
0
x-response-time
111
pragma
no-cache
last-modified
Thu, 16 Apr 2020 11:55:00 GMT
server
tsa_o
x-frame-options
SAMEORIGIN
strict-transport-security
max-age=631138519
content-type
image/gif;charset=utf-8
cache-control
no-cache, no-store, must-revalidate, pre-check=0, post-check=0
x-connection-hash
a90c129d31a8ba780b812fbd16400655
x-transaction
0052ec8a00986081
expires
Tue, 31 Mar 1981 05:00:00 GMT
adsct
t.co/i/
43 B
448 B
Image
General
Full URL
https://t.co/i/adsct?p_id=49582&p_user_id=f7984603-1151-4b18-99fe-6943ee42a775
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
104.244.42.197 , United States, ASN13414 (TWITTER, US),
Reverse DNS
Software
tsa_o /
Resource Hash
ac8778041fdb7f2e08ceb574c9a766247ea26f1a7d90fa854c4efcf4b361a957
Security Headers
Name Value
Strict-Transport-Security max-age=0
X-Content-Type-Options nosniff
X-Frame-Options SAMEORIGIN
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
status
200, 200 OK
x-twitter-response-tags
BouncerCompliant
content-length
65
x-xss-protection
0
x-response-time
105
pragma
no-cache
last-modified
Thu, 16 Apr 2020 11:55:00 GMT
server
tsa_o
x-frame-options
SAMEORIGIN
strict-transport-security
max-age=0
content-type
image/gif;charset=utf-8
cache-control
no-cache, no-store, must-revalidate, pre-check=0, post-check=0
x-connection-hash
7c043490196355b201d685743035c7b2
x-transaction
00c0b41000f68dc0
expires
Tue, 31 Mar 1981 05:00:00 GMT
tr
www.facebook.com/
44 B
249 B
Image
General
Full URL
https://www.facebook.com/tr?id=1272022626312394&ev=PageView&cd[order_id]=66348673173402914051624183315367216025
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a03:2880:f12d:83:face:b00c:0:25de , Ireland, ASN32934 (FACEBOOK, US),
Reverse DNS
Software
proxygen-bolt /
Resource Hash
10d8d42d73a02ddb877101e72fbfa15a0ec820224d97cedee4cf92d571be5caa
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT, Thu, 16 Apr 2020 11:55:00 GMT
last-modified
Fri, 21 Dec 2012 00:00:01 GMT
server
proxygen-bolt
strict-transport-security
max-age=31536000; includeSubDomains
content-type
image/gif
status
200
cache-control
no-cache, must-revalidate, max-age=0
alt-svc
h3-27=":443"; ma=3600
content-length
44
expires
Thu, 16 Apr 2020 11:55:00 GMT
5349
kohls.sjv.io/xc/385561/362119/
206 B
826 B
XHR
General
Full URL
https://kohls.sjv.io/xc/385561/362119/5349
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
35.227.211.136 Mountain View, United States, ASN15169 (GOOGLE, US),
Reverse DNS
136.211.227.35.bc.googleusercontent.com
Software
/
Resource Hash
08bd00120c677e7f7b7c49e353f7129e6e5500a8ba5b5cd592e36a466c5b3f5f

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded;charset=UTF-8

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
via
1.1 google
server
status
200
p3p
policyref="\/w3c/p3p.xml", CP="ALL BUS LEG DSP COR ADM CUR DEV PSA OUR NAV INT"
access-control-allow-origin
https://www.kohls.com
cache-control
no-store, no-cache, must-revalidate, post-check=0, pre-check=0
access-control-allow-credentials
true
content-type
application/json; charset=UTF-8
alt-svc
clear
expires
Thu, 16 Apr 2020 11:55:00 GMT
track.gif
tjxbfc1n.micpn.com/p/cp/-1/
42 B
616 B
Image
General
Full URL
https://tjxbfc1n.micpn.com/p/cp/-1/track.gif?t=1587038100342&mi_u=anon-1587038100339-48881280&mi_cid=8212&page_title=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&timezone_offset=-120&event_type=pageview&cdate=1587038100339&ck=false
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
13.225.73.47 Seattle, United States, ASN16509 (AMAZON-02, US),
Reverse DNS
server-13-225-73-47.fra2.r.cloudfront.net
Software
/
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
via
1.1 286eb4b50e0acf373dd03645aee00b7f.cloudfront.net (CloudFront)
x-amz-cf-pop
FRA2-C2
status
200
x-cache
Miss from cloudfront
content-type
image/gif
access-control-allow-origin
http://movableink.com
access-control-expose-headers
X-Error
cache-control
no-store, no-cache, must-revalidate, max-age=0,post-check=0, pre-check=0
content-length
42
x-amz-cf-id
8dsc3-igBIC5kenzeZSjHDl5g87t1H16a0ttXxf4R-7MtPr9XgZ-OA==
x-uuid
f8048d86-91f1-4dd6-8985-b4397373715b
main.a37a8bbc.js
s.pinimg.com/ct/lib/
45 KB
16 KB
Script
General
Full URL
https://s.pinimg.com/ct/lib/main.a37a8bbc.js
Requested by
Host: s.pinimg.com
URL: https://s.pinimg.com/ct/core.js
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:180::1931 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
/
Resource Hash
5e8923354dc828bba8fd3a84f1fed88a4b7095207803798b521710119bf347da

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

content-encoding
gzip
x-cdn
akamai
etag
"dca924303eac8ed14b9cb0fa8819af3d"
vary
Accept-Encoding, Origin
content-type
application/javascript
status
200
cache-control
max-age=1209600
x-fallback
39741f5d-2.16.187.12
accept-ranges
bytes
content-length
16477
/
www.google.com/pagead/1p-user-list/1071871169/
42 B
119 B
Image
General
Full URL
https://www.google.com/pagead/1p-user-list/1071871169/?random=1587038099909&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=650999856&resp=GooglemKTybQhCsO&rmt_tld=0&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:81a::2004 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.google.de/pagead/1p-user-list/1071871169/
42 B
110 B
Image
General
Full URL
https://www.google.de/pagead/1p-user-list/1071871169/?random=1587038099909&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=650999856&resp=GooglemKTybQhCsO&rmt_tld=1&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.google.com/pagead/1p-user-list/1018012790/
42 B
119 B
Image
General
Full URL
https://www.google.com/pagead/1p-user-list/1018012790/?random=1587038099914&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=1571754264&resp=GooglemKTybQhCsO&rmt_tld=0&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:81a::2004 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.google.de/pagead/1p-user-list/1018012790/
42 B
110 B
Image
General
Full URL
https://www.google.de/pagead/1p-user-list/1018012790/?random=1587038099914&cv=9&fst=1587034800000&num=1&bg=ffffff&guid=ON&eid=376635470&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_his=2&u_tz=120&u_java=false&u_nplug=0&u_nmime=0&gtm=2od480&sendb=1&data=event%3Dgtag.config&frm=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&tiba=Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s&async=1&fmt=3&is_vtc=1&random=1571754264&resp=GooglemKTybQhCsO&rmt_tld=1&ipr=y
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:814::2003 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
Security Headers
Name Value
Content-Security-Policy script-src 'none'; object-src 'none'
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
200
cache-control
no-cache, no-store, must-revalidate
content-security-policy
script-src 'none'; object-src 'none'
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
42
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
/
www.facebook.com/tr/
44 B
101 B
Image
General
Full URL
https://www.facebook.com/tr/?id=831984583490556&ev=PageView&dl=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&rl=&if=false&ts=1587038100375&sw=1600&sh=1200&v=2.9.15&r=stable&a=sig&ec=0&o=30&fbp=fb.1.1587038100374.1235962507&it=1587038099858&coo=false&rqm=GET
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a03:2880:f12d:83:face:b00c:0:25de , Ireland, ASN32934 (FACEBOOK, US),
Reverse DNS
Software
proxygen-bolt /
Resource Hash
10d8d42d73a02ddb877101e72fbfa15a0ec820224d97cedee4cf92d571be5caa
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT, Thu, 16 Apr 2020 11:55:00 GMT
last-modified
Fri, 21 Dec 2012 00:00:01 GMT
server
proxygen-bolt
strict-transport-security
max-age=31536000; includeSubDomains
content-type
image/gif
status
200
cache-control
no-cache, must-revalidate, max-age=0
alt-svc
h3-27=":443"; ma=3600
content-length
44
expires
Thu, 16 Apr 2020 11:55:00 GMT
monitor
conductor.clicktale.net/
1 B
251 B
Other
General
Full URL
https://conductor.clicktale.net/monitor?t=preinit&p=271&2=4656984026966750&v=1.5.5&7=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&3=4654685683760424&4=4229464860558355&5=0
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www/monitor-latest.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.2.41.57 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-52-2-41-57.compute-1.amazonaws.com
Software
/
Resource Hash
36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

Access-Control-Allow-Origin
https://www.kohls.com
Date
Thu, 16 Apr 2020 11:55:00 GMT
Access-Control-Allow-Credentials
true
Connection
keep-alive
Access-Control-Allow-Headers
*
Content-Length
1
Content-Type
text/plain
monitor
conductor.clicktale.net/
1 B
260 B
XHR
General
Full URL
https://conductor.clicktale.net/monitor?t=auth&p=271&2=4656984026966750&v=1.5.5
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.2.41.57 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-52-2-41-57.compute-1.amazonaws.com
Software
/
Resource Hash
36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

Date
Thu, 16 Apr 2020 11:55:00 GMT
Vary
*
Content-Type
text/plain
Access-Control-Allow-Origin
https://www.kohls.com
Access-Control-Allow-Credentials
true
Connection
keep-alive
Access-Control-Allow-Headers
*
Content-Length
1
ChangeMonitor-latest.js
cdnssl.clicktale.net/www/
47 KB
16 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www/ChangeMonitor-latest.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Microsoft-IIS/8.5 /
Resource Hash
1958bb7f293956e7170f639ce93a3d628ae465fa24fd751e1a2b3cd837059ffa

Request headers

User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Origin
https://www.kohls.com

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Thu, 20 Feb 2020 17:06:57 GMT
server
Microsoft-IIS/8.5
status
200
etag
"808e442810e8d51:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
max-age=86400
accept-ranges
bytes
content-length
15711
expires
Fri, 17 Apr 2020 11:55:00 GMT
/
ing-district.clicktale.net/ctn_v2/auth/
265 B
413 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/auth/?pid=24&as=1&1463781512&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
b778519d9dad8637ad3fa0ed4936e73b0f34a26cc5e8fafbb53f7b2c434b56b3

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:00 GMT
access-control-allow-credentials
true
access-control-allow-origin
https://www.kohls.com
content-length
265
content-type
application/json; charset=UTF-8
455679.gif
idsync.rlcdn.com/
0
40 B
Image
General
Full URL
https://idsync.rlcdn.com/455679.gif?partner_uid=19b14515-7fd9-11ea-b673-42010a246608
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
35.190.72.21 Mountain View, United States, ASN15169 (GOOGLE, US),
Reverse DNS
21.72.190.35.bc.googleusercontent.com
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
204
date
Thu, 16 Apr 2020 11:55:00 GMT
via
1.1 google
alt-svc
clear
/
www.ojrq.net/p/
50 B
415 B
Image
General
Full URL
https://www.ojrq.net/p/?return=&cid=5349&tpsync=no
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
34.95.127.121 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
121.127.95.34.bc.googleusercontent.com
Software
/
Resource Hash
ec34cd386427fe6deacf99f4fdbeea4b1d1ed25f505411650d7ceaa843a7fc63

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
via
1.1 google
server
p3p
policyref="\/w3c/p3p.xml", CP="ALL BUS LEG DSP COR ADM CUR DEV PSA OUR NAV INT"
status
200
cache-control
no-store, no-cache, must-revalidate, post-check=0, pre-check=0
content-type
image/gif
alt-svc
clear
content-length
50
expires
Thu, 16 Apr 2020 11:55:00 GMT
adsct
analytics.twitter.com/i/
31 B
118 B
Script
General
Full URL
https://analytics.twitter.com/i/adsct?p_id=Twitter&p_user_id=0&txn_id=nuubl&events=%5B%5B%22pageview%22%2C%7B%7D%5D%5D&tw_sale_amount=0&tw_order_quantity=0&tw_iframe_status=0&tpx_cb=twttr.conversion.loadPixels&tw_document_href=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men
Requested by
Host: static.ads-twitter.com
URL: https://static.ads-twitter.com/uwt.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
104.244.42.195 , United States, ASN13414 (TWITTER, US),
Reverse DNS
Software
tsa_o /
Resource Hash
df3e003cc30e9bdd0313100e8ee5d468070b4b34d11ad355f276a356d4b9c7bf
Security Headers
Name Value
Strict-Transport-Security max-age=631138519
X-Content-Type-Options nosniff
X-Frame-Options SAMEORIGIN
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
p3p
CP="CAO DSP LAW CURa ADMa DEVa TAIa PSAa PSDa IVAa IVDa OUR BUS IND UNI COM NAV INT"
status
200, 200 OK
x-twitter-response-tags
BouncerCompliant
strict-transport-security
max-age=631138519
content-length
57
x-xss-protection
0
x-response-time
115
pragma
no-cache
last-modified
Thu, 16 Apr 2020 11:55:00 GMT
server
tsa_o
x-frame-options
SAMEORIGIN
content-type
application/javascript;charset=utf-8
cache-control
no-cache, no-store, must-revalidate, pre-check=0, post-check=0
x-connection-hash
a90c129d31a8ba780b812fbd16400655
x-transaction
00f537d2006b5857
expires
Tue, 31 Mar 1981 05:00:00 GMT
adsct
t.co/i/
43 B
124 B
Image
General
Full URL
https://t.co/i/adsct?p_id=Twitter&p_user_id=0&txn_id=nuubl&events=%5B%5B%22pageview%22%2C%7B%7D%5D%5D&tw_sale_amount=0&tw_order_quantity=0&tw_iframe_status=0
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
104.244.42.197 , United States, ASN13414 (TWITTER, US),
Reverse DNS
Software
tsa_o /
Resource Hash
ac8778041fdb7f2e08ceb574c9a766247ea26f1a7d90fa854c4efcf4b361a957
Security Headers
Name Value
Strict-Transport-Security max-age=0
X-Content-Type-Options nosniff
X-Frame-Options SAMEORIGIN
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
status
200, 200 OK
x-twitter-response-tags
BouncerCompliant
content-length
65
x-xss-protection
0
x-response-time
117
pragma
no-cache
last-modified
Thu, 16 Apr 2020 11:55:00 GMT
server
tsa_o
x-frame-options
SAMEORIGIN
strict-transport-security
max-age=0
content-type
image/gif;charset=utf-8
cache-control
no-cache, no-store, must-revalidate, pre-check=0, post-check=0
x-connection-hash
7c043490196355b201d685743035c7b2
x-transaction
0002e588000db212
expires
Tue, 31 Mar 1981 05:00:00 GMT
/
ct.pinterest.com/user/
35 B
352 B
XHR
General
Full URL
https://ct.pinterest.com/user/?tid=2616391205865&pd=%7B%22em%22%3A%22a683c5c5349f6f7fb903ba8a9e7e55d0ba1b8f03579f95be83f4954c33e81098%22%7D&cb=1587038100487
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
23.213.164.234 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-213-164-234.deploy.static.akamaitechnologies.com
Software
/
Resource Hash
37b17c5135a176a9474521af147d96dfa1fb4ca0f43f00d1400bd1885be3ab9b
Security Headers
Name Value
Strict-Transport-Security max-age=31536000 ; includeSubDomains ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-cdn
akamai
status
200
strict-transport-security
max-age=31536000 ; includeSubDomains ; preload
content-type
image/gif
access-control-allow-origin
https://www.kohls.com
access-control-expose-headers
Epik
cache-control
no-cache,no-store,must-revalidate,max-age=0
access-control-allow-credentials
true
x-envoy-upstream-service-time
3
content-length
35
x-pinterest-rid
7041930887101833
expires
Sat, 01 Jan 2000 00:00:00 GMT
/
ct.pinterest.com/v3/
35 B
282 B
Image
General
Full URL
https://ct.pinterest.com/v3/?tid=2616391205865&pd=%7B%22em%22%3A%22a683c5c5349f6f7fb903ba8a9e7e55d0ba1b8f03579f95be83f4954c33e81098%22%7D&event=init&ad=%7B%22loc%22%3A%22https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men%22%2C%22ref%22%3A%22%22%2C%22if%22%3Afalse%2C%22sh%22%3A1200%2C%22sw%22%3A1600%7D&cb=1587038100490
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
23.213.164.234 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-213-164-234.deploy.static.akamaitechnologies.com
Software
/
Resource Hash
37b17c5135a176a9474521af147d96dfa1fb4ca0f43f00d1400bd1885be3ab9b
Security Headers
Name Value
Strict-Transport-Security max-age=31536000 ; includeSubDomains ; preload

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:00 GMT
x-cdn
akamai
status
200
strict-transport-security
max-age=31536000 ; includeSubDomains ; preload
content-type
image/gif
access-control-allow-origin
*
cache-control
no-cache,no-store,must-revalidate,max-age=0
x-envoy-upstream-service-time
6
content-length
35
x-pinterest-rid
3088715299854377
expires
Sat, 01 Jan 2000 00:00:00 GMT
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
Other
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735592320123603&24&10&8&0&6&9&subsid=233441&msgsize=120
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www/WR-latest.js
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain;charset=UTF-8

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:00 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
pixel.gif
static.criteo.net/images/
43 B
260 B
Image
General
Full URL
https://static.criteo.net/images/pixel.gif?ch=1
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
178.250.0.130 , France, ASN44788 (ASN-CRITEO-EUROPE, FR),
Reverse DNS
Software
nginx /
Resource Hash
b1442e85b03bdcaf66dc58c7abb98745dd2687d86350be9a298a1d9382ac849b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
last-modified
Tue, 09 Dec 2008 16:52:36 GMT
server
nginx
etag
"493ea254-2b"
status
200
content-type
image/gif
access-control-allow-origin
*
cache-control
max-age=31104000, public
accept-ranges
bytes
timing-allow-origin
*
content-length
43
expires
Sun, 11 Apr 2021 11:55:00 GMT
pixel.gif
static.criteo.net/images/
43 B
260 B
Image
General
Full URL
https://static.criteo.net/images/pixel.gif?ch=2
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
178.250.0.130 , France, ASN44788 (ASN-CRITEO-EUROPE, FR),
Reverse DNS
Software
nginx /
Resource Hash
b1442e85b03bdcaf66dc58c7abb98745dd2687d86350be9a298a1d9382ac849b

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
last-modified
Tue, 09 Dec 2008 16:52:36 GMT
server
nginx
etag
"493ea254-2b"
status
200
content-type
image/gif
access-control-allow-origin
*
cache-control
max-age=31104000, public
accept-ranges
bytes
timing-allow-origin
*
content-length
43
expires
Sun, 11 Apr 2021 11:55:00 GMT
184399-89471702884776.js
js-sec.indexww.com/ht/p/
124 KB
37 KB
Script
General
Full URL
https://js-sec.indexww.com/ht/p/184399-89471702884776.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
23.213.15.82 , United States, ASN16625 (AKAMAI-AS, US),
Reverse DNS
a23-213-15-82.deploy.static.akamaitechnologies.com
Software
Apache /
Resource Hash
2039082ed79cca9faa87a80ebbf516502cda4ca08c67f1ef46b718fee79b47f3

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Date
Thu, 16 Apr 2020 11:55:01 GMT
Content-Encoding
gzip
Last-Modified
Thu, 16 Apr 2020 11:50:57 GMT
Server
Apache
ETag
"764926-1f1b5-5a3670bb63fd0"
Vary
Accept-Encoding
P3P
policyref="/w3c/p3p.xml", CP="NOI DSP COR DEVa TAIa OUR BUS UNI"
Cache-Control
max-age=3600
Connection
keep-alive
Accept-Ranges
bytes
Content-Type
text/javascript
Content-Length
37249
Expires
Thu, 16 Apr 2020 12:55:01 GMT
gpt.js
www.googletagservices.com/tag/js/
43 KB
15 KB
Script
General
Full URL
https://www.googletagservices.com/tag/js/gpt.js
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
eb58c24dafb31a0da4f20e72962f44b77c097c20d0f819ddfda8dae60bc8c899
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"487 / 253 of 1000 / last-modified: 1586794212"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=900, stale-while-revalidate=3600
timing-allow-origin
*
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
14738
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:00 GMT
integrator.js
adservice.google.de/adsid/
109 B
171 B
Script
General
Full URL
https://adservice.google.de/adsid/integrator.js?domain=www.kohls.com
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
0482a98d09daebc18a0d2e1ed8f748da5b0179e61223ed541101df1f4699f073
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
p3p
CP="This is not a P3P policy! See http://support.google.com/accounts/answer/151657 for more info."
status
200
cache-control
private, no-cache, no-store
content-disposition
attachment; filename="f.txt"
content-type
application/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
104
x-xss-protection
0
integrator.js
adservice.google.com/adsid/
109 B
171 B
Script
General
Full URL
https://adservice.google.com/adsid/integrator.js?domain=www.kohls.com
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
0482a98d09daebc18a0d2e1ed8f748da5b0179e61223ed541101df1f4699f073
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
p3p
CP="This is not a P3P policy! See http://support.google.com/accounts/answer/151657 for more info."
status
200
cache-control
private, no-cache, no-store
content-disposition
attachment; filename="f.txt"
content-type
application/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
104
x-xss-protection
0
pubads_impl_2020041301.js
securepubads.g.doubleclick.net/gpt/
170 KB
62 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020041301.js
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
2509e1fab122ab1da7638525c286e70864ffa11bb66af495c4a840ffdabe8e11
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Mon, 13 Apr 2020 13:08:44 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
63818
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:00 GMT
WR1031b.js
cdnssl.clicktale.net/www/
91 KB
30 KB
Script
General
Full URL
https://cdnssl.clicktale.net/www/WR1031b.js
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www/WR-latest.js
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
2a02:26f0:6c00:19f::2db0 , Ascension Island, ASN20940 (AKAMAI-ASN1, US),
Reverse DNS
Software
Microsoft-IIS/8.5 /
Resource Hash
d6887aae055eff5ba1d8eeb653fc7c2ba7f6c4831d2f06ee20b5dd1e45178273

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
last-modified
Thu, 26 Mar 2020 17:50:39 GMT
server
Microsoft-IIS/8.5
status
200
etag
"80418ff973d61:0"
vary
Accept-Encoding
content-type
application/javascript
access-control-allow-origin
*
cache-control
max-age=86400
accept-ranges
bytes
content-length
30060
expires
Fri, 17 Apr 2020 11:55:00 GMT
7270cece-cdae-4e62-86b0-c6fb5c9a7fd4
https://www.kohls.com/
0
0
Other
General
Full URL
blob:https://www.kohls.com/7270cece-cdae-4e62-86b0-c6fb5c9a7fd4
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www/WR1031b.js
Protocol
BLOB
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Length
0
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735598808187104&24&10&0&0&0&8&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:01 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735598808187104&24&10&1&0&1&8&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:01 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735598808187104&24&10&2&0&2&8&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:01 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
id
dpm.demdex.net/
8 KB
3 KB
XHR
General
Full URL
https://dpm.demdex.net/id?d_visid_ver=4.3.0&d_fieldgroup=AAM&d_rtbd=json&d_ver=2&d_orgid=F0EF5E09512D2CD20A490D4D%40AdobeOrg&d_nsid=0&d_mid=66348673173402914051624183315367216025&d_blob=RKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y&d_cid_ic=mcvid%012735598808187104&ts=1587038100820
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
18.202.93.59 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-18-202-93-59.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
018605e2c4079ea69c712cc1b939391e684094fc608d216de84805f40dbd1156
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded

Response headers

DCS
dcs-prod-irl1-v065-0fa00df18.edge-irl1.demdex.com 5.66.0.20200408080925 3ms (+1ms)
Pragma
no-cache
Strict-Transport-Security
max-age=31536000; includeSubDomains
Content-Encoding
gzip
X-TID
FGK3wSEFQJM=
Vary
Origin, Accept-Encoding, User-Agent
P3P
policyref="/w3c/p3p.xml", CP="NOI NID CURa ADMa DEVa PSAa PSDa OUR SAMa BUS PUR COM NAV INT"
Access-Control-Allow-Origin
https://www.kohls.com
Cache-Control
no-cache,no-store,must-revalidate,max-age=0,proxy-revalidate,no-transform,private
Access-Control-Allow-Credentials
true
Connection
keep-alive
Content-Type
application/json;charset=utf-8
Content-Length
2236
Expires
Thu, 01 Jan 1970 00:00:00 GMT
ads
securepubads.g.doubleclick.net/gampad/
38 KB
10 KB
XHR
General
Full URL
https://securepubads.g.doubleclick.net/gampad/ads?gdfp_req=1&pvsid=2243590954266331&correlator=2094978346067868&output=ldjh&impl=fifs&adsid=NT&eid=21065867%2C21064371&vrg=2020041301&guci=1.2.0.0.2.2.0.0&sc=1&sfv=1-0-37&ecs=20200416&iu_parts=17763952%2Cclothing&enc_prev_ius=%2F0%2F1%2C%2F0%2F1%2C%2F0%2F1%2C%2F0%2F1%2C%2F0%2F1&prev_iu_szs=1x1%2C160x600%2C300x250%2C300x250%2C320x50%7C1024x45%7C1024x64%7C1024x128&fluid=0%2C0%2C0%2C0%2Cheight&ists=16&prev_scp=pos%3Dwallpaper%7Cpos%3Dleft%7Cpos%3Dbottomleft%7Cpos%3Dbottomright%7Cpos%3Dmarquee&cust_params=pgtype%3Dsevent%26pgname%3Dmens-clothing.jsp%26gen%3Dmens%26channel%3Ddesktop%26env%3Dprod&cookie_enabled=1&bc=31&abxe=1&lmt=1587038100&dt=1587038100910&dlt=1587038095984&idt=4856&frm=20&biw=1585&bih=1200&oid=3&adxs=0%2C281%2C531%2C930%2C-9&adys=0%2C2100%2C4016%2C4016%2C-9&adks=4004583564%2C3033452844%2C636752327%2C2623260883%2C1745468209&ucis=1%7C2%7C3%7C4%7C5&ifi=1&u_tz=120&u_his=2&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_sd=1&flash=0&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&dssz=161&icsg=52564672384000&mso=512&std=21&vis=1&dmc=8&scr_x=0&scr_y=0&psz=1585x5731%7C166x2424%7C798x314%7C798x314%7C0x-1&msz=1585x1%7C166x600%7C300x250%7C300x250%7C0x-1&ga_vid=463304423.1587038101&ga_sid=1587038101&ga_hid=633738092&fws=0%2C0%2C0%2C0%2C2&ohw=0%2C0%2C0%2C0%2C0
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
cafe /
Resource Hash
7abb9e6750bbf26d30d9e4e12de2c5609529887140c6a5ceb0b6e6c52a7bae6b
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
br
x-content-type-options
nosniff
google-mediationgroup-id
-2,-2,-2,-2,-2
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
10432
x-xss-protection
0
google-lineitem-id
5341468205,5235292292,5037969354,5338295166,5276570810
pragma
no-cache
server
cafe
google-mediationtag-id
-2
google-creative-id
138308429281,103006517592,110276339832,138307873913,138300936806
content-type
text/plain; charset=UTF-8
access-control-allow-origin
https://www.kohls.com
access-control-expose-headers
x-google-amp-ad-validated-version
cache-control
no-cache, must-revalidate
access-control-allow-credentials
true
timing-allow-origin
*
expires
Fri, 01 Jan 1990 00:00:00 GMT
pubads_impl_rendering_2020041301.js
securepubads.g.doubleclick.net/gpt/
66 KB
24 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
9ec2d7e2da63fce8da6bb3d53873affa9e0b965d74f65dbbd833ccbf1e5e79e7
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:00 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Mon, 13 Apr 2020 13:08:44 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
24808
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:00 GMT
container.html
tpc.googlesyndication.com/safeframe/1-0-37/html/
0
0
Other
General
Full URL
https://tpc.googlesyndication.com/safeframe/1-0-37/html/container.html
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
/
Resource Hash

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

osd.js
www.googletagservices.com/activeview/js/current/
74 KB
28 KB
Script
General
Full URL
https://www.googletagservices.com/activeview/js/current/osd.js?cb=%2Fr20100101
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
2565892bc9a7c05ac215b1784631317b1c0a8c7a91986394662768a6d4dab1d9
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1586950235212681"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
28446
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
view
securepubads.g.doubleclick.net/pcs/ Frame 56BC
0
0
Fetch
General
Full URL
https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjstfb2UyIYSJjBZhVDS1jnf7RHvtqBP6gXZ8flsWdOEXn91DvemPIxtKp1ImZxo9ifKnl497vSz2I7NWjTsavE_VzfWKAVERdpmRgId-TfeiLBi-PLzwNJnWM8_6_8l79bRUjBYIuZBulO2-v5lStq9f3chokutdy6oCNkdSnCbHfgmr1F2FuIO8USTLgooJq16SaAV1ueHGLIn7SH4hdEHDgO9pDBCC1DxtAladJDzsAKX3SYHgoIZKPZszgQ&sig=Cg0ArKJSzKVjMHEtjaYDEAE&urlfix=1&adurl=
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
cafe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
x-content-type-options
nosniff
server
cafe
status
200
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
access-control-allow-origin
*
cache-control
private
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
gpt.js
www.googletagservices.com/tag/js/ Frame 56BC
42 KB
14 KB
Script
General
Full URL
https://www.googletagservices.com/tag/js/gpt.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
bd2da9fc69887da8658af5688aacaf16bf76541964f19fb40c22497855e15740
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"487 / 462 of 1000 / last-modified: 1586794147"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=900, stale-while-revalidate=3600
timing-allow-origin
*
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
14292
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
osd_listener.js
www.googletagservices.com/activeview/js/current/ Frame 56BC
74 KB
28 KB
Script
General
Full URL
https://www.googletagservices.com/activeview/js/current/osd_listener.js?cache=r20110914
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
0b502dbf33a515f9b0fd2a857166c6bb00e41b8dfc07bfa8ef194224fd266b7e
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1586950235212681"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
28756
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
view
securepubads.g.doubleclick.net/pcs/ Frame 0802
0
0
Fetch
General
Full URL
https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjsvPmOA4qIpoof36joa4S8SihDi7Txm6O_WJRHjq6unDTpn8roLMe63ypQCrBh4FBgSNis8nDyZDRTTKbqssvwcRHDyRyoNtYxp-K8V3FeOGM0wAcqD3_C6Q_xSG-G5vYYtXqMP3M8a7pQlX5xdbOPFJg47hQrGGbG7z71w6GaJbVWAy3Tp7s2l4dyuMzL9tvcTCH_7o1T7gjSrv1ed5uNDzwMiCiRB7Ea77H4Nk8r-5d3Qa5LYa6SQx2nkoRQ&sig=Cg0ArKJSzFhTnR8cqkcOEAE&urlfix=1&adurl=
Requested by
Host: www.kohls.com
URL: https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
cafe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
x-content-type-options
nosniff
server
cafe
status
200
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
access-control-allow-origin
*
cache-control
private
content-type
image/gif
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
gpt.js
www.googletagservices.com/tag/js/ Frame 0802
42 KB
14 KB
Script
General
Full URL
https://www.googletagservices.com/tag/js/gpt.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
c6ba54328814f6711f0b616c6a931b5b307dc543271e713e4d8b63f34e6ae543
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"487 / 198 of 1000 / last-modified: 1586794212"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=900, stale-while-revalidate=3600
timing-allow-origin
*
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
14292
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
osd_listener.js
www.googletagservices.com/activeview/js/current/ Frame 0802
74 KB
28 KB
Script
General
Full URL
https://www.googletagservices.com/activeview/js/current/osd_listener.js?cache=r20110914
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
0b502dbf33a515f9b0fd2a857166c6bb00e41b8dfc07bfa8ef194224fd266b7e
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1586950235212681"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
28756
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
container.html
tpc.googlesyndication.com/safeframe/1-0-37/html/ Frame 7629
0
0
Document
General
Full URL
https://tpc.googlesyndication.com/safeframe/1-0-37/html/container.html
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

:method
GET
:authority
tpc.googlesyndication.com
:scheme
https
:path
/safeframe/1-0-37/html/container.html
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
accept-ranges
bytes
vary
Accept-Encoding
content-encoding
gzip
content-type
text/html
timing-allow-origin
*
content-length
2973
date
Thu, 16 Apr 2020 11:43:13 GMT
expires
Fri, 16 Apr 2021 11:43:13 GMT
last-modified
Thu, 21 Nov 2019 16:01:11 GMT
x-content-type-options
nosniff
server
sffe
x-xss-protection
0
cache-control
public, immutable, max-age=31536000
age
708
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
px
s.thebrighttag.com/
35 B
353 B
Image
General
Full URL
https://s.thebrighttag.com/px?site=4DPyaxM&referrer=onsitead%3Adesktop&adcreativeid=138308429281&adorderid=2681903416&adunitid=16771032&advertiserid=4404569975&lineitemid=5341468205&rand=188511949
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, CHACHA20_POLY1305
Server
34.248.248.83 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-34-248-248-83.eu-west-1.compute.amazonaws.com
Software
nginx /
Resource Hash
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Pragma
no-cache
Date
Thu, 16 Apr 2020 11:55:01 GMT
Server
nginx
P3P
CP=NOI DSP COR NID
Cache-Control
private, must-revalidate
Connection
keep-alive
X-BT-RequestId
1a30fbb1-7fd9-11ea-9ecb-0000ac150902
Content-Type
image/gif
Content-Length
35
Expires
Thu, 01 Jan 1970 00:00:00 GMT
3197102829055753975
tpc.googlesyndication.com/simgad/
Redirect Chain
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcK...
  • https://tpc.googlesyndication.com/simgad/3197102829055753975
52 KB
53 KB
Image
General
Full URL
https://tpc.googlesyndication.com/simgad/3197102829055753975
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
2043e5b3a41cef91b1463a3597613e373da56c152075d4f8f1c152e207bc5023
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Tue, 14 Apr 2020 13:57:23 GMT
x-content-type-options
nosniff
age
165458
x-dns-prefetch-control
off
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
53750
x-xss-protection
0
last-modified
Fri, 03 Apr 2020 14:04:39 GMT
server
sffe
content-type
image/jpeg
access-control-allow-origin
*
cache-control
public, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
expires
Wed, 14 Apr 2021 13:57:23 GMT

Redirect headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
x-content-type-options
nosniff
server
cafe
status
302
location
https://tpc.googlesyndication.com/simgad/3197102829055753975
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
access-control-allow-origin
*
cache-control
private
content-type
text/html; charset=UTF-8
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
17538165024363267041
tpc.googlesyndication.com/simgad/
Redirect Chain
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcK...
  • https://tpc.googlesyndication.com/simgad/17538165024363267041
96 KB
96 KB
Image
General
Full URL
https://tpc.googlesyndication.com/simgad/17538165024363267041
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
fdce4bf519c6f2efacf25f269b0665de304c935cc25128986f222342c11283b9
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Tue, 14 Apr 2020 13:57:23 GMT
x-content-type-options
nosniff
age
165458
x-dns-prefetch-control
off
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
98008
x-xss-protection
0
last-modified
Fri, 03 Apr 2020 14:04:47 GMT
server
sffe
content-type
image/jpeg
access-control-allow-origin
*
cache-control
public, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
expires
Wed, 14 Apr 2021 13:57:23 GMT

Redirect headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
x-content-type-options
nosniff
server
cafe
status
302
location
https://tpc.googlesyndication.com/simgad/17538165024363267041
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
access-control-allow-origin
*
cache-control
private
content-type
text/html; charset=UTF-8
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
16045082179982752651
tpc.googlesyndication.com/simgad/
Redirect Chain
  • https://securepubads.g.doubleclick.net/pcs/view?xai=AKAOjssgcqV7xZUngUdhL228qBVQ_GygIdfOZEz04lOwwq4DJrmtX0oG6bAbFWpI8aAOxXLuOJOuZjJzVoQY1vqVD6zk1m-cBAirGYZ_FrpPrxLMiDCi5odUTiDd8gm2cfUz5firNwi3STwcK...
  • https://tpc.googlesyndication.com/simgad/16045082179982752651
101 KB
101 KB
Image
General
Full URL
https://tpc.googlesyndication.com/simgad/16045082179982752651
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
19c4fb8052ffe04e1f5650aab9faee896fca5af6c0c98c42dae24ae853e959f4
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Tue, 14 Apr 2020 13:57:23 GMT
x-content-type-options
nosniff
age
165458
x-dns-prefetch-control
off
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
102960
x-xss-protection
0
last-modified
Fri, 03 Apr 2020 14:04:54 GMT
server
sffe
content-type
image/jpeg
access-control-allow-origin
*
cache-control
public, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
expires
Wed, 14 Apr 2021 13:57:23 GMT

Redirect headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
x-content-type-options
nosniff
server
cafe
status
302
location
https://tpc.googlesyndication.com/simgad/16045082179982752651
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
access-control-allow-origin
*
cache-control
private
content-type
text/html; charset=UTF-8
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
sodar
pagead2.googlesyndication.com/getconfig/
7 KB
5 KB
XHR
General
Full URL
https://pagead2.googlesyndication.com/getconfig/sodar?sv=200&tid=gpt&tv=2020041301&st=env
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
d7b776b985b943c37a6998aa47deb32f3b087233be8a63103368645152813e1a
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
status
200
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
access-control-allow-origin
*
cache-control
private
content-disposition
attachment; filename="f.txt"
content-type
application/json; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5139
x-xss-protection
0
pubads_impl_2020040702.js
securepubads.g.doubleclick.net/gpt/ Frame 56BC
167 KB
61 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
740078cb1778d885689a3108d2ca696b01fd80cb73437528af4ed0dd6e7466b7
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Tue, 07 Apr 2020 20:25:36 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
62521
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
integrator.sync.js
adservice.google.de/adsid/ Frame 56BC
113 B
175 B
Script
General
Full URL
https://adservice.google.de/adsid/integrator.sync.js?domain=www.kohls.com
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ea03bfd7fdda1eac185ebc3e8e74b33065b04c8e0adc48cbbd4136748dbd2742
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
p3p
CP="This is not a P3P policy! See http://support.google.com/accounts/answer/151657 for more info."
status
200
cache-control
private, no-cache, no-store
content-disposition
attachment; filename="f.txt"
content-type
application/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
108
x-xss-protection
0
pubads_impl_2020040702.js
securepubads.g.doubleclick.net/gpt/ Frame 0802
167 KB
61 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js?21065866
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
740078cb1778d885689a3108d2ca696b01fd80cb73437528af4ed0dd6e7466b7
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Tue, 07 Apr 2020 20:25:36 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
62521
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
integrator.sync.js
adservice.google.de/adsid/ Frame 0802
113 B
175 B
Script
General
Full URL
https://adservice.google.de/adsid/integrator.sync.js?domain=www.kohls.com
Requested by
Host: www.googletagservices.com
URL: https://www.googletagservices.com/tag/js/gpt.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
ea03bfd7fdda1eac185ebc3e8e74b33065b04c8e0adc48cbbd4136748dbd2742
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
p3p
CP="This is not a P3P policy! See http://support.google.com/accounts/answer/151657 for more info."
status
200
cache-control
private, no-cache, no-store
content-disposition
attachment; filename="f.txt"
content-type
application/javascript; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
108
x-xss-protection
0
sodar2.js
tpc.googlesyndication.com/sodar/
14 KB
5 KB
Script
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020041301.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
a47f17d6ebbf4621d8fe87ab790d8d8fb5c3086629194d9ff2d64faaa6e46ab6
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1582746470043195"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5456
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
ads
securepubads.g.doubleclick.net/gampad/ Frame 0802
325 B
240 B
XHR
General
Full URL
https://securepubads.g.doubleclick.net/gampad/ads?gdfp_req=1&pvsid=1829775574162073&correlator=2561469807539276&output=ldjh&impl=fif&eid=21065866%2C21064712%2C21065402%2C21065658&vrg=2020040702&guci=1.2.0.0.2.2.0.0&sc=1&sfv=1-0-37&ecs=20200416&iu_parts=7349846%2Ckohls%2CRSX_IAB_300x250&enc_prev_ius=%2F0%2F1%2F2&prev_iu_szs=300x250&prev_scp=clientName%3Dkohls%26adSize%3D300x250&eri=2&cookie=ID%3Dc4fdddc1f63fef86%3AT%3D1587038100%3AS%3DALNI_MaGlfLCJmK1i1dzP78SkyDDBeRtog&cdm=www.kohls.com&bc=31&abxe=1&lmt=1587038101&dt=1587038101352&dlt=1587038101168&idt=149&ea=0&frm=23&biw=1585&bih=1200&isw=300&ish=250&oid=3&adxs=531&adys=4115&adks=722661447&ucis=9e4ekpet5o6n&ifi=1&ifk=286050609&u_tz=120&u_his=2&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_sd=1&flash=0&nhd=1&iag=3&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&top=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&dssz=6&icsg=10&std=0&vis=1&dmc=8&scr_x=0&scr_y=0&ga_vid=1168161451.1587038101&ga_sid=1587038101&ga_hid=182950560&fws=256&ohw=0&btvi=1
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js?21065866
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
cafe /
Resource Hash
b4b6d0d803b03886cb562a38b1f74a9af5cc2df590fb9a0157fec28f6ac5c1f2
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
br
x-content-type-options
nosniff
google-mediationgroup-id
-2
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
146
x-xss-protection
0
google-lineitem-id
-2
pragma
no-cache
server
cafe
google-mediationtag-id
-2
google-creative-id
-2
content-type
text/plain; charset=UTF-8
access-control-allow-origin
https://www.kohls.com
cache-control
no-cache, must-revalidate
access-control-allow-credentials
true
timing-allow-origin
*
expires
Fri, 01 Jan 1990 00:00:00 GMT
pubads_impl_rendering_2020040702.js
securepubads.g.doubleclick.net/gpt/ Frame 0802
64 KB
23 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js?21065866
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js?21065866
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
fb30d19bfdc58c092bdabad889657613116021c0d07e936fdb3e9e5dbd669872
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Tue, 07 Apr 2020 20:25:36 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
23928
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
container.html
tpc.googlesyndication.com/safeframe/1-0-37/html/ Frame 0802
0
0
Other
General
Full URL
https://tpc.googlesyndication.com/safeframe/1-0-37/html/container.html?n=1
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js?21065866
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
/
Resource Hash

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

truncated
/ Frame 0802
215 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
e8deeed70d87a6dceae482f434da81860033bcbc64b597ef1315a8b51762744b

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/png
ads
securepubads.g.doubleclick.net/gampad/ Frame 56BC
324 B
235 B
XHR
General
Full URL
https://securepubads.g.doubleclick.net/gampad/ads?gdfp_req=1&pvsid=3390417129078918&correlator=866708704310848&output=ldjh&impl=fif&eid=21062797&vrg=2020040702&guci=1.2.0.0.2.2.0.0&sc=1&sfv=1-0-37&ecs=20200416&iu_parts=7349846%2Ckohls%2CRSX_IAB_160x600&enc_prev_ius=%2F0%2F1%2F2&prev_iu_szs=160x600&prev_scp=clientName%3Dkohls%26adSize%3D160x600&eri=2&cookie=ID%3Dc4fdddc1f63fef86%3AT%3D1587038100%3AS%3DALNI_MaGlfLCJmK1i1dzP78SkyDDBeRtog&cdm=www.kohls.com&bc=31&abxe=1&lmt=1587038101&dt=1587038101412&dlt=1587038101156&idt=232&ea=0&frm=23&biw=1585&bih=1200&isw=160&ish=600&oid=3&adxs=281&adys=2199&adks=444540742&ucis=jj5x5grqwrq&ifi=1&ifk=3907229225&u_tz=120&u_his=2&u_h=1200&u_w=1600&u_ah=1200&u_aw=1600&u_cd=24&u_sd=1&flash=0&nhd=1&iag=3&url=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&top=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&dssz=6&icsg=10&std=0&vis=1&dmc=8&scr_x=0&scr_y=0&ga_vid=1301148540.1587038101&ga_sid=1587038101&ga_hid=526398404&fws=256&ohw=0&btvi=1
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
cafe /
Resource Hash
9af3bb31e704abc28fb7a916e6f20ccb1a86ead0beea40d6d6ee4d0d684933eb
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
br
x-content-type-options
nosniff
google-mediationgroup-id
-2
p3p
policyref="https://googleads.g.doubleclick.net/pagead/gcn_p3p_.xml", CP="CURa ADMa DEVa TAIo PSAo PSDo OUR IND UNI PUR INT DEM STA PRE COM NAV OTC NOI DSP COR"
status
200
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
144
x-xss-protection
0
google-lineitem-id
-2
pragma
no-cache
server
cafe
google-mediationtag-id
-2
google-creative-id
-2
content-type
text/plain; charset=UTF-8
access-control-allow-origin
https://www.kohls.com
cache-control
no-cache, must-revalidate
access-control-allow-credentials
true
timing-allow-origin
*
expires
Fri, 01 Jan 1990 00:00:00 GMT
pubads_impl_rendering_2020040702.js
securepubads.g.doubleclick.net/gpt/ Frame 56BC
64 KB
23 KB
Script
General
Full URL
https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
172.217.22.66 , United States, ASN15169 (GOOGLE, US),
Reverse DNS
fra15s17-in-f66.1e100.net
Software
sffe /
Resource Hash
fb30d19bfdc58c092bdabad889657613116021c0d07e936fdb3e9e5dbd669872
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
last-modified
Tue, 07 Apr 2020 20:25:36 GMT
server
sffe
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, immutable, max-age=31536000
accept-ranges
bytes
timing-allow-origin
*
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
23928
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
container.html
tpc.googlesyndication.com/safeframe/1-0-37/html/ Frame 56BC
0
0
Other
General
Full URL
https://tpc.googlesyndication.com/safeframe/1-0-37/html/container.html?n=1
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_2020040702.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
/
Resource Hash

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

truncated
/ Frame 56BC
216 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
872b2d153faff6d476391128fa9738f068108962ceef071bf8f36b14d59ddcc3

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Type
image/png
28fd311e-2da7-49e5-9538-8e6a161734ba
https://www.kohls.com/
36 KB
0
Other
General
Full URL
blob:https://www.kohls.com/28fd311e-2da7-49e5-9538-8e6a161734ba
Requested by
Host: cdnssl.clicktale.net
URL: https://cdnssl.clicktale.net/www/WR1031b.js
Protocol
BLOB
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
411c045d2a620b9b58931bcfee6a2345031696ea884ff22ed59a20efd81bd217

Request headers

Referer
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

Content-Length
36838
runner.html
tpc.googlesyndication.com/sodar/sodar2/209/ Frame DF72
0
0
Document
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Requested by
Host: tpc.googlesyndication.com
URL: https://tpc.googlesyndication.com/sodar/sodar2.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

:method
GET
:authority
tpc.googlesyndication.com
:scheme
https
:path
/sodar/sodar2/209/runner.html
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
accept-ranges
bytes
vary
Accept-Encoding
content-encoding
gzip
content-type
text/html
content-length
5727
date
Thu, 16 Apr 2020 11:43:11 GMT
expires
Fri, 16 Apr 2021 11:43:11 GMT
last-modified
Tue, 25 Feb 2020 17:32:01 GMT
x-content-type-options
nosniff
server
sffe
x-xss-protection
0
cache-control
public, max-age=31536000
age
710
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
sodar
pagead2.googlesyndication.com/getconfig/ Frame 0802
7 KB
5 KB
XHR
General
Full URL
https://pagead2.googlesyndication.com/getconfig/sodar?sv=200&tid=gpt&tv=2020040702&st=env
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js?21065866
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
5029b2f11b033b8b3dabc1b565f2cadcf9bc0758f07c250b777f0e907a3f6a5c
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
status
200
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
access-control-allow-origin
*
cache-control
private
content-disposition
attachment; filename="f.txt"
content-type
application/json; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5189
x-xss-protection
0
sodar
pagead2.googlesyndication.com/getconfig/ Frame 56BC
7 KB
5 KB
XHR
General
Full URL
https://pagead2.googlesyndication.com/getconfig/sodar?sv=200&tid=gpt&tv=2020040702&st=env
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:815::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
83470685fccc7de3b2846cb0acd359e4b9e3c88670561bdd745c9319e8d00933
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

timing-allow-origin
*
date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
cafe
status
200
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
access-control-allow-origin
*
cache-control
private
content-disposition
attachment; filename="f.txt"
content-type
application/json; charset=UTF-8
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5180
x-xss-protection
0
identity
api.rlcdn.com/api/
0
0

any
idx.liadm.com/idex/ie/
0
406 B
XHR
General
Full URL
https://idx.liadm.com/idex/ie/any
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.6.27.178 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-52-6-27-178.compute-1.amazonaws.com
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded; charset=UTF-8

Response headers

Access-Control-Allow-Origin
https://www.kohls.com
Date
Thu, 16 Apr 2020 11:55:02 GMT
Access-Control-Allow-Credentials
true
Connection
keep-alive
Strict-Transport-Security
max-age=31536000; includeSubDomains
rid
match.adsrvr.org/track/
109 B
541 B
XHR
General
Full URL
https://match.adsrvr.org/track/rid?ttd_pid=casale&fmt=json&p=184399
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.215.180.197 Dublin, Ireland, ASN16509 (AMAZON-02, US),
Reverse DNS
ec2-52-215-180-197.eu-west-1.compute.amazonaws.com
Software
/
Resource Hash
c59da65b102de55e1292c9477270fc706873d14a8d6fec0ad771c77a35526eee

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
application/x-www-form-urlencoded; charset=UTF-8

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
x-aspnet-version
4.0.30319
status
200
vary
Origin
content-type
application/json; charset=utf-8
access-control-allow-origin
https://www.kohls.com
cache-control
private
access-control-allow-credentials
true
access-control-allow-headers
Origin, X-Requested-With, Content-Type, Content-Length, Content-Encoding, Vary, Cache-Control, Accept
content-length
109
expires
Sat, 16 May 2020 11:55:01 GMT
sodar2.js
tpc.googlesyndication.com/sodar/ Frame 0802
14 KB
5 KB
Script
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js?21065866
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
a47f17d6ebbf4621d8fe87ab790d8d8fb5c3086629194d9ff2d64faaa6e46ab6
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1582746470043195"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5456
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
sodar2.js
tpc.googlesyndication.com/sodar/ Frame 56BC
14 KB
5 KB
Script
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2.js
Requested by
Host: securepubads.g.doubleclick.net
URL: https://securepubads.g.doubleclick.net/gpt/pubads_impl_rendering_2020040702.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
a47f17d6ebbf4621d8fe87ab790d8d8fb5c3086629194d9ff2d64faaa6e46ab6
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT
content-encoding
gzip
x-content-type-options
nosniff
server
sffe
etag
"1582746470043195"
vary
Accept-Encoding
content-type
text/javascript
status
200
cache-control
private, max-age=3000
accept-ranges
bytes
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
5456
x-xss-protection
0
expires
Thu, 16 Apr 2020 11:55:01 GMT
runner.html
tpc.googlesyndication.com/sodar/sodar2/209/ Frame BB37
0
0
Document
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Requested by
Host: tpc.googlesyndication.com
URL: https://tpc.googlesyndication.com/sodar/sodar2.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

:method
GET
:authority
tpc.googlesyndication.com
:scheme
https
:path
/sodar/sodar2/209/runner.html
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
accept-ranges
bytes
vary
Accept-Encoding
content-encoding
gzip
content-type
text/html
content-length
5727
date
Thu, 16 Apr 2020 11:43:11 GMT
expires
Fri, 16 Apr 2021 11:43:11 GMT
last-modified
Tue, 25 Feb 2020 17:32:01 GMT
x-content-type-options
nosniff
server
sffe
x-xss-protection
0
cache-control
public, max-age=31536000
age
710
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
runner.html
tpc.googlesyndication.com/sodar/sodar2/209/ Frame 52A0
0
0
Document
General
Full URL
https://tpc.googlesyndication.com/sodar/sodar2/209/runner.html
Requested by
Host: tpc.googlesyndication.com
URL: https://tpc.googlesyndication.com/sodar/sodar2.js
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:809::2001 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
sffe /
Resource Hash
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

:method
GET
:authority
tpc.googlesyndication.com
:scheme
https
:path
/sodar/sodar2/209/runner.html
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
cross-site
sec-fetch-mode
navigate
sec-fetch-dest
iframe
referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men

Response headers

status
200
accept-ranges
bytes
vary
Accept-Encoding
content-encoding
gzip
content-type
text/html
content-length
5727
date
Thu, 16 Apr 2020 11:43:11 GMT
expires
Fri, 16 Apr 2021 11:43:11 GMT
last-modified
Tue, 25 Feb 2020 17:32:01 GMT
x-content-type-options
nosniff
server
sffe
x-xss-protection
0
cache-control
public, max-age=31536000
age
710
alt-svc
quic=":443"; ma=2592000; v="46,43",h3-Q050=":443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050=":443"; ma=2592000
monitor
conductor.clicktale.net/
1 B
251 B
XHR
General
Full URL
https://conductor.clicktale.net/monitor?t=init&p=271&2=4656984026966750&v=1.5.5
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.2.41.57 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-52-2-41-57.compute-1.amazonaws.com
Software
/
Resource Hash
36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

Access-Control-Allow-Origin
https://www.kohls.com
Date
Thu, 16 Apr 2020 11:55:02 GMT
Access-Control-Allow-Credentials
true
Connection
keep-alive
Access-Control-Allow-Headers
*
Content-Length
1
Content-Type
text/plain
/
www.facebook.com/tr/
44 B
147 B
Image
General
Full URL
https://www.facebook.com/tr/?id=831984583490556&ev=Microdata&dl=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&rl=&if=false&ts=1587038101890&cd[DataLayer]=%5B%5D&cd[Meta]=%7B%22title%22%3A%22Men%27s%20Clothing%3A%20Explore%20Clothes%20For%20Men%20%7C%20Kohl%27s%22%2C%22meta%3Adescription%22%3A%22Enjoy%20free%20shipping%20and%20easy%20returns%20on%20men%27s%20clothing%20from%20Kohl%27s.%20Find%20men%27s%20casual%20and%20formal%20clothing%20including%20jeans%2C%20dress%20pants%2C%20dress%20shirts%20and%20polos.%22%2C%22meta%3Akeywords%22%3A%22%22%7D&cd[OpenGraph]=%7B%7D&cd[Schema.org]=%5B%5D&cd[JSON-LD]=%5B%5D&sw=1600&sh=1200&v=2.9.15&r=stable&a=sig&ec=1&o=30&fbp=fb.1.1587038100374.1235962507&it=1587038099858&coo=false&es=automatic&tm=3&rqm=GET
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a03:2880:f12d:83:face:b00c:0:25de , Ireland, ASN32934 (FACEBOOK, US),
Reverse DNS
Software
proxygen-bolt /
Resource Hash
10d8d42d73a02ddb877101e72fbfa15a0ec820224d97cedee4cf92d571be5caa
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

date
Thu, 16 Apr 2020 11:55:01 GMT, Thu, 16 Apr 2020 11:55:01 GMT
last-modified
Fri, 21 Dec 2012 00:00:01 GMT
server
proxygen-bolt
strict-transport-security
max-age=31536000; includeSubDomains
content-type
image/gif
status
200
cache-control
no-cache, must-revalidate, max-age=0
alt-svc
h3-27=":443"; ma=3600
content-length
44
expires
Thu, 16 Apr 2020 11:55:01 GMT
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735598808187104&24&10&3&1&0&104&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:02 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
/
ing-district.clicktale.net/ctn_v2/wr/
1 B
100 B
XHR
General
Full URL
https://ing-district.clicktale.net/ctn_v2/wr/?2735598808187104&24&10&4&1&1&105&subsid=233441&msgsize=120
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
34.194.211.188 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-34-194-211-188.compute-1.amazonaws.com
Software
/
Resource Hash
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

status
200
date
Thu, 16 Apr 2020 11:55:02 GMT
access-control-allow-origin
*
content-length
1
content-type
text/plain; charset=UTF-8
gen_204
pagead2.googlesyndication.com/pagead/
0
87 B
Image
General
Full URL
https://pagead2.googlesyndication.com/pagead/gen_204?id=sodar2&v=209&t=2&li=gpt_2020041301&jk=2243590954266331&bg=!oKOlo7tYyQO2fAeuyBQCAAAA-lIAAAAamQFZ2r2t5YIUGLbI3HyVjDwRZrUVkZGzSbAJZgU6rC0ax6vl4ZOk56ThMM72UfNGhdrgujHM3tqcNmLfJPyyZFw-JSNTihUDzxIVJHUmdB52br9et9OWUAw6uJ9ujfbQbzXnFCl_HNxYX446Yt7o-Dox1rXd5BQrYZp1f4WtM7MpJsJAJMZK7K0zVqh5Je0hBAArQ9oZswNeEfkjGmbEwIh5nAE9UQRf66rD2GlHHPKn4Yts7bd5W0IaTNBCmYvSMWf-ySy86dDmFAq0Nt09lJlm2JMwIVIETefrs0fKMowSD7-FjpYzgh6PBBJgnmZgfrMEK7oUIXp1Lsa4Lo8MntlvrzjtveMjqJ_PrP0Vnd_6lKmGNUqvkPU6LX7lAAmQA1hs2h0L48FXKUNMlvE_xKLcHQdL8TlnGZM4tx09woCAjoCgyBRtnUqTbjroPE1i14Y-H8JMKpXz9NfO
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:02 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
204
cache-control
no-cache, must-revalidate
content-type
image/gif
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
gen_204
pagead2.googlesyndication.com/pagead/ Frame 0802
0
60 B
Image
General
Full URL
https://pagead2.googlesyndication.com/pagead/gen_204?id=sodar2&v=209&t=2&li=gpt_2020040702&jk=1829775574162073&bg=!NTalNi5YWnZWQMqSAt8CAAAA2VIAAAAemQFf7Wl-HN_Chg9O7hgcxHSLQDswhSBMujgJhgddtmfcKZCYocmXKLIXbIJfS9P5mDHpZpfBJBy2OIfo8X9oJeW-5_hQjBJ2b4R1kEru2o1MNVVzdVMFaDBI_bXEalONLtpH2T9a6y0w9ZgEXDkStbq1mqV7dUNk497WcV_VjYYY_Y1UlQeLXcEDCXGFWu2CeQVA5Rj814vG_yPeES3A0PLCoq0X04jb0saPolqN7rZMqWHErXveWxk-IgVwTTC3cTNHx2zWaAjwKZ2DkWuxt4QslW3-HJ35QYAPwiwsMZ1Amy94z5EhUUEVDuXUMmmOHuGZ4H9uX24LfOIDzSpm3wce7TZ5d3e008jEO0gm8RjEKXWJOGilEtYuTUsqribsZIBnY9kzrCt008K7JYzpU50Ze7T2zTtJYGe2rxjeYHSnoA8HM6vLVk9bT8zv5BkU7VDOdmbmF29RdGBuTeRZZ_qv
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:02 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
204
cache-control
no-cache, must-revalidate
content-type
image/gif
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
gen_204
pagead2.googlesyndication.com/pagead/ Frame 56BC
0
51 B
Image
General
Full URL
https://pagead2.googlesyndication.com/pagead/gen_204?id=sodar2&v=209&t=2&li=gpt_2020040702&jk=3390417129078918&bg=!1tWl1c1YzGFNd14CN6YCAAAA0FIAAAAYmQFf67-qAakFl6INn0axLpq6xpCmSeKglVWyuLYnW8_0vsV5831q5U71SPY75q27-l8vG51KkaclDarBWn0LbE3g4kxu46Pn1IF0RMfM8QhPFcJon-vB5ZtyVeS5fbRvjury8oFru7eGltEwCcpz0RIQMKb2lKXqtAZXpl8CUPVvQA6ovFuPnwfAZCcDkB28KhEux-lLYXDvOd-k56Q5rokgGHsfV_oLeoxbl0LhdAkXkmC2H5o2dHX-DYicYhwDMb4uC6fNYF9CwnoQ9p47z4L0-ENeqlIhNCUsPG9X8FcQFkywAG6D7bsYuA_WFx7ZS1934j8arwIgQyoz_1Tpgqfa9Soke91pF8ClQsvNlA12-YopWuIzi-haiaAmkvRD3GhQaafLUmE4kgvGj1K-_wOrRVOxaBPMBcmBT4VHJK_DbCUwHvR0_S_1dGqt0HC6Nc-XCL_oze7s381QnwQ8Yjrw
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2a00:1450:4001:808::2002 Frankfurt am Main, Germany, ASN15169 (GOOGLE, US),
Reverse DNS
Software
cafe /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
Security Headers
Name Value
X-Content-Type-Options nosniff
X-Xss-Protection 0

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36

Response headers

pragma
no-cache
date
Thu, 16 Apr 2020 11:55:02 GMT
x-content-type-options
nosniff
server
cafe
timing-allow-origin
*
p3p
policyref="https://www.googleadservices.com/pagead/p3p.xml", CP="NOI DEV PSA PSD IVA IVD OTP OUR OTR IND OTC"
status
204
cache-control
no-cache, must-revalidate
content-type
image/gif
alt-svc
quic="googleads.g.doubleclick.net:443"; ma=2592000; v="46,43",quic=":443"; ma=2592000; v="46,43",h3-Q050="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q050=":443"; ma=2592000,h3-Q049="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q049=":443"; ma=2592000,h3-Q048="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q048=":443"; ma=2592000,h3-Q046="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q046=":443"; ma=2592000,h3-Q043="googleads.g.doubleclick.net:443"; ma=2592000,h3-Q043=":443"; ma=2592000,h3-T050="googleads.g.doubleclick.net:443"; ma=2592000,h3-T050=":443"; ma=2592000
content-length
0
x-xss-protection
0
expires
Fri, 01 Jan 1990 00:00:00 GMT
monitor
conductor.clicktale.net/
1 B
251 B
XHR
General
Full URL
https://conductor.clicktale.net/monitor?t=chunk&p=271&2=4656984026966750&v=1.5.5
Requested by
Host: s.go-mpulse.net
URL: https://s.go-mpulse.net/boomerang/4BQ4T-P2CA2-RNGSJ-DLGVP-DF78T
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_128_GCM
Server
52.2.41.57 Ashburn, United States, ASN14618 (AMAZON-AES, US),
Reverse DNS
ec2-52-2-41-57.compute-1.amazonaws.com
Software
/
Resource Hash
36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068

Request headers

Referer
https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
User-Agent
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36
Content-Type
text/plain

Response headers

Access-Control-Allow-Origin
https://www.kohls.com
Date
Thu, 16 Apr 2020 11:55:04 GMT
Access-Control-Allow-Credentials
true
Connection
keep-alive
Access-Control-Allow-Headers
*
Content-Length
1
Content-Type
text/plain

Failed requests

These URLs were requested, but there was no response received. You will also see them in the list above.

Domain
api.rlcdn.com
URL
https://api.rlcdn.com/api/identity?pid=2&rt=envelope

Verdicts & Comments Add Verdict or Comment

730 JavaScript Global Variables

These are the non-standard "global" variables defined on the window object. These can be helpful in identifying possible client-side frameworks and code.

object| onformdata object| onpointerrawupdate boolean| enableTHCOmniture function| $env object| googletag function| _googCsa object| Kjs string| trJsonData object| suites function| jQuery function| $ function| $node function| $module function| $err object| $log function| $requires function| $sync function| $init function| $ready function| $unload object| $load function| createCookie function| getCookie function| $r function| $v function| $s function| $o function| $tf function| OptanonWrapper function| e object| visitor string| tceIsRedesign string| tceIsPDPRedesign boolean| tceIsCNCRedesign function| targetPageParams function| isEmpty function| key function| distinct object| adobe function| Visitor object| s_c_il number| s_c_in object| targetGlobalSettings object| ___target_traces function| mboxCreate function| mboxDefine function| mboxUpdate string| kohls_domain string| saleEventDFPRootNetworkHierarchy object| bd string| BDRecsPrimaryType string| BDRecsProductType string| BDRecsSubType string| BDRecsGender string| cookieId string| atgId string| zipCode string| storeNumber string| K_favstore string| K_favstoreSplit object| mcid string| vId object| saleEventP1Valuesplit string| saleEventP1Value object| recommendationRenderer object| BOOMR_mq string| BOOMR_API_key object| BOOMR number| BOOMR_lstart string| bazadebezolkohpepadr function| getCookieByNames string| prop50_Value function| StyliticsWidget function| Hammer function| TapToSwap function| _typeof2 undefined| R3_COMMON undefined| R3_CATEGORY string| profileId object| ttMETA boolean| tntADDEnabled boolean| tntADD_STDMaxSLA boolean| AccurateDDBoss boolean| tntADD_BOSSMaxSLA boolean| AccurateDD string| s_tnt string| tntVal function| ttMBX undefined| receiveMessage function| getCookieByName string| pagePostalCode object| pageData string| domain1 function| setLoginSuccessCookie string| LoginSuccess object| SCTrackingBean string| brightTagScriptCallURL string| brightTagScriptCallParam function| getUrlVars undefined| page_rr_ads function| isNative function| isTabletDevice function| isMobile function| isMobileDomain function| setNativeCookie undefined| multiSuite string| standardSuite string| mobileCookie string| s_account string| VisitorUsaFullNameCookieValue object| _cf object| _ac object| bmak string| _sd_trace string| urhehlevkedkilrobacf undefined| _jsv function| $$ object| $msg function| $tpl function| $tmpl function| $panel object| $omniture function| AC_AddExtension function| AC_Generateobj function| AC_FL_RunContent function| AC_SW_RunContent function| AC_GetArgs object| swfobject number| a undefined| b number| c object| timeArray function| _getTime function| _calcTime function| _pushTime function| displayMobileFooter function| updateSwitchLink function| handleCookies function| convertHTML function| getParameterByName function| updateParameterByName function| checkSessionforOverlay function| fillProductInfoDetails function| setMiniShoppingCartData function| getCartRequestNeeded function| getCartRequest function| errorCleanUp function| cleanExpErr function| clearExpirationErr function| validatePaymentForm function| validateForm function| validateCity function| validatePhone function| validateZip function| cardExp function| emailErr function| validateSameFields function| validatePasswordFields function| validateEmail function| validateCCNumber function| validateCvvNumber function| validateField string| errorClass string| emailClass string| ccNumClass string| cvvClass string| emailError string| confirmPasswordMessage string| confirmEmailMessage object| mainErrorClass string| ccNumInvalid string| cvvNum string| pinErr string| ccExpClass string| ccExpError object| emailRegEx boolean| valid boolean| emptyEmail boolean| otherPayMode string| validationFieldType string| cityinvalid object| strOnly function| validateRewards string| relativeJsPath function| addCurrency function| addLoyaltyCurrency function| addCurrencyNoDec function| getShippingDetailLabelByMethod function| getAllVgcShipmentItemsCountOrTotal function| cartHasShipItem function| vgcFindOrNot function| openCreateAccountPopup function| invokeSigninPopup function| openFancyboxPopup undefined| xmlHttp undefined| pwpGetProdId undefined| offerType boolean| overlayWidthFlag number| carouselNumber function| redirectToGwpPwpOnClick function| redirectToGwpPwpShoppingBagOnClick function| imageRedirect function| redirectToGwpPwpOnUpdateClick function| redirectOnClick function| redirectToCollectionPage function| redirectToCollectionPWPPage function| redirectOnClickOnCartPage function| createXMLHttpRequest1 function| callForAddOnCartPage function| redirectToCheckOutOnClick function| submitOnClick function| launchBB function| launchSP function| textCounter function| setCardKey function| newWindow function| displayCollectionQuickViewContent function| sc_quickView function| sc_bvTabOpen function| sc_bvQATabOpen function| clearVars function| continueShopping function| createXMLHttpRequest function| addToCartPDP function| checkSessionExpiry function| addToCartPDPPWPSingleSku function| addToCartPDPPWPCollections function| addToCartGwpCollections function| callForAddQuickCollectionBuy function| callForAddQuickCollectionGet function| callForAddQuickPWPCollections function| addToCartQview function| callForAddQuick function| callForAdd function| validateAddToBag function| validateGwpCollectionAddToBag function| addToBagQuickview function| callForAddtoBagQuickSingleSku function| callForAddtoBagQuickMultipleSku function| setProdIdSkuIdToBag function| chkGftItem function| sizeChkGftItem function| redirectSessionTimeOut function| dynamicGWPAddToCart function| callForGwpDynamicMessageDisplay function| dynamicPWPMessageDisplay function| callForPWPDynamicMessageDisplay function| dynamicGWPAddToCartANDMsgDisplay function| offerMesgANDAddToBagDisplay function| formatPinitUrl function| updateViewLargerlink function| loadOfferGetProductsTohiddenParam function| displayYourPriceForGetProduct function| callForYourPriceDisplay undefined| getProductId undefined| buyProductId undefined| productId function| displayMessagesInPDPPage function| callForAkamaiMessages function| displayMessagesForCollectionPage function| callForForCollectionPage function| checkval function| checkval1 function| trackSigninModel function| _addModalFancyboxClasses function| _removeModalFancyboxClasses function| spendTracerOmniture function| orderConfirmOmniture function| getFreeShipDelta function| orderGetShippingSurchargesGiftAndTax function| kcCloseSuccessCallBack2 function| kcCloseErrorCallBack function| kcCloseSuccessCallBack function| preBoxOpen function| gwpGiftFancyboxOpen function| gwpFancyBoxCall function| getGwpContent function| openShipSurchargeTaxModal function| _loadBigData function| openKohlsCashModal function| applyDiscountModal function| mmddyyDateFormat function| callShipSurchargeTaxModal function| promooffer function| bagedititemfocus function| intibagedititem function| isValidEmailAddress function| validation function| captureTabClickUserTracking function| updateProp52WhenLCSServiceDown function| getProp75Data function| captureBrightTagData function| createBrightTagShoppingItems function| createBrightTagProductDetails function| smartCartOmnitureBopusOffer function| loyaltyCustomOmnitureEvent function| AMLoyaltyCustomLink function| birthayPerfCustomLink function| emailOptInOptOutCustomLink function| emailToggleEvent function| convertNumber function| addDecimal function| formatPhoneNumber function| getTotalQuantity function| getTotalQuantityByShipMethod function| successGiftsAndTax function| errorGiftsAndTax function| getMultipleShippingAddresses function| getPrimaryAddress function| isEliteFreeShipping function| isEliteFreeShippingGetOrderDetails function| _isEliteFreeKillSwitchEnabled object| trJson function| onVisaCheckoutReady undefined| newwin number| xpos number| ypos boolean| submitFlag function| buildOptions function| launchNew function| launchExt function| launchDetails function| launch function| launchCorporate function| launchEnlargedBBABImage function| launchEnlargedBBGSImage function| launchEnlargedBBGRImage function| launchEnlargedBBFLImage function| launchSwatch function| launchEnlargedImage function| getMVM function| launchZoom function| launchZoomButton function| checkSubmit function| checkCardSubmit function| checkForCookies function| trackLink function| $box function| $modal object| availableDiscountPanel object| appliedDiscountPanel function| getUrlParameter function| captureUserTrackingData function| getPaymentMonth object| skava object| newProtocol string| parentURL boolean| autoLoginEnabled boolean| skava_popup_status boolean| skava_popup_login_status function| loginstatus function| displayLoginModal function| displayFirstModal function| successActionNew function| displayRecPassModal function| displayRecPassConfirmModal function| validateLogin function| displayLoginErrors function| _handleLoginServerResponse function| validateCreate function| displayCreateErrors function| _handleCreateServerResponse function| validateRecPass function| displayRecPassErrors function| _handleRecPassServerResponse function| isBetween function| setFieldFormatting function| markInvalidLabelAndField function| unmarkInvalidLabelAndField function| validateName function| successAction function| failureAction function| _updateOmnitureLoggedInStatus object| analyticEvents object| pageLoadValues function| trackAnalytics object| s function| s_getObjectID function| s_doPlugins function| AppMeasurement_Module_ActivityMap function| AppMeasurement_Module_AudienceManagement function| AppMeasurement function| s_gi function| s_pgicq function| DIL number| s_objectID number| s_giq function| _setIncentiveRedirectCookie function| _renderRedesignPBDrawer number| BOOMR_onload number| BOOMR_configt undefined| isOldPBLayoutEnabled object| globalPbCart function| _displayStore function| _getGeoStoreCookie function| _getKFavStoreCookie function| _getNearStoreLocation function| _callStoreLocator function| _onSuccess function| _onError function| _setStoreLocationStorages string| newStoreName function| calculateDate function| showLoyaltyMesage string| visitorId string| trackingCookieValue string| eVar39_Value string| userStatus string| eVar70_Value string| eVar71_Value string| eVar73_value string| customerNameCookie string| y2yTablet string| y2yMobile string| y2yDesktop string| eVar42_Value string| prop4_Value string| prop63_Value string| eVar19_Value string| eVar18_Value string| eVar20_Value string| eVar40_Value string| eVar68_Value string| eVar3_Value string| eVar8_Value string| prop9_Value string| pageName_Value string| eVar22_Value string| CartPersistence string| total string| visitorName object| values undefined| visitorBagTotals string| PageUrl function| _more object| dateObj object| date function| redirectSignInToCheckout object| Kohls boolean| isPersonalizeEnabled string| j string| k string| x string| y object| s_i_kohlscomprod string| pathToAssets string| bar_gif string| float_gif string| loading_gif string| tab_1_gif string| bar_gif_retina string| float_gif_retina string| tab_1_gif_retina object| css string| cssText object| OOo string| __nv_agent_version object| $jscomp function| Z1 object| ZineOne function| _enablePushNotification function| checkIfPushSubscriptionExists function| _printSdkVersion function| _setApiKey function| _getApiKey function| _setAccessToken function| _getAccessToken function| _setDomainName function| _setHostName function| _getHostName function| _generateUUID function| _acceptLocation function| _isLocationEnabled function| _initWebPush function| _getZ1Widget function| _getInboxCount function| _getInfo function| _fetchInboxData function| _onInboxDataSuccessful function| _showFAQ function| _onFAQSuccessful function| _openSession function| _onSetCustomerId function| _onSetCustomKey function| _createMessagingLayer function| _pushEvent function| _localStorageSetItem function| _localStorageGetItem object| _webPush object| _loader object| _Session function| _onBodyAction function| _loopThroughGlobalTriggers number| width number| height object| browserInfo function| bt_eval function| bt_parameter function| bt_meta function| bt_cookie function| bt_data function| bt_log function| bt_handle_exception undefined| _bt_url_prefix undefined| _bt_referrer undefined| _bt_site undefined| _bt_mode function| btServe function| bt_data_escaped object| BrightTag function| XMLProfiler object| Zlib object| CAVUA object| CAVNV function| cav_nv_ajax_pg_start function| cav_nv_ajax_pg_end function| cav_nv_pg_ready_cb function| cav_nv_pg_unload_cb function| cav_nv_before_beacon_cb function| cav_nv_after_beacon_cb function| cav_nv_get_session_data function| cav_nv_set_session_data function| cav_nv_add_cb function| cav_nv_set_loginid function| cav_nv_set_sessionid function| cav_nv_set_orderTotal function| cav_nv_set_transactionId function| cav_nv_log_customMetrics function| cav_nv_set_userSegment function| cav_nv_auth function| cav_nv_enable_nd function| cav_nv_log_event object| config undefined| eventNames function| __nativeXHR boolean| __nvjse object| DepartmentManager boolean| __ooc object| google_tag_manager object| dataLayer function| gtag object| google_tag_data number| urlLength number| subUrlLength object| BrTrk function| GooglemKTybQhCsO function| google_trackConversion object| GooglebQhCsO function| extractParamFromUri object| _etmc object| _etmc_temp function| UET object| BTPrivacy object| _comscore string| GoogleAnalyticsObject function| ga function| fbq function| _fbq function| snaptr object| TagDeliveryQueue function| pintrk string| CRL8_SITENAME object| crl8 boolean| clickTaleTagInjected object| uetq string| MovableInkTrack function| mitr string| ire_o function| ire object| gaplugins object| gaGlobal object| gaData function| udm_ object| ns_p object| COMSCORE object| autoMonitorConfig string| ct_pdc_qs_val object| ClickTaleGlobal object| ClickTaleMonitor object| ClickTaleSettings object| ct_dispatcher function| ClickTaleCreateDOMElement function| ClickTaleAppendInHead function| ClickTaleXHTMLCompliantScriptTagCreate function| clickTaleATIntegration function| clickTaleCheckIfATExists undefined| uid undefined| expires undefined| days undefined| cookieName function| ClickTaleOnRecording boolean| isHttps undefined| scriptSource undefined| pccSource string| pccSrc object| pccScriptElement object| ctVEconfig object| ClickTaleOnReadyList boolean| ClickTaleIsXHTMLCompliant boolean| ClickTaleIncludedOnWindowLoad boolean| ClickTaleIncludedOnDOMReady string| ClickTaleScriptSource function| onloaded undefined| ClickTalePrevOnReady function| ClickTaleOnReady string| sfIp function| get_gender function| createShelfContainer object| TagDeliveryContent function| twq object| twtObject object| contentIds function| ImpactRadiusEvent object| irEvent object| CEC string| WRFi number| WRFk number| WRFh number| WRFj object| WRFw number| ClickTaleUnloadPause number| ClickTaleEventsMask string| ClickTaleIgnoreCookieName string| ClickTaleUIDCookieName function| ClickTaleLog function| ClickTale string| ClickTaleCookieDomain function| ClickTaleUploadPage function| ClickTaleDelayUploadPage function| ClickTaleIsUploadPage function| ClickTaleSetAllSensitive function| ClickTaleResetAllSensitive function| ClickTaleSetSomeSensitive function| ClickTaleResetSomeSensitive function| ClickTaleIgnore function| ClickTaleRegisterFormSubmitFailure function| ClickTaleGetVersion function| ClickTaleSetCustomElementID function| ClickTaleRegisterFormSubmitSuccess function| ClickTaleExec function| ClickTaleField function| ClickTaleNote function| ClickTaleTag function| ClickTaleEvent function| ClickTaleGetPID function| ClickTaleSetUID function| ClickTaleGetUID function| ClickTaleGetSID function| ClickTaleUnsubscribe function| ClickTaleSubscribe function| ClickTaleLogical function| ClickTaleDetectAgent function| ClickTaleIsPlayback number| ClickTaleCookieExpiryDays function| ClickTaleIsSavedRecording function| ClickTaleIsRecording function| ClickTaleSendJsonMessage function| ClickTaleDispatchPersistedMessages function| ClickTaleUploadPageNow function| ClickTaleAddAugmentElementPathHandler function| ClickTaleGetAuthResponse function| ClickTaleGetSubscriberId function| ClickTaleGetPartition function| ClickTaleGetWRIgnoreExpiry number| WRInitTime object| ClickTaleFetchFromWithCookies object| ctRules_PrePCC object| ctCustomCode_PrePCC function| doOnlyWhen object| ct boolean| ClickTaleFirstPCCGo function| clickTaleStartEventSignal function| clickTaleEndEventSignal function| ClicktaleIntegrationExperienceHandler object| twttr function| MutationSummary object| ClickTaleOnUploadPageContentFetched object| ClickTaleOnStop string| tagId number| index object| HLLibrary object| ggeac object| closure_memoize_cache_ object| googleToken object| googleIMState object| google_js_reporting_queue function| processGoogleToken function| WRAB function| ClickTaleStop function| ClickTaleTerm function| ClickTaleGetClientIp function| ClickTaleEventTrigger function| ClickTaleRegisterFormSubmit function| ClickTaleRegisterFormSubmitSent function| ClickTaleRegisterFormSubmitNotSent function| ClickTaleRebindEvents function| ClickTaleLogicalForm function| ClickTaleRegisterTouchAction function| ClickTaleRegisterElementAction function| ClickTaleFormDisable function| ClickTaleFormDisableAll function| ClickTaleFormGetInputs function| ClickTaleSendThresholdExceededEvent function| ClickTaleRegisterScroll function| ClickTaleSendImmediate function| ClickTaleRegisterManualEvent function| ClickTaleLogicalWithUploadPage object| WRDt undefined| google_measure_js_timing number| google_srt number| __google_ad_urls_id number| google_unique_id function| Goog_AdSense_getAdAdapterInstance function| Goog_AdSense_OsdAdapter object| __google_ad_urls boolean| google_osd_loaded boolean| google_onload_fired object| ampInaboxIframes object| ampInaboxPendingMessages function| Goog_Osd_UnloadAdBlock function| Goog_Osd_UpdateElementToMeasure function| google_osd_amcb object| GoogleGcLKhOms object| headertag function| headertag_render object| pbjs object| rubicontag object| google_image_requests boolean| clickTaleNotAvailableOnPageWhereOLClicked boolean| clickTaleNeverAvailableOnSite

18 Cookies

Domain/Path Name / Value
.demdex.net/ Name: dextp
Value: 21-1-1587038096880|60-1-1587038096982|358-1-1587038097090|477-1-1587038097191
.demdex.net/ Name: demdex
Value: 61416016324387329012279613710811450033
.kohls.com/ Name: mbox
Value: session#412fcff3138d411f99e0bbe8e74dee0e#1587039957|PC#412fcff3138d411f99e0bbe8e74dee0e.26_0#1650282897
.kohls.com/ Name: AMCV_F0EF5E09512D2CD20A490D4D%40AdobeOrg
Value: -1712354808%7CMCIDTS%7C18369%7CMCMID%7C66348673173402914051624183315367216025%7CMCAAMLH-1587642896%7C6%7CMCAAMB-1587642896%7CRKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y%7CMCOPTOUT-1587045296s%7CNONE%7CMCAID%7CNONE%7CMCSYNCSOP%7C411-18376%7CvVersion%7C4.3.0
.kohls.com/ Name: s_ecid
Value: MCMID%7C66348673173402914051624183315367216025
www.kohls.com/ Name: AKA_RV
Value: 71
.kohls.com/ Name: AMCVS_F0EF5E09512D2CD20A490D4D%40AdobeOrg
Value: 1
.kohls.com/ Name: ak_bmsc
Value: 9568733278707EC12C8BAD27E58143A80210BB15277A00008F47985EFBAD4F26~plYnFZg3qZeqssYAdAK5WpdrOWLOz1JD3e4Gjdn86xgPtDdLCKqiSKotU54NCW3O49sICIPcid0EPQEXT1EFo8eiev/zkR3DjMa00Psrizvt/FEEzXq92e/K+13Sg8HswEv2RM18iLvKyGb3mLGdZjFJ1cgTmAZiQ7WidnKftckgo5ZbSFG1tVSAaZM4oIXw4eIfIKtWC31fGMsl1yry0TP77su6YHoJQi7fYFux5BBTtBxiIIR9E87SSrfMDwsn6za1UyHu5aRdgptCeoRF2GZBdbHDiPmLSwFQ6pIpag28gv+9rpbP4DXpvQba2an3j5wqmFIx3SAnx3ZSD9aLKg/Q==
.kohls.com/ Name: mboxEdgeCluster
Value: 26
.kohls.com/ Name: bm_sz
Value: 2F3E0824CF3D8ECD86A7A388B77EB0BC~YAAQFbsQAvHxqYFxAQAAIIrXggcdKSoIYAQ18eKmxtUkOaC4IWg5yYwwN5bHPRHxL7/uN3lXBYw3rA6tklNn/Alaz2CZDLJX2mkMvAz8udXm0rjX0XBCX07/6qjDQv/0CHrF9ss6iYPhITpiXnQrnohViR/yrO4//AFol9/es95qd2FW/QVHzMHKD0N6Zw==
.kohls.com/ Name: check
Value: true
www.kohls.com/ Name: akavpau_www
Value: 1587038395~id=177a40ba99a9ac464e24fe36ccb2a6d0
www.kohls.com/ Name: mosaic
Value: gcpg
www.kohls.com/ Name: AKA_PDP2
Value: False
.kohls.com/ Name: _abck
Value: F92360FDB6DCD76613CD11D0C66469EA~-1~YAAQFbsQAgDyqYFxAQAApo7XggPl2Rr99GMInJnwajQvQ2WmykNYo2JG3Db48kE5qrJB77ARzyPg2r/HrvmaJVhCIgiJSiAFZs90dQn6jvAhg4ikmr+pOJKvu9Cj+oWXZR51ioZySMBSjTdDTBwekEVqSGBbIanxQzZXiwZqY9e4/P/F2ar3DthK5q3ep5NBYOUtXy4hoiuQoDfaCR+MNe2/fWlWR5qGcZi+kmZQSmZBqLELRIibIE3CVIQAieif1amK4ygcNzd8llajlnU/UqKqi/P71W7Tp8DlQZeOaxkLjLzyDMUHaf76aP03B9pAA8IUh/ivrTE0Rku0h/OLFxPnnOE=~-1~-1~-1
www.kohls.com/sale-event Name: loglevel
Value: SILENT
www.kohls.com/ Name: akacd_www-kohls-com-mosaic-p2
Value: 2177452799~rv=43~id=595c54d1c0459252affe3df921eac8ef
www.kohls.com/ Name: AKA_HP2
Value: True

101 Console Messages

Source Level URL
Text
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data removing failure. TypeError: Cannot read property 'removeItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data setting failure. TypeError: Cannot read property 'setItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api log URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
[INFO][renderer][RecommendationRenderer]: Input Context - {"ccpKeys":{"atgId":"","cookieId":"","mcmId":"","zipCode":"","storeNumber":"","departmentName":"clothing","category":"","subCategory":"","gender":"mens","saleEventType":"mens-clothing"},"placements":{},"apiKey":"NQeOQ7owHHPkdkMkKuH5tPpGu0AvIIOu","channelId":"WebStore","pageId":"SalesEvent"}
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data setting failure. TypeError: Cannot read property 'setItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data setting failure. TypeError: Cannot read property 'setItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data setting failure. TypeError: Cannot read property 'setItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[$log] An early $(document).ready(function() {...}) handler was registered
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[$log] An early $(function() {...}) ready handler was registered
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[startup] No static messages to load for https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men
console-api error URL: https://api-bd.kohls.com/update/ede/assets/experiences/webstore/bd-experience-rendering-sdk.min.js(Line 1)
Message:
LocalStorageManager data getting failure. TypeError: Cannot read property 'getItem' of null
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[panel] Name conflict in component integration with new panel ("Modal" in panel panel1000)
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[panel] Name conflict in component integration with new panel ("Modal" in panel panel1001)
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[$log] $ready called after window load
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 21)
Message:
[requires] (msgRequiresInInit) $requires was called during $init phase. THIS IS NOT RECOMMENDED! Place all $requires calls in load phase.
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[requires] (msgRequiresInInit) $requires was called during $init phase. THIS IS NOT RECOMMENDED! Place all $requires calls in load phase. /wcs-internal/OmnitureAkamai.jsp
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
console.groupEnd
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 21)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error.
console-api error URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error. [object Object]
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
console.groupEnd
console-api log (Line 1)
Message:
[object Object]
console-api log (Line 1)
Message:
#content,#id_pmpMainCont,.pdp-content
console-api log (Line 1)
Message:
#content
console-api log (Line 1)
Message:
#id_pmpMainCont
console-api log (Line 1)
Message:
.pdp-content
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 21)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error.
console-api error URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error. [object Object]
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
console.groupEnd
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[$log] $init called after window load
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[errors] Nested exec call! (2)
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[frame] DOM element ".Enr_Terms" does not exist. It is possibly a dynamic element that has not been created, yet - binding to live event.
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[frame] DOM element ".tellAFriend" does not exist. It is possibly a dynamic element that has not been created, yet - binding to live event.
console-api warning URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[frame] DOM element ".largerView" does not exist. It is possibly a dynamic element that has not been created, yet - binding to live event.
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/s_code.js(Line 55)
Message:
AppMeasurement Debug: https://ww8.kohls.com/b/ss/kohlscomprod/10/JS-2.0.0/s77102725942700?AQB=1&ndh=1&pf=1&callback=s_c_il[1].doPostbacks&et=1&t=16%2F3%2F2020%2013%3A54%3A58%204%20-120&d.&nsid=0&jsonv=1&.d&sdid=563580C3CF50D421-4292704312B5143F&mid=66348673173402914051624183315367216025&aamlh=6&ce=UTF-8&ns=kohls&pageName=mens&g=https%3A%2F%2Fwww.kohls.com%2Fsale-event%2Fmens-clothing.jsp%3Fcc%3Dmens-TN1.0-S-men&c.&k.&pageDomain=www.kohls.com&.k&mcid.&version=4.3.0&icsmcvid=-false&mcidcto=-false&aidcto=-false&.mcid&.c&cc=USD&pageType=sale%20event%20landing&events=event1&products=%3Bproductmerch1&aamb=RKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y&tnt=521474%3A0%3A0%2C523998%3A0%3A0%2C524186%3A1%3A0%2C524571%3A1%3A0%2C524251%3A1%3A0%2C523996%3A0%3A0%2C522367%3A1%3A0%2C525023%3A1%3A0%2C519833%3A1%3A0%2C&c1=no%20taxonomy&c2=no%20taxonomy&c3=no%20taxonomy&v3=browse&c4=sale%20event%20landing&c5=non-search&c7=no%20taxonomy&v8=non-search&c16=browse&c17=kohls%20not%20logged%20in%7Cloyalty%20not%20logged%20in&v17=kohls%20not%20logged%20in%7Cloyalty%20not%20logged%20in&c18=thu%7Cweekday%7C06%3A00%20am&v18=thu%7Cweekday%7C06%3A00%20am&c22=2020-04-16&v22=desktop&v23=browse&v24=browse&v25=no%20taxonomy&v26=no%20taxonomy&v27=no%20taxonomy&v28=no%20taxonomy&c39=browse&c40=browse&v40=cloud17&c41=browse&c42=browse&v42=no%20cart&c50=D%3Ds_tempsess&c53=mens&c64=VisitorAPI%20Present&v68=mens&v71=klsbrwcki%3A&s=1600x1200&c=24&j=1.6&v=N&k=Y&bw=1600&bh=1200&AQE=1 https://ww8.kohls.com/b/ss/kohlscomprod/10/JS-2.0.0/s77102725942700?AQB=1 ndh=1 pf=1 callback=s_c_il[1].doPostbacks et=1 t=16/3/2020 13:54:58 4 -120 d. nsid=0 jsonv=1 .d sdid=563580C3CF50D421-4292704312B5143F mid=66348673173402914051624183315367216025 aamlh=6 ce=UTF-8 ns=kohls pageName=mens g=https://www.kohls.com/sale-event/mens-clothing.jsp?cc=mens-TN1.0-S-men c. k. pageDomain=www.kohls.com .k mcid. version=4.3.0 icsmcvid=-false mcidcto=-false aidcto=-false .mcid .c cc=USD pageType=sale event landing events=event1 products=;productmerch1 aamb=RKhpRz8krg2tLO6pguXWp5olkAcUniQYPHaMWWgdJ3xzPWQmdj0y tnt=521474:0:0,523998:0:0,524186:1:0,524571:1:0,524251:1:0,523996:0:0,522367:1:0,525023:1:0,519833:1:0, c1=no taxonomy c2=no taxonomy c3=no taxonomy v3=browse c4=sale event landing c5=non-search c7=no taxonomy v8=non-search c16=browse c17=kohls not logged in|loyalty not logged in v17=kohls not logged in|loyalty not logged in c18=thu|weekday|06:00 am v18=thu|weekday|06:00 am c22=2020-04-16 v22=desktop v23=browse v24=browse v25=no taxonomy v26=no taxonomy v27=no taxonomy v28=no taxonomy c39=browse c40=browse v40=cloud17 c41=browse c42=browse v42=no cart c50=D=s_tempsess c53=mens c64=VisitorAPI Present v68=mens v71=klsbrwcki: s=1600x1200 c=24 j=1.6 v=N k=Y bw=1600 bh=1200 AQE=1
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_deviceId from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to write to localStorage, retaining information in SDK
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
z1_deviceId
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
af335040-8f9c-4c31-d0ce-378db05b836d
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_connectDirty from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_connectDirty from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_sessionStart_ts from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to write to localStorage, retaining information in SDK
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
z1_sessionStart_ts
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
1587038098902
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_cust_id from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_connectData_tts from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_cust_key from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to write to localStorage, retaining information in SDK
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
z1_connectDirty
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
true
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 21)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error.
console-api error URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Script error. [object Object]
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
console.groupEnd
console-api log URL: https://s.btstatic.com/tag.js(Line 2)
Message:
Signal: error: {"type":"dbe","message":"TypeError: Cannot read property 'pageItems' of undefined","dbe.name":"product sp | name","pageId":3698821}
console-api log URL: https://s.btstatic.com/tag.js(Line 2)
Message:
Signal: error: {"type":"dbe","message":"TypeError: Cannot read property 'pageItems' of undefined","dbe.name":"product mp & sp | product id","pageId":3698821}
console-api log URL: https://s.btstatic.com/tag.js(Line 2)
Message:
Signal: CONFIRMED
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_connectData from localStorage
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to write to localStorage, retaining information in SDK
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
z1_connectData_tts
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
1587038099928
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to write to localStorage, retaining information in SDK
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
z1_connectData
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
{"actionMappingChanged":true,"profileId":"20e6289f-1a0b-4e32-af8c-eda9181b7fe7","sdkPropsChanged":true,"firstTimeUser":true,"sessionTime":"30","id":"af335040-8f9c-4c31-d0ce-378db05b836d","config":{"actionMapping":[{"actionType":"z1script","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""},"tagName":"z1_codeLibraryTag","script":"var z1CodeLib = function () { };\nz1CodeLib.prototype = (function () {\n\n return {\n checkForSupcData: function () {\n \n \tvar supcInSession = sessionStorage.getItem('z1_supc');\n \tif(supcInSession && location.href.toString().indexOf('shopping_cart') == -1)\n {\n\t\t\t\tlocalStorage.setItem('z1_supc',supcInSession);\n sessionStorage.removeItem('z1_supc');\n \n }\n },\n };\n}) ();\n\n\nthis.configUtils = new z1CodeLib();\n\nthis.configUtils.checkForSupcData();"},{"tagName":"Creating Z1 Widget Div on CatalogPage","actionType":"z1script","script":"//add msg div as child of notifyDiv\n//var notifyDiv = document.getElementById(\"container\");\ntry {\n var notifyDiv = document.getElementById(\"mini-cart\");\n var z1Div = document.createElement(\"div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1widget\");\n notifyDiv.appendChild(z1Div);\n} catch (z1ie) {\n console.log(\"exception in Tag creating div to attch z1widget=\" + z1ie);\n}\n","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"/catalog"}},{"tagName":"webstoreSendEventAllPages","actionType":"z1script","script":"/*Changes done for IE\nA. function declaration like, var abc = function() won't work in IE if function is used first and then declared and defined. Please take below precaution before using it:\n 1. If you want to use function declaration like, var abc = function(), first declare it and then use it\n 2. Use normal function declaration like, function abc(). you can declare function anywhere in the page and use it before or after declaration. It will work on all the browsers.\nB. Do not use multiline strings, also call as 'Template String'. Template Strings are demarked by a backtick(`).\n Example. var abc = `This is multiline\n comment`; //multiline comments won't work in IE\n Use simple concatenation to achieve the same like,\n var abc = \"\";\n abc += 'This is multiline';\n abc += 'comment';\nC. You can not set defalut parameter values for function in IE.\n for e.g. function abc(num = 0,str=\"hello\") //Won't work in IE\nD. You can not use arguments object ([...args] or (...args) in function) in IE.\n For e.g function abc(...args){\n console.log(\"received paramenters \", args)\n } // Won't work in IE\nE. 'append' function won't work in IE. You can use 'appendChild' function to achieve the same functionality.\nF. 'prepend' function won't work IE. Try to use 'insertBefore' function to achieve the same functionality.\nG. new Event() function won't work in IE. You can use new CustomEvent() function to achieve the same functionality.\nH. Arrow functions (=>) won't work in IE\n*/\ntry {\n //var isIE = function() { //\n /*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if ( !(cust_id == \"3000000030411692\" || cust_id == \"3000000126553504\") ) return;*/\n console.log(\"[Zineone-I]\");\n\n /* Aditya: fsg: js-shipping-banner --> js-shipping-banner-2\n * Aditya: fsg: js-meter-summary --> js-meter-summary-2\n * Aditya: getBopusInfo and get_Xhours\n * Manish: Webstore instrumentation for all pages except OrderConfirmation and MyAccount\n * Juzer: Added ML Instrumentation\n */\n var TIME_TO_LIVE = 1440; //Venkat on 11/22 - changing 1440 (24 hours) to 60 MINUTES\n // Venkat - Begin - 01/09/2019\n // PLEASE set the following var TO ENABLE the BOPUS Pdp store hour notifications\n var ENABLE_BOPUS_STORE_HOUR = false;\n // Venkat - End - 01/09/2019\n\n var isJsonNull = false;\n\n try {\n var debugScr = true;\n var cartValue = 0;\n var currentUserCartArr = [];\n\n\n console.log(\"[ZineOne] sendEventOnAllPages Tag is running.\");\n\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n\n };\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n\n\n\n\n function isNumeric(value) {\n return /^-{0,1}\\d+$/.test(value);\n }\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n // Get cookie from user's browser/desktop\n function getCookie(name) {\n var value = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n if (debugScr && value != null) console.log(\"[ZineOne] getCookie value for = \" + name + \" value - \" + value);\n return (value != null) ? unescape(value[2]) : null;\n //var re = new RegExp(name + \"=([^;]+)\");\n //var value = re.exec(document.cookie);\n //return (value != null) ? unescape(value[1]) : null;\n }\n //PerkPerf start\n function getBirthdayCookie(cname) {\n var name = cname + \"=\";\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return;\n }\n //PerkPerf end\n\n function getCartData() {\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n if(cartData && !isValid(cartData)){\n cartData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n \n if (isValid(cartData)) {\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n var cartInfo = JSON.parse(cartData);\n var productsArr = [];\n\n //Send the Event even if the Cart does not have any item, so that the OpenAPI could be called\n //on the Server side\n\n if (cartInfo == null || cartInfo.cartItems == null || cartInfo.cartItems.length <= 0)\n return true;\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var saleUnitprice = 0;\n var regularUnitPrice = 0;\n if (!si.itemPriceInfo && !si.itemPriceInfo.saleUnitprice)\n saleUnitprice = si.itemPriceInfo.saleUnitprice;\n\n if (!si.itemPriceInfo && !si.itemPriceInfo.regularUnitPrice)\n regularUnitPrice = si.itemPriceInfo.regularUnitPrice;\n var obj = {\n \"id\": si.cartItemId,\n \"skuCode\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": saleUnitprice.toString(),\n \"regularUnitPrice\": regularUnitPrice.toString(),\n \"quantity\": si.quantity.toString()\n };\n productsArr.push(obj);\n //if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n }\n //if (debugScr) console.log(\"[ZineOne] Out of loop\");\n if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n return JSON.stringify(productsArr);\n }\n }\n\n //console.log(\"z1now start\");\n var z1Widgets = ZineOne.getZ1Widget();\n var configMap = { \"z1.banner.secondsToShow\": \"1200\" };\n z1Widgets.setConfiguration(configMap);\n //console.log(\"z1now end\");\n\n function getCurrentCartData(storeInLocal) {\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n if(cartData && !isValid(cartData)){\n cartData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n if (isValid(cartData)) {\n var cartInfo = JSON.parse(cartData);\n\n if (cartInfo.cartItems) {\n var finalCartItems = [];\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var cartObj = cartInfo.cartItems[i];\n\n var tempObj = {};\n var skuId = cartObj.skuId;\n var quantity = cartObj.quantity;\n\n tempObj.skuId = skuId;\n tempObj.quantity = quantity;\n\n finalCartItems[finalCartItems.length] = tempObj;\n\n }\n\n if (finalCartItems.length > 0 && storeInLocal == true) {\n localStorage.setItem('z1_current_cart_data', JSON.stringify(finalCartItems));\n }\n\n return finalCartItems;\n\n\n }\n }\n\n return null;\n }\n\n function checkForCartChanges() {\n var currentCartData = getCurrentCartData(false);\n var oldCartData = localStorage.getItem('z1_current_cart_data');\n\n if (validateForNotNull(currentCartData)) {\n oldCartData = JSON.parse(oldCartData);\n\n var removedSku = [];\n var updatedSku = [];\n var updatedskuQty = [];\n\n for (var i = 0; i < oldCartData.length; i++) {\n var tempOldSkuObj = oldCartData[i];\n var isFound = false;\n var isQtyUpdated = false;\n\n for (var j = 0; j < currentCartData.length; j++) {\n var tempCurrentSkuObj = currentCartData[j];\n\n if (tempOldSkuObj.skuId == tempCurrentSkuObj.skuId) {\n isFound = true;\n if (tempOldSkuObj.quantity != tempCurrentSkuObj.quantity) {\n isQtyUpdated = true;\n\n updatedSku[updatedSku.length] = tempCurrentSkuObj.skuId;\n updatedskuQty[updatedskuQty.length] = tempCurrentSkuObj.quantity;\n }\n\n\n break;\n }\n\n }\n\n if (isFound == false) {\n removedSku[removedSku.length] = tempCurrentSkuObj.skuId;\n }\n\n }\n\n console.log('Got Updated SKU ', updatedSku);\n console.log('Got Removed SKU ', removedSku);\n\n if (updatedSku.length > 0 || removedSku.length > 0) {\n var finalObj = {};\n finalObj.updatedSku = updatedSku.join('~');\n finalObj.updatedskuQty = updatedskuQty.join('~');\n finalObj.removedSku = removedSku.join('~');\n\n localStorage.setItem('z1_current_cart_data_update', JSON.stringify(finalObj));\n\n getCurrentCartData(true);\n } else {\n //return;\n }\n\n /*\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n if (isValid(cartData)) {\n var cartInfo = JSON.parse(cartData);\n var productsArr = [];\n if (cartInfo.cartItems) {\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var obj = {\n \"id\": si.cartItemId,\n \"sku\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": si.itemPriceInfo.saleUnitprice.toString(),\n \"regularUnitPrice\": si.itemPriceInfo.regularUnitPrice.toString(),\n \"quantity\": si.quantity.toString()\n };\n productsArr.push(obj);\n }\n }\n\n evtName = \"_ws_update_hcart\";\n\n var finalEventData = {};\n finalEventData[\"cartItems\"] = JSON.stringify(productsArr);\n\n ZineOne.pushEvent(evtName, finalEventData);\n\n updateUserVectors(false,null);\n\n\n }*/\n updateCartItems();\n updateUserVectors(false,null);\n } else {\n updateCartItems();\n }\n\n }\n\n\n\n function updateCartItems() {\n try {\n\n //debugScr = true;\n\n console.log(\"[ZineOne] update_cart from onload page TAG \");\n if (debugScr) console.log(\"[ZineOne] update_cart from onload page TAG \");\n\n var evtName = \"_ws_update_hcart\";\n var evtData = {};\n\n function getCurrentBagCount(cartInfo) {\n var itemsInBag = 0;\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n }\n return itemsInBag;\n }\n\n var lastBagCount = 0;\n\n if (localStorage.getItem('z1_checkoutBagCount')) {\n lastBagCount = Number(localStorage.getItem('z1_checkoutBagCount'));\n }\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n if(cartData && !isValid(cartData)){\n cartData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n if (isValid(cartData)) {\n var cartInfo = JSON.parse(cartData);\n\n var currentBagCount = getCurrentBagCount(cartInfo);\n\n if (currentBagCount != lastBagCount) {\n var productsArr = [];\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var obj = {\n \"id\": si.cartItemId,\n \"sku\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": si.itemPriceInfo.saleUnitprice.toString(),\n \"regularUnitPrice\": si.itemPriceInfo.regularUnitPrice.toString(),\n \"quantity\": si.quantity.toString()\n };\n productsArr.push(obj);\n }\n evtData[\"cartItems\"] = JSON.stringify(productsArr);\n ZineOne.pushEvent(evtName, evtData);\n if (debugScr) console.log(\"[ZineOne] update_cart event pushed >>> \", evtName, \" >>> \", evtData);\n } else {\n if (debugScr) console.log(\"[ZineOne] checkoutbagcount and cureent bag count is same \");\n }\n } else {\n if (document.getElementsByClassName(\"number-items boss-number-items\") &&\n Number(document.getElementsByClassName(\"number-items boss-number-items\")[0].innerHTML) > 0) {\n\n // This is done to reduce traffic to the backend since Kohl's Website is having persitent bar json set to NULL initially, i.e..,\n // till the Mini Cart is clicked. August 28, 2019. We should take this out once the Website functions properly\n if (Math.random() * 100 < 20) {\n\n //console.log(\"[ZineOne] cart data \"+ cartData);\n if (debugScr) console.log(\"[ZineOne] cart data is null \");\n ZineOne.pushEvent(evtName, evtData);\n if (debugScr) console.log(\"[ZineOne] No cart data in persistent_bar_components_json \");\n\n }\n\n }\n }\n\n } catch (ie) {\n console.log(\"[Zineone] Error in Tag update cart . \", ie);\n }\n }\n\n function checkForUpdateCart() {\n var currentCartData = localStorage.getItem('z1_current_cart_data');\n if (!currentCartData) {\n\n var gotCart = getCurrentCartData(true);\n console.log('Got Current Cart ', gotCart);\n\n\n } else {\n checkForCartChanges();\n }\n }\n\n function checkForRtoApplied() {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if (existingSupc != null && existingSupc != undefined && existingSupc != 'null') {\n var e = JSON.parse(existingSupc);\n\n var newUserVectors = localStorage.getItem('z1_newUserVectors');\n\n newUserVectors = JSON.parse(newUserVectors);\n var rtoData = newUserVectors.rto_data;\n\n if (e.is_redeemed == true && newUserVectors.rto_data.indexOf('|A') == -1) {\n updateUserVectors(true, 'applied');\n }\n }\n }\n\n checkForUpdateCart();\n\n\n if ((window.location.host).includes(\"kohls.com\")) {\n //ZineOne.isDebugOn(true);\n //ZineOne.enablePushNotification(true);\n if (debugScr) console.log(\"ZineOne is here!!\");\n\n var z1Widgets = ZineOne.getZ1Widget();\n z1Widgets.registerWidgetHandler(\"raw\", _handleRawData);\n\n // Determine the page user is on viz. PDP, PMP, Account, search\n var pg = Z1.window.browserInfo.pagePath;\n var pgName = \"unknownPage\";\n var evtName = \"_ws_unknownEvent\";\n var chkout = false; //flag for fsg tag\n\n if (debugScr) console.log(\"[ZineOne] Page Name ==>\" + pg);\n\n //console.log(\"PG ==>\"+pg):\n if (pg == \"/\") {\n pgName = \"Home\";\n evtName = \"_ws_viewedHome\";\n } else if (pg.startsWith(\"/product\")) {\n pgName = \"PDP\";\n evtName = \"_ws_viewedProduct\";\n\n if (s) {\n s.pageName = '';\n s.prop4 = '';\n\n }\n\n //console.log('after 1',s);\n\n\n } else if (pg.startsWith(\"/catalog\")) {\n pgName = \"PMP\";\n evtName = \"_ws_viewedCatalog\";\n\n if (pageData && pageData.pmpDetails && pageData.pmpDetails.pageFilter) {\n localStorage.setItem(\"z1_currentPageFilter\", pageData.pmpDetails.pageFilter);\n }\n\n\n } else if (pg.startsWith(\"/search\")) {\n pgName = \"Search\";\n evtName = \"_ws_searched\";\n } else if (pg.startsWith(\"/myaccount/kohls_rewards.jsp\")) {\n //PerkPerf start\n pgName = \"Rewards\";\n evtName = \"_ws_rewards\";\n\n } else if (pg.startsWith(\"/wallet/my_wallet.jsp\")) {\n pgName = \"Wallet\";\n evtName = \"_ws_mywallet\";\n\n } else if (pg.startsWith(\"/upgrade/giftinglisting/wishlist.jsp\")) {\n pgName = \"Wishlist\";\n evtName = \"_ws_wishlist\";\n\n } else if (pg.startsWith(\"/myaccount/v2/order-history.jsp\")) {\n pgName = \"OrderHistory\";\n evtName = \"_ws_orderhistory\";\n\n } else if (pg.startsWith(\"/sale-event/coupons-deals.jsp\")) {\n pgName = \"Coupon\";\n evtName = \"_ws_coupon\";\n\n } else if (pg.startsWith(\"/feature/wallet_home\")) {\n pgName = \"WalletHome\";\n evtName = \"_ws_mywallet\";\n } else if (pg.startsWith(\"/myaccount/v2/myinfo.jsp\")) {\n\n pgName = \"MyInfo\";\n evtName = \"_ws_myinfo\";\n //PerkPerf end \n } else if (pg.startsWith(\"/checkout\")) {\n chkout = true;\n pgName = \"Cart\";\n if (pg.endsWith(\"shopping_cart.jsp\")) {\n pgName = \"Cart\";\n evtName = \"_ws_viewedCart\";\n } else if (pg.endsWith(\"v2/checkout.jsp\")) {\n pgName = \"Checkout\";\n evtName = \"_ws_startedCheckout\";\n\n // var pgType = pageData && pageData.pageDetails && pageData.pageDetails.pageType;\n // if (pgType.includes(\"Shipping\"))\n // if (pgType.includes(\"Payment\")) evtName = \"_ws_completeShipping\";\n // if (pgType.includes(\"Review\")) evtName = \"_ws_completePayment\";\n\n checkForRtoApplied();\n\n\n\n }\n //orderConfirmation is separate Tag\n //viewedAccount is not instrumented???\n }\n\n //setTimeout(function(){ }, 10000);\n\n checkForOfferSequence(pgName);\n\n if (pgName == \"Home\" | pgName == \"PMP\" | pgName == \"Search\" | pgName == \"Cart\" | pgName == \"PDP\") {\n var abandonCartPopupDiv = document.createElement('div');\n abandonCartPopupDiv.setAttribute(\"id\", \"z1-abandon-cart-pop-up\");\n abandonCartPopupDiv.setAttribute(\"style\", \"position: fixed;height: 100%;width: 100%;z-index: 100000;top: 0;left: 0;display:none;\");\n document.body.appendChild(abandonCartPopupDiv);\n }\n\n\n\n var currentBag = localStorage.getItem('persistent_bar_components_json_v1');\n if(currentBag && !isValid(currentBag)){\n currentBag = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n\n if (currentBag != null && currentBag != 'null') {\n\n\n var cartInfo = JSON.parse(currentBag);\n\n var itemsInBag = 0;\n var productIdList = '';\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n var pId = cartInfo.cartItems[i].productId;\n var qty = cartInfo.cartItems[i].quantity;\n\n if (i > 0) productIdList = productIdList + \"|\";\n\n productIdList = productIdList + pId + \":\" + qty;\n }\n\n localStorage.setItem('z1_checkoutBagCount', itemsInBag);\n localStorage.setItem('z1_checkoutProductIdList', productIdList);\n\n } else {\n localStorage.setItem('z1_checkoutBagCount', 0);\n localStorage.setItem('z1_checkoutProductIdList', '');\n }\n\n\n\n var evtData = {\n \"page\": pgName\n };\n evtData.page_loc = window.location.href; //added on 08262019\n //RK- Check softloggedIn\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n var myId = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n var executeTrackerAPICall=false;\n if (myId == \"3000000126631786\" || myId == \"3000000007802300\") {\n executeTrackerAPICall = true;\n }\n var rewardsData = localStorage.getItem(\"z1_rewardsData\");\n function getRewardsDataAndPushEvent(){\n console.log(\"y2yrewardsApi getRewardsDataAndPushEvent funcation call\");\n var loy_id = Number(pageData.customerDetails.kohlsLoyaltyID);\n try {\n var data = JSON.stringify({\n \"payload\": {\n \"loyaltyId\": String(loy_id),\n \"hasKCC\": $env.hasKcc\n }\n });\n var xhr = new XMLHttpRequest();\n console.log(\"$$$$1\");\n xhr.addEventListener(\"readystatechange\", function() {\n \n console.log(\"$$$$2\");\n if (xhr.readyState === 4) {\n console.log(\"$$$$3\");\n if (xhr.status === 200) { \n console.log(\"$$$$4\");\n console.log(\"y2yrewardsApi responseText...\",JSON.parse(this.responseText));\n var y2yRwd=JSON.parse(this.responseText);\n \n if(isValid(y2yRwd.payload)){\n \n localStorage.setItem(\"z1_rewardsData\", this.responseText);\n evtData[\"rewardsData\"] = JSON.stringify(this.responseText);\n }else{\n console.log(\"y2yrewardsApi responseText err\");\n }\n ZineOne.pushEvent(evtName, evtData);\n return;\n }\n else{\n console.log(\"$$$$5\");\n ZineOne.pushEvent(evtName, evtData);\n return;\n }\n }else{\n console.log(\"$$$$6\");\n }\n });\n\n var mylink=window.location.origin;\n xhr.open(\"POST\",mylink+\"/v1/loyalty/tracker?lpf=v2\");\n xhr.setRequestHeader(\"content-type\", \"application/json\");\n xhr.setRequestHeader(\"channel\", \"zineOne\");\n xhr.setRequestHeader(\"correlation-id\", \"Test997\");\n xhr.send(data);\n } catch (e) {\n console.log(\"y2yrewardsApi ERROR\" + e);\n ZineOne.pushEvent(evtName, evtData);\n }\n }\n\n // wait max 6 times for pageData to be available, each try is after period millis\n var period = 600;\n var tCount = 0;\n var maxTcount = 2; // not 6\n var sendevt = true;\n if (typeof pageData != 'undefined' && pageData && pageData.customerDetails) {\n\n if (pageData.customerDetails.customerHasKohlsCharge) evtData.isKCC = 1;\n else evtData.isKCC = 0;\n\n if (pageData.customerDetails.kohlsLoyaltyID) evtData.loyaltyId = pageData.customerDetails.kohlsLoyaltyID;\n\n if (debugScr) console.log(\"[ZineOne] case 1...\");\n sendevt = addEventData();\n if (debugScr) console.log(\"[ZineOne] Sent Event ..case 1...\");\n if (sendevt && (evtName != \"_ws_unknownEvent\")) {\n //ZineOne.pushEvent(evtName, evtData); \n if (isValid(pageData) && isValid(pageData.customerDetails) && isValid(pageData.customerDetails.kohlsLoyaltyID) && !(isNaN(pageData.customerDetails.kohlsLoyaltyID)) && !isValid(rewardsData) && executeTrackerAPICall) { //Loyalty user but no rewards data\n getRewardsDataAndPushEvent();\n } else {\n ZineOne.pushEvent(evtName, evtData);\n }\n\n if (pgName != 'Rewards' && pgName != 'Wallet' && pgName != 'Wishlist' && pgName != 'OrderHistory' && pgName != 'Coupon' && pgName != 'WalletHome' && pgName != 'MyInfo') {\n updateUserVectors(false,null);\n }\n\n }\n //} else if (pgName == \"Home\" || pg.startsWith(\"/checkout\")) { // we don't need pageData\n // if (debugScr) console.log(\"[ZineOne] case 2...\");\n // ZineOne.pushEvent(evtName, edata);\n } else {\n if (debugScr) console.log(\"[ZineOne] case 3...\");\n var timer = setInterval(function() {\n tCount++;\n if (debugScr) console.log(\"[ZineOne] timerCount=\" + tCount);\n if (typeof pageData != 'undefined') {\n clearInterval(timer);\n sendevt = addEventData();\n if (sendevt && (evtName != \"_ws_unknownEvent\")) {\n //ZineOne.pushEvent(evtName, evtData);\n if (isValid(pageData) && isValid(pageData.customerDetails) && isValid(pageData.customerDetails.kohlsLoyaltyID) && !(isNaN(pageData.customerDetails.kohlsLoyaltyID)) && !isValid(rewardsData) && executeTrackerAPICall) { //Loyalty user but no rewards data\n getRewardsDataAndPushEvent();\n } else {\n ZineOne.pushEvent(evtName, evtData);\n }\n\n if (pgName != 'Rewards' && pgName != 'Wallet' && pgName != 'Wishlist' && pgName != 'OrderHistory' && pgName != 'Coupon' && pgName != 'WalletHome' && pgName != 'MyInfo') {\n updateUserVectors(false,null);\n }\n }\n } else if (tCount == 2) {\n clearInterval(timer);\n // we will send the event with what we have\n if (evtName != \"_ws_unknownEvent\") {\n //ZineOne.pushEvent(evtName, evtData);\n if (isValid(pageData) && isValid(pageData.customerDetails) && isValid(pageData.customerDetails.kohlsLoyaltyID) && !(isNaN(pageData.customerDetails.kohlsLoyaltyID)) && !isValid(rewardsData) && executeTrackerAPICall) { //Loyalty user but no rewards data\n getRewardsDataAndPushEvent();\n } else {\n ZineOne.pushEvent(evtName, evtData);\n }\n if (pgName != 'Rewards' && pgName != 'Wallet' && pgName != 'Wishlist' && pgName != 'OrderHistory' && pgName != 'Coupon' && pgName != 'WalletHome' && pgName != 'MyInfo') {\n updateUserVectors(false,null);\n }\n }\n }\n }, period);\n }\n\n\n //bopus start\n /*if (pgName == \"PDP\" && (\n localStorage.getItem(\"z1_cust_id\") == \"3000000015510732\" || localStorage.getItem(\"z1_cust_id\") == \"3000000013469959\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254015584448533\" || localStorage.getItem(\"z1_cust_id\") == \"2253998883117448\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254015110568294\" || localStorage.getItem(\"z1_cust_id\") == \"3000000013617619\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254009728812139\" || localStorage.getItem(\"z1_cust_id\") == \"2254040233704719\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254024615400568\" || localStorage.getItem(\"z1_cust_id\") == \"3000000018326613\")) { // FILTER\n\n\n var storageHandler = function() {\n try {\n if (debugScr) console.log(\"[ZineOne] Bopus event\");\n\n setTimeout(function() {\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n console.log(\"[ZineOne] The sku selected is: \" + skuCode);\n if (skuCode && isValid(skuCode)) {\n\n // var inv_info = pageData.productDetails.pageItems.QtyInfo;\n // var payload = {\n // \"sku\": skuCode,\n // \"inv_info\": inv_info\n // };\n // ZineOne.pushEvent(\"_ws_viewedsku\", payload);\n\n var z1_bopus_data = localStorage.getItem(\"z1_bopus_data\") + \"\";\n if (isValid(z1_bopus_data)) {\n var z1_bopus_JSON = JSON.parse(z1_bopus_data);\n fireOmniture(z1_bopus_JSON);\n if (z1_bopus_JSON.bopus == \"1\") {\n getBopusInfo();\n }\n } else {\n var inv_info = pageData.productDetails.pageItems.QtyInfo;\n var payload = {\n \"sku\": skuCode,\n \"inv_info\": inv_info\n };\n ZineOne.pushEvent(\"_ws_viewedsku\", payload);\n }\n }\n }, 2000);\n } catch (ex) {\n console.log(\"[ZineOne] Encountered condition: \", ex);\n }\n };\n\n document.addEventListener('bopus', storageHandler, false);\n // Fire initial bopus event on page load, in case sku already selected by default\n var eventini = new CustomEvent('bopus');\n document.dispatchEvent(eventini);\n\n var patbc = document.getElementsByClassName(\"product_boss_tmpl\")[0];\n patbc.onclick = function() {\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n\n }*/\n\n //bopus end\n\n //New code for bopus as well as viewedsku\n /*if (myId == \"3000000030411692\" || myId == \"3000000129500077\" || myId == \"3000000015076174\" || myId ==\"3000000074262095\") {\n console.log(\"Execute only for my Id\");*/\n if (pgName == \"PDP\") {\n function bopusEventDispatch() {\n //var event = new Event('bopus'); // Doesn't work on IE\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n var storeUrgencyMsg=\"\";\n function storageHandler() {\n try {\n if (debugScr) console.log(\"[ZineOne] Bopus event\");\n setTimeout(function() {\n\n var aka_hp2_cookie = getCookie(\"AKA_HP2\");\n var aka_rv_cookie = getCookie(\"AKA_RV\");\n var aka_pdp2_cookie = getCookie(\"AKA_PDP2\");\n if (debugScr) console.log(\" aka_hp2_cookie ==> \", aka_hp2_cookie, \" aka_rv_cookie ==> \", aka_rv_cookie, \" aka_pdp2_cookie ==> \", aka_pdp2_cookie);\n\n if (aka_pdp2_cookie && aka_pdp2_cookie.toLowerCase() == \"true\") {\n var parentDiv = \"\";\n var productPageName=pageName;\n if(productPageName==\"regularProductPage\"){\n parentDiv = document.getElementById(\"PDP_z1Scarcity_badge\");\n }\n else if(productPageName==\"collectionPDPPage\"){\n parentDiv = document.getElementById(\"CDP_z1Scarcity_badge\");\n }\n else{\n parentDiv = \"\"; \n }\n if (parentDiv) {\n var chkz1pdpScarDiv = document.getElementById(\"z1-pdpscarcity\");\n if(chkz1pdpScarDiv){\n chkz1pdpScarDiv.style.display = \"block\";\n }\n else{\n var pdpScrDiv = document.createElement('div');\n console.log(\"[ZineOne] created new div for scarcity\");\n pdpScrDiv.setAttribute(\"id\", \"z1-pdpscarcity\");\n //pdpScrDiv.setAttribute(\"style\", \"display:block;text-align: left; width: 100%; color: purple; font-size: 15px; clear: both; padding-top: 5px; overflow: auto;\");\n pdpScrDiv.style.display = \"block\";\n pdpScrDiv.style.textAlign = \"left\";\n pdpScrDiv.style.width = \"100%\";\n pdpScrDiv.style.color = \"purple\";\n pdpScrDiv.style.fontSize = \"15px\";\n pdpScrDiv.style.clear = \"both\";\n pdpScrDiv.style.paddingTop = \"5px\";\n pdpScrDiv.style.overflow = \"auto\";\n //pdpScrDiv.innerHTML=\"Just <b>1 left in this store!</b>\";\n parentDiv.appendChild(pdpScrDiv);\n }\n }\n\n if(storeUrgencyMsg != \"\"){\n if(document.getElementById(\"PDP_z1Social_badge\") && document.getElementById(\"PDP_z1Social_badge\").innerHTML==\"\"){\n document.getElementById(\"PDP_z1Social_badge\").innerHTML = storeUrgencyMsg;\n } \n }\n else{\n storeUrgencyMsg = document.getElementById(\"PDP_z1Social_badge\") ? document.getElementById(\"PDP_z1Social_badge\").innerHTML : \"\";\n }\n }\n\n var pdp_size_collection = document.getElementsByClassName(\"pdp-product-swatch\");\n var color_swatch_collection = document.getElementsByClassName(\"pdp-size-swatch\");\n if (pdp_size_collection.length > 0) {\n for (let ij = 0; ij < pdp_size_collection.length; ij++) {\n pdp_size_collection[ij].removeEventListener(\"click\", bopusEventDispatch, false);\n pdp_size_collection[ij].addEventListener(\"click\", bopusEventDispatch, false);\n }\n }\n if (color_swatch_collection.length > 0) {\n for (let ij = 0; ij < color_swatch_collection.length; ij++) {\n color_swatch_collection[ij].removeEventListener(\"click\", bopusEventDispatch, false);\n color_swatch_collection[ij].addEventListener(\"click\", bopusEventDispatch, false);\n };\n }\n\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n if (debugScr) console.log(\"[ZineOne] The sku selected is: \" + skuCode);\n if (skuCode && isValid(skuCode)) {\n var ls_skuCode = localStorage.getItem('z1_selectedsku');\n if (!isValid(ls_skuCode) || ls_skuCode != skuCode) {\n if (debugScr) console.log(\"[ZineOne] Changed SKU from ==> \" + ls_skuCode + \" to ==> \" + skuCode);\n var pdpScarcityDivLOAD = document.getElementById(\"z1-pdpscarcity\");\n if (isValid(pdpScarcityDivLOAD)) {\n if (debugScr) console.log(\"[ZineOne] valid\");\n pdpScarcityDivLOAD.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDivLOAD.innerHTML = \"\";\n }\n /*var inv_info = pageData.productDetails.pageItems.QtyInfo;\n if (!isValid(inv_info)) {\n if (debugScr) console.log(\"[ZineOne] inv_info is invalid\");\n return;\n }*/\n var inv_info = [];\n var qtyInfo = pageData.productDetails.pageItems.QtyInfo;\n if (isValid(qtyInfo)) {\n for (var item = 0; item < qtyInfo.length; item++) {\n if (qtyInfo[item].skuCode == skuCode) {\n inv_info.push(qtyInfo[item]);\n }\n }\n }\n\n if (!isValid(inv_info) || inv_info == 0) {\n if (debugScr) console.log(\"[ZineOne] inv_info is invalid\");\n return;\n }\n\n evtName = '_ws_viewedsku';\n\n\n var payload = {\n \"selectedSKU\": skuCode,\n \"prd_inv\": JSON.stringify(inv_info)\n };\n /*if (myId == \"3000000074262095\" || myId == \"3000000030411692\"){\n if(productV2JsonData && productV2JsonData.webID && productV2JsonData.webID == \"4143386\"){\n payload = {\n \"selectedSKU\": skuCode,\n \"prd_inv\": JSON.stringify([{\"skuCode\":\"62573701\",\"ShipAvlQty\":8,\"BopusAvlQty\":0,\"BossAvlQty\":0}])\n };\n }\n }*/\n ZineOne.pushEvent(evtName, payload);\n\n updateUserVectors(false,null);\n\n if (debugScr) console.log(\"[ZineOne] _ws_viewedsku event fired...\", payload);\n\n\n if (debugScr) console.log(\"[ZineOne] Test 1\");\n localStorage.setItem('z1_selectedsku', skuCode);\n var z1_bopus_data = localStorage.getItem(\"z1_bopus_data\") + \"\";\n if (isValid(z1_bopus_data)) {\n var z1_bopus_JSON = JSON.parse(z1_bopus_data);\n // Venkat - Begin - 10/23/2018 - looks like this reporting too many omniture tags\n // fireOmniture(z1_bopus_JSON);\n // Venkat - End - 10/23/2018\n if (z1_bopus_JSON.bopus == \"1\") {\n getBopusInfo();\n }\n }\n if (debugScr) console.log(\"[ZineOne] Test 2\");\n\n }\n }\n }, 800);\n } catch (ex) {\n console.log(\"[ZineOne] Encountered condition: \", ex);\n }\n };\n\n document.addEventListener('bopus', storageHandler, false);\n // Fire initial bopus event on page load, in case sku already selected by default\n var eventini = new CustomEvent('bopus');\n document.dispatchEvent(eventini);\n\n /*pdp_size_collection = document.getElementsByClassName(\"pdp-product-size\");\n color_swatch_collection = document.getElementsByClassName(\"pdp-product-color\");\n if (pdp_size_collection.length > 0) {\n pdp_size_collection[0].onclick = function() {\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n }\n if (color_swatch_collection.length > 0) {\n color_swatch_collection[0].onclick = function() {\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n }*/\n\n localStorage.setItem('z1_selectedsku', \"\");\n }\n \n /*}\n else{\n if (pgName == \"PDP\") {\n function storageHandler() {\n try {\n if (debugScr) console.log(\"[ZineOne] Bopus event\");\n setTimeout(function() {\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n if (debugScr) console.log(\"[ZineOne] The sku selected is: \" + skuCode);\n if (skuCode && isValid(skuCode)) {\n var ls_skuCode = localStorage.getItem('z1_selectedsku');\n if (!isValid(ls_skuCode) || ls_skuCode != skuCode) {\n if (debugScr) console.log(\"[ZineOne] Changed SKU from ==> \" + ls_skuCode + \" to ==> \" + skuCode);\n var pdpScarcityDivLOAD = document.getElementById(\"z1-pdpscarcity\");\n if (isValid(pdpScarcityDivLOAD)) {\n if (debugScr) console.log(\"[ZineOne] valid\");\n pdpScarcityDivLOAD.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDivLOAD.innerHTML = \"\";\n }\n //var inv_info = pageData.productDetails.pageItems.QtyInfo;\n //if (!isValid(inv_info)) {\n // if (debugScr) console.log(\"[ZineOne] inv_info is invalid\");\n // return;\n //}\n var inv_info = [];\n var qtyInfo = pageData.productDetails.pageItems.QtyInfo;\n if (isValid(qtyInfo)) {\n for (var item = 0; item < qtyInfo.length; item++) {\n if (qtyInfo[item].skuCode == skuCode) {\n inv_info.push(qtyInfo[item]);\n }\n }\n }\n\n if (!isValid(inv_info) || inv_info == 0) {\n if (debugScr) console.log(\"[ZineOne] inv_info is invalid\");\n return;\n }\n\n evtName = '_ws_viewedsku';\n\n\n var payload = {\n \"selectedSKU\": skuCode,\n \"prd_inv\": JSON.stringify(inv_info)\n };\n ZineOne.pushEvent(evtName, payload);\n\n updateUserVectors(false,null);\n\n if (debugScr) console.log(\"[ZineOne] _ws_viewedsku event fired...\", payload);\n\n\n if (debugScr) console.log(\"[ZineOne] Test 1\");\n localStorage.setItem('z1_selectedsku', skuCode);\n var z1_bopus_data = localStorage.getItem(\"z1_bopus_data\") + \"\";\n if (isValid(z1_bopus_data)) {\n var z1_bopus_JSON = JSON.parse(z1_bopus_data);\n // Venkat - Begin - 10/23/2018 - looks like this reporting too many omniture tags\n // fireOmniture(z1_bopus_JSON);\n // Venkat - End - 10/23/2018\n if (z1_bopus_JSON.bopus == \"1\") {\n getBopusInfo();\n }\n }\n if (debugScr) console.log(\"[ZineOne] Test 2\");\n\n }\n }\n }, 200);\n } catch (ex) {\n console.log(\"[ZineOne] Encountered condition: \", ex);\n }\n };\n\n document.addEventListener('bopus', storageHandler, false);\n // Fire initial bopus event on page load, in case sku already selected by default\n var eventini = new CustomEvent('bopus');\n document.dispatchEvent(eventini);\n\n pdp_size_collection = document.getElementsByClassName(\"pdp-product-size\");\n color_swatch_collection = document.getElementsByClassName(\"pdp-product-color\");\n if (pdp_size_collection.length > 0) {\n pdp_size_collection[0].onclick = function() {\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n }\n if (color_swatch_collection.length > 0) {\n color_swatch_collection[0].onclick = function() {\n var event = new CustomEvent('bopus');\n document.dispatchEvent(event);\n };\n }\n\n localStorage.setItem('z1_selectedsku', \"\");\n }\n }*/\n\n //fsg start\n /////////////////// Purging fsg Data for users so that fsg isn't shown\n\n // localStorage.setItem('z1_fsg_data', null); // setting dummy data\n\n ////////////////////\n\n\n //if (false) {\n if (debugScr) console.log(\"[ZineOne] Starting fsg!!! \" + localStorage.getItem(\"z1_connectUserId\"));\n var vID = localStorage.getItem(\"z1_cust_id\"); //getCookie(\"VisitorId\");\n\n if (!isValid(vID)) {\n vID = localStorage.getItem(\"z1_connectUserId\");\n }\n\n var timestamp = new Date().getTime();\n var fsg_data = localStorage.getItem(\"z1_fsg_data\");\n var send = false;\n setKohlsId();\n //CHANGED MAR 15\n //console.log(\"CHKOUT PAGE ==> \" + chkout);\n //console.log(\"IsLoggedIn ==> \" + pageData.customerDetails.isLoggedIn);\n\n var userLoginStatus = pageData.customerDetails.isLoggedIn;\n //END CHANGE MAR 15\n /*if (fsg_data != null ) {\n delT = (timestamp - JSON.parse(fsg_data).timestamp);\n\n if (vID != JSON.parse(fsg_data).visitorId) {\n if (debugScr) console.log(\"[ZineOne] New User\" + vID); // send event and reset\n send = true;\n } else if (delT / 60000 > TIME_TO_LIVE) {\n if (debugScr) console.log(\"[ZineOne] TIME_TO_LIVE exceeded\"); // send event and reset\n if (debugScr) console.log(\"[ZineOne] re fsg, setting dummy data\");\n var dummy_data = {\n 'fsg': {\n '_d': \"0\",\n '_t': \"75\"\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data)); // setting dummy data\n send = true;\n //CHANGED ON MAR 15 \n //} else if ((!userLoginStatus) || String(userLoginStatus).includes(\"false\")) {\n // console.log(\"User logged off, resetting fsg data\");\n // localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data));\n // send = true;\n //END CHANGED ON MAR 15\n } else if ((!userLoginStatus) || String(userLoginStatus).includes(\"false\")) {\n var dummy_data = {\n 'fsg': {\n '_d': \"0\",\n '_t': \"75\"\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n\n localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data));\n send = true;\n\n } else {\n if (debugScr) console.log(\"[ZineOne] TIME_TO_LIVE still live\"); // therefore dont send event\n //fsg(fsg_data); //CALL FUNC\n setTimeout(function() {\n let fsg_event = new CustomEvent('onZ1RawData', {\n detail: JSON.parse(localStorage.getItem(\"z1_fsg_data\"))\n });\n document.dispatchEvent(fsg_event);\n }, 400);\n }\n // Venkat - 11/28/2018 - on checkout page set the dummy data only if fsg_data is null\n } else if (fsg_data == null) { // fsg data null\n send = true;\n\n if (debugScr) console.log(\"[ZineOne] first fsg, setting dummy data\");\n\n var dummy_data = {\n 'fsg': {\n '_d': \"0\",\n '_t': \"75\"\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n\n localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data)); // setting dummy data\n\n }\n\n if (send ) { //send, checkout and loggedIn filter !!!! removed && (isNumeric((vID)))\n if (!isNumeric(vID)) {\n if (debugScr) console.log(\"[ZineOne] Anonymous user - \" + vID);\n var anon_fsg_data = {\n 'fsg': {\n '_d': \"1\",\n '_t': \"75\"\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n localStorage.setItem('z1_fsg_data', JSON.stringify(anon_fsg_data));\n // fsg(JSON.stringify(anon_fsg_data));\n setTimeout(function() {\n let raw_data_event = new CustomEvent('onZ1RawData', {\n detail: JSON.parse(localStorage.getItem(\"z1_fsg_data\"))\n });\n document.dispatchEvent(raw_data_event);\n }, 400);\n\n } else {\n\n var dummy_data = {\n 'fsg': {\n '_d': \"0\",\n '_t': \"75\"\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data)); // setting dummy data\n\n var evtNoData = {};\n //ZineOne.pushEvent(\"_ws_z1__sb_fsg\", evtData);\n ZineOne.pushEvent(\"_ws_z1__sb_fsg\", evtNoData);\n\n if (debugScr) console.log(\"[ZineOne] Known user - \" + vID);\n if (debugScr) console.log(\"[ZineOne] pushing fsg \" + vID);\n }\n } else {\n if (debugScr) console.log(\"[ZineOne] Event not sent; or checkout\");\n }*/\n //}\n\n }\n\n function setKohlsId() {\n /*\n var cusId = pageData.customerDetails.customerID;\n if (isNumeric(cusId)) {\n ZineOne.setCustomerId(cusId);\n if (debugScr) console.log(\"[ZineOne] Found the customer Id from pageData : \" + cusId);\n }\n */\n var vID = getCookie(\"VisitorId\");\n if (debugScr) console.log(\"[ZineOne] cookie_VisitorId : \" + vID);\n if (isNumeric(vID)) {\n ZineOne.setCustomerId(vID);\n if (debugScr) console.log(\"[ZineOne] Found the customer Id from cookie_VisitorId : \" + vID);\n }\n }\n\n /*function getTotalSKUInventory(qtyInfo) {\n var sumQty = 0;\n if (qtyInfo) {\n var totalSKUs = qtyInfo.length;\n for (i = 0; i < totalSKUs; i++) {\n qtyObj = qtyInfo[i];\n if (qtyObj && qtyObj.ShipAvlQty)\n sumQty = sumQty + Number(qtyObj.ShipAvlQty);\n }\n }\n return sumQty;\n }*/\n\n function addEventData() {\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n\n setKohlsId();\n\n /*\n var cusId = pageData.customerDetails.customerID;\n\n if (isNumeric(cusId)) {\n ZineOne.setCustomerId(cusId);\n if (debugScr) console.log(\"[ZineOne] Found the customer Id from pageData : \" + cusId);\n }*/\n } else {\n if (debugScr) console.log(\"[ZineOne] pageData NOT initialized. Cannot set customerId or login state.\");\n }\n\n // Check Items in Cart, not avail on PDP\n if (pgName != \"PDP\") {\n var itemsInBag = 0;\n var cartItems, cartId, cartTotalValue, cartSubTotalValue, cartShippingValue, cartDiscountValue;\n if (pageData && pageData.cartDetails) {\n itemsInBag = pageData.cartDetails.numberOfItems;\n if (debugScr) console.log('[ZineOne] Number of Items in the cart: ' + itemsInBag);\n cartId = pageData.cartDetails.cartID;\n cartTotalValue = pageData.cartDetails.cartTotalValue;\n cartSubTotalValue = pageData.cartDetails.cartSubTotalValue;\n cartShippingValue = pageData.cartDetails.shippingValue;\n cartDiscountValue = pageData.cartDetails.discountValue;\n\n //cartItems = pageData.cartDetails.cartItems;\n cartItems = getCartData();\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n }\n\n //ZineOne.setCustomKey(\"customerId\", RRTrackingBean.profileId);\n // replace e with var from webstore page (consider profile attr per Manish)\n // maybe do on page unload so you grab it once on first page and use it afterwards\n evtData.itemsInBag = itemsInBag;\n if (cartId) evtData.cartId = cartId;\n if (cartTotalValue) evtData.cartTotalValue = cartTotalValue;\n if (cartSubTotalValue) evtData.cartSubTotalValue = cartSubTotalValue;\n if (cartShippingValue) evtData.cartShippingValue = cartShippingValue;\n if (cartDiscountValue) evtData.cartDiscountValue = cartDiscountValue;\n if (cartItems) evtData.cartItems = cartItems;\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n }\n\n if (pgName == \"PDP\") {\n\n if (pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID) {\n evtData.productId = pageData.productDetails.pageItems[0].productID;\n }\n console.log(\"myId ==> \",myId);\n if(!evtData.productId){\n //if (myId == \"3000000074262095\"){\n if(productV2JsonData && productV2JsonData.webID){\n console.log(\"productId ==> \",productV2JsonData.webID);\n evtData.productId=productV2JsonData.webID;\n }\n //}\n }\n \n\n if (pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].isOnSale) {\n evtData.isOnSale = pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].isOnSale;\n }\n\n if (pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].salePrice) {\n evtData.salePrice = pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].salePrice;\n }\n\n if (pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].originalPrice) {\n evtData.originalPrice = pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].originalPrice;\n }\n\n evtData.PDPCategory = pageData.productDetails && pageData.productDetails.categoryName;\n // This is PDP scarcity inventory info\n if (pageData && pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems.QtyInfo) {\n //evtData.sumQtyInfo = getTotalSKUInventory(pageData.productDetails.pageItems.QtyInfo);\n evtData.prd_inv = JSON.stringify(pageData.productDetails.pageItems.QtyInfo);\n }\n\n }\n\n var isLoyaltyPilotUser = isValid(pageData) && isValid(pageData.customerDetails) && isValid(pageData.customerDetails.kohlsLoyalty2018Member) && pageData.customerDetails.kohlsLoyalty2018Member;\n var isLoyaltyPilotMVCUser = isValid(pageData) && isValid(pageData.customerDetails) && isValid(pageData.customerDetails.kohlsLoyalty2018EliteMember) && pageData.customerDetails.kohlsLoyalty2018EliteMember;\n var isLoyaltyUser = isLoyaltyPilotUser || isLoyaltyPilotMVCUser;\n //New Requirement from Shilpa for Abandoned Cart, 03/22/2019\n if (isLoyaltyUser) evtData[\"loyaltyUser\"] = isLoyaltyUser;\n\n var notificationpopoverId = document.getElementById(\"notificationpopover\");\n var kcNotificationPopoverInnerHTML = \"\";\n if (isValid(notificationpopoverId)) {\n kcNotificationPopoverInnerHTML = document.getElementById(\"notificationpopover\").innerHTML;\n }\n\n\n var kcMidPageBanner = (isValid($env.ksLoyaltyV2) && ($env.ksLoyaltyV2 == true) && isValid($(\"#fancybox-content .notificationPanelContent-kcreminder-v2\")) && $(\"#fancybox-content .notificationPanelContent-kcreminder-v2\").length >= 1) ? true : false;\n //evtData[\"kcNotificationBannerSeen\"] = kcNotificationPopoverInnerHTML != \"\" ? true : false;\n\n evtData[\"kcNotificationBannerSeen\"] = (kcNotificationPopoverInnerHTML != \"\" || kcMidPageBanner) ? true : false;\n\n var aka_hp2_cookie = getCookie(\"AKA_HP2\");\n var aka_rv_cookie = getCookie(\"AKA_RV\");\n evtData[\"aka_hp2\"] = isValid(aka_hp2_cookie) ? aka_hp2_cookie : \"\";\n evtData[\"aka_rv\"] = isValid(aka_rv_cookie) ? aka_rv_cookie : \"\";\n\n //guest user cookie check \n var dyn_user_id = getCookie(\"DYN_USER_ID\");\n evtData[\"dyn_user_id\"] = isValid(dyn_user_id) ? true : false;\n\n\n //PerkPerf Start\n try {\n var birthday_cookie_flag = '';\n\n var cookie_title = \"z1_perk_perf\";\n\n var birthday_cookie = getBirthdayCookie(cookie_title);\n\n console.log(\"READ birthday_cookie\" + birthday_cookie);\n\n if (isValid(birthday_cookie)) {\n\n birthday_cookie_flag = birthday_cookie;\n\n } else {\n\n birthday_cookie_flag = '';\n\n }\n\n evtData[\"birthday_cookie\"] = birthday_cookie_flag;\n\n } catch (cookerr) {\n console.log(\"bday cookie error\", cookerr);\n }\n\n\n try {\n\n var dataLayerCustomerDetails = JSON.parse(localStorage.getItem(\"dataLayerCustomerDetails\"));\n\n evtData[\"isMVCUser\"] = $env.rewardsPilot;\n\n var kl_id = dataLayerCustomerDetails.kohlsLoyaltyID;\n var kl_id_flag = kl_id.includes(\"N/A\");\n\n if (!(kl_id_flag) && String($env.rewardsPilot) == \"false\") {\n evtData[\"isY2YUser\"] = \"true\";\n } else {\n evtData[\"isY2YUser\"] = \"false\";\n }\n\n\n console.log(\"[Z1]READ cookie UserType::\" + evtData);\n console.log(\"[Z1]READ cookie UserType::stringify\" + JSON.stringify(evtData));\n\n\n } catch (errUserType) {\n console.log(\"bday cookie errUserType\", errUserType);\n }\n\n ///kkk new end\n\n //check for customerid if non-numeric\n var cust_id_non_numeric = localStorage.getItem('dataLayerCustomerDetails');\n if (isValid(cust_id_non_numeric)) {\n var isGuestUser_id = isNaN(JSON.parse(cust_id_non_numeric).customerID);\n evtData[\"isGuestUser_id_NAN\"] = isGuestUser_id;\n\n }\n\n //PerkPerf End\n\n //Check cookie: digiNotify\n var digiNotify = getCookie(\"digiNotify\");\n if (debugScr) console.log(\"[ZineOne] digiNotify value is:\" + digiNotify);\n\n if (digiNotify)\n evtData[\"digiNotify\"] = digiNotify;\n\n //Reqards Data start\n try {\n var rewardsData = localStorage.getItem('z1_rewardsData');\n\n if (isValid(rewardsData)) {\n evtData[\"rewardsData\"] = JSON.stringify(rewardsData);\n } \n } catch (errr) {\n console.log(\"rewardsData\" + errr);\n }\n //Reqards Data end\n\n\n if (isSoftLoggedIn) evtData[\"isSoftLoggedIn\"] = isSoftLoggedIn;\n if (isLoggedIn) evtData[\"isLoggedIn\"] = isLoggedIn;\n if (debugScr) console.log(\"[ZineOne] evtName = \" + evtName);\n if (debugScr) console.log(\"[ZineOne] evtData =\" + JSON.stringify(evtData));\n return true;\n }\n //ZineOne.pushEvent(evtName, evtData);\n\n /*\n window.addEventListener(\"beforeunload\", function(e) {\n var _z1_el = document.activeElement;\n //console.log('[ZineOne] activeElement = ' + _z1_el);\n //is usr leaving the site?\n //if ((_z1_el.nodeName === 'BODY') || (_z1_el.href && _z1_el.href.indexOf('kohls.com/') === -1))\n {\n //send event\n var _z1_timeOnPage = parseInt((performance.now() - _z1_pgStart) / 1000);\n var _z1_evtMap = {\n 'pgName': pgName,\n 'timeOnPage': _z1_timeOnPage,\n 'url': document.URL,\n 'ae': document.activeElement.nodeName\n };\n ZineOne.pushEvent(\"_z1_pageUnloaded\", _z1_evtMap);\n // console.log('[ZineOne] fired _z1_pageUnloaded with pgName=' + _z1_pageName + ', url=' + document.URL + ' and timeOnPage=' + _z1_timeOnPage);\n }\n });\n */\n\n\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n\n\n\n function validateForNotNull(obj) {\n //console.log('validateForNotNull',obj,typeof(obj));\n if (!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0) {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array, attribute) {\n var stringVector = '';\n\n if (debugScr) console.log(\"spltArrayObjectDataIntoVector attribute\", attribute, array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n\n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array, mainAttribute, innerAttribute) {\n var stringVector = '';\n\n if (debugScr) console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\", mainAttribute, innerAttribute, array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n if (debugScr) console.log('spltArrayObjectDataIntoVector ', spltArrayObjectDataIntoVector(attributeValueArr, innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr, innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array, mainAttribute, innerAttribute) {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n\n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n if(!isValid(persistLocalData)){\n persistLocalData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n\n\n\n return finalReturnObj;\n }\n\n function fetchFilterData(cnString, oldCnFromEvent) {\n var finalReturnString = '';\n\n var splitCnString = cnString.toString().split(\"+\");\n\n var currentFilterObj = {};\n var oldCnFromEventSplit = oldCnFromEvent.toString().split(\"|\");\n\n //console.log('oldCnFromEventSplit',oldCnFromEventSplit,oldCnFromEventSplit.length);\n\n for (var i = (oldCnFromEventSplit.length - 1); i >= 0; i--) {\n if (oldCnFromEventSplit[i].length == 0 || oldCnFromEventSplit[i] == '-') {\n continue;\n }\n\n var innerObj = oldCnFromEventSplit[i].split(\"+\");\n\n if (innerObj.length > 0) {\n for (var k = 0; k < innerObj.length; k++) {\n var filterObj = innerObj[k].split(\":\");\n var filterName = filterObj[0];\n var filterValue = filterObj[1];\n\n currentFilterObj[filterName] = filterValue;\n }\n\n break;\n }\n\n }\n\n var alreadyUsedObj = {};\n\n //console.log(splitCnString);\n for (var i = 0; i < splitCnString.length; i++) {\n var filterObj = splitCnString[i].split(\":\");\n var filterName = filterObj[0];\n\n //console.log('Filter Name ',filterName);\n //console.log('Filter Value ',filterValue);\n\n if (filterName in alreadyUsedObj) {\n continue;\n }\n\n alreadyUsedObj[filterName] = true;\n\n if (filterName in currentFilterObj) {\n currentFilterObj[filterName] = Number(currentFilterObj[filterName]) + 1;\n } else {\n currentFilterObj[filterName] = 1;\n }\n\n\n }\n\n //console.log('currentFilterObj',currentFilterObj);\n\n var filterkeys = Object.keys(currentFilterObj);\n for (var i = 0; i < filterkeys.length; i++) {\n finalReturnString = finalReturnString + filterkeys[i] + ':' + currentFilterObj[filterkeys[i]] + '+';\n }\n\n finalReturnString = finalReturnString.substring(0, finalReturnString.length - 1);\n\n return finalReturnString;\n\n\n }\n\n function fetchNewAttributesForVectorization(eventData, eventName) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n if(persistLocalData && !isValid(persistLocalData)){\n persistLocalData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n\n if (validateForNotNull(persistLocalData)) {\n var pageDataJson = pageData;\n\n persistLocalData = JSON.parse(persistLocalData);\n\n console.log('Into switch in fetchNewAttributesForVectorization', eventName);\n\n if (debugScr) console.log('Into switch in fetchNewAttributesForVectorization', eventName);\n\n switch (eventName.toLowerCase()) {\n case \"_ws_viewedcatalog\":\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.categoryName)) {\n finalReturnObj.pgdata_pmpdet_catname = pageDataJson.pmpDetails.categoryName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.subcategoryName)) {\n finalReturnObj.pgdata_pmpdet_subcatname = pageDataJson.pmpDetails.subcategoryName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.findingName)) {\n finalReturnObj.pgdata_pmpdet_findingname = pageDataJson.pmpDetails.findingName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.keywords)) {\n finalReturnObj.pgdata_pmpdet_cat_keywords = pageDataJson.pmpDetails.keywords;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.pageFilter)) {\n finalReturnObj.pgdata_pmpdet_pgfilter = pageDataJson.pmpDetails.pageFilter;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.departmentName)) {\n finalReturnObj.pgdata_pmpdet_deptname = pageDataJson.pmpDetails.departmentName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.genderValues)) {\n finalReturnObj.pgdata_pmpdet_gendervalues = pageDataJson.pmpDetails.genderValues;\n }\n\n\n var newUserVectors = localStorage.getItem('z1_newUserVectors');\n\n if (newUserVectors && newUserVectors.length > 0) {\n var newUserVectorsJson = JSON.parse(newUserVectors);\n var currentFilterString = newUserVectorsJson.filter_by_count;\n\n if (validateForNotNull(getUrlParameter('CN')) && validateForNotNull(currentFilterString)) {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'), currentFilterString);\n }\n\n } else {\n if (validateForNotNull(getUrlParameter('CN'))) {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'), '');\n }\n\n }\n\n var selectFilter = document.getElementById('sortby_select');\n if (selectFilter) {\n var selectedValue = selectFilter.options[selectFilter.selectedIndex].value;\n if (validateForNotNull(selectedValue)) {\n finalReturnObj.sort_by = selectedValue;\n }\n }\n\n break;\n\n case \"_ws_viewedproduct\":\n\n if (debugScr) console.log('Into _ws_viewedproduct in fetchNewAttributesForVectorization');\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.collectionID)) {\n finalReturnObj.pgdata_proddet_colid = pageDataJson.productDetails.collectionID;\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.pageItems) && validateForNotNull(pageDataJson.productDetails.pageItems[0]) && validateForNotNull(pageDataJson.productDetails.pageItems[0].SKUS)) {\n finalReturnObj.prod_sku_count = pageDataJson.productDetails.pageItems[0].SKUS.length;\n }\n\n\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n var skuSize = Kjs.mainPanel.getBagItem('size');\n var skuColor = Kjs.mainPanel.getBagItem('color');\n var regularPrice = Kjs.mainPanel.getBagItem('regularPrice');\n var salePrice = Kjs.mainPanel.getBagItem('salePrice');\n\n if (validateForNotNull(skuCode)) {\n finalReturnObj.selected_sku = skuCode;\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.pageItems) && validateForNotNull(pageDataJson.productDetails.pageItems.QtyInfo)) {\n\n var currentQtyInfo = pageDataJson.productDetails.pageItems.QtyInfo;\n\n for (var k = 0; k < currentQtyInfo.length; k++) {\n var innerObj = currentQtyInfo[k];\n if (innerObj.skuCode == skuCode) {\n finalReturnObj.sku_bopus_avail = innerObj.BopusAvlQty;\n finalReturnObj.sku_boss_avail = innerObj.BossAvlQty;\n finalReturnObj.sku_ship_avail = innerObj.ShipAvlQty;\n break;\n }\n }\n\n\n\n }\n }\n\n if (validateForNotNull(skuColor)) {\n finalReturnObj.selected_sku_color = skuColor;\n }\n\n if (validateForNotNull(skuSize)) {\n finalReturnObj.selected_sku_size = skuSize;\n }\n\n if (validateForNotNull(regularPrice)) {\n finalReturnObj.sku_reg_price = regularPrice.replace(\"$\", \"\");\n }\n\n if (validateForNotNull(salePrice)) {\n finalReturnObj.selected_sku_sale_price = salePrice.replace(\"$\", \"\");\n\n var regPriceNum = Number(finalReturnObj.sku_reg_price);\n var salePriceNum = Number(finalReturnObj.selected_sku_sale_price);\n\n if (!isNaN(salePriceNum)) {\n finalReturnObj.sku_per_dis = (((regPriceNum - salePriceNum) * (100)) / regPriceNum).toFixed(2);\n }\n\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.categoryName)) {\n finalReturnObj.pgdata_proddet_catname = pageDataJson.productDetails.categoryName;\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.subcategoryName)) {\n finalReturnObj.pgdata_proddet_subcatname = pageDataJson.productDetails.subcategoryName;\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.departmentName)) {\n finalReturnObj.pgdata_proddet_deptname = pageDataJson.productDetails.departmentName;\n }\n\n\n break;\n\n\n case \"_ws_viewedsku\":\n\n if (debugScr) console.log('Into _ws_viewedproduct in fetchNewAttributesForVectorization');\n\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n var skuSize = Kjs.mainPanel.getBagItem('size');\n var skuColor = Kjs.mainPanel.getBagItem('color');\n var regularPrice = Kjs.mainPanel.getBagItem('regularPrice');\n var salePrice = Kjs.mainPanel.getBagItem('salePrice');\n\n\n if (validateForNotNull(skuCode)) {\n finalReturnObj.selected_sku = skuCode;\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.pageItems) && validateForNotNull(pageDataJson.productDetails.pageItems.QtyInfo)) {\n\n var currentQtyInfo = pageDataJson.productDetails.pageItems.QtyInfo;\n\n for (var k = 0; k < currentQtyInfo.length; k++) {\n var innerObj = currentQtyInfo[k];\n if (innerObj.skuCode == skuCode) {\n finalReturnObj.sku_bopus_avail = innerObj.BopusAvlQty;\n finalReturnObj.sku_boss_avail = innerObj.BossAvlQty;\n finalReturnObj.sku_ship_avail = innerObj.ShipAvlQty;\n break;\n }\n }\n\n\n\n }\n }\n\n if (validateForNotNull(skuColor)) {\n finalReturnObj.selected_sku_color = skuColor;\n }\n\n if (validateForNotNull(skuSize)) {\n finalReturnObj.selected_sku_size = skuSize;\n }\n\n if (validateForNotNull(regularPrice)) {\n finalReturnObj.sku_reg_price = regularPrice.replace(\"$\", \"\");\n }\n\n if (validateForNotNull(salePrice)) {\n finalReturnObj.selected_sku_sale_price = salePrice.replace(\"$\", \"\");\n\n var regPriceNum = Number(finalReturnObj.sku_reg_price);\n var salePriceNum = Number(finalReturnObj.selected_sku_sale_price);\n\n\n finalReturnObj.sku_per_dis = (((regPriceNum - salePriceNum) * (100)) / regPriceNum).toFixed(2);\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.categoryName)) {\n finalReturnObj.pgdata_proddet_catname = pageDataJson.productDetails.categoryName;\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.subcategoryName)) {\n finalReturnObj.pgdata_proddet_subcatname = pageDataJson.productDetails.subcategoryName;\n }\n\n if (validateForNotNull(pageDataJson.productDetails) && validateForNotNull(pageDataJson.productDetails.departmentName)) {\n finalReturnObj.pgdata_proddet_deptname = pageDataJson.productDetails.departmentName;\n }\n\n if (validateForNotNull(pageDataJson.productDetails)) {\n finalReturnObj.selected_prd_id = (pageDataJson.productDetails && pageDataJson.productDetails.pageItems[0] && pageDataJson.productDetails.pageItems[0].productID) || '-';\n }\n\n break;\n\n\n case \"_ws_searched\":\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.keywords)) {\n finalReturnObj.pgdata_pmpdet_search_keywords = pageDataJson.pmpDetails.keywords;\n }\n\n var newUserVectors = localStorage.getItem('z1_newUserVectors');\n\n if (newUserVectors && newUserVectors.length > 0) {\n var newUserVectorsJson = JSON.parse(newUserVectors);\n var currentFilterString = newUserVectorsJson.filter_by_count;\n\n if (validateForNotNull(getUrlParameter('CN')) && validateForNotNull(currentFilterString)) {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'), currentFilterString);\n }\n\n } else {\n if (validateForNotNull(getUrlParameter('CN'))) {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'), '');\n }\n\n }\n\n var selectFilter = document.getElementById('sortby_select');\n if (selectFilter) {\n var selectedValue = selectFilter.options[selectFilter.selectedIndex].value;\n if (validateForNotNull(selectedValue)) {\n finalReturnObj.sort_by = selectedValue;\n }\n }\n\n break;\n\n\n case \"_ws_viewedcart\":\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.clientPostalCode)) {\n finalReturnObj.pgdata_pddetails_clientpostalcode = pageDataJson.pageDetails.clientPostalCode;\n }\n\n break;\n\n case \"_ws_update_hcart\":\n\n\n var currentCartUpdates = localStorage.getItem('z1_current_cart_data_update');\n currentCartUpdates = JSON.parse(currentCartUpdates);\n finalReturnObj.updated_sku = currentCartUpdates.updatedSku;\n finalReturnObj.updated_sku_qty = currentCartUpdates.updatedskuQty;\n finalReturnObj.removed_sku = currentCartUpdates.removedSku;\n\n localStorage.removeItem('z1_current_cart_data_update');\n\n finalReturnObj.shpi_shpp_ogshpchrgs = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'originalShippingCharges');\n finalReturnObj.shpi_shpp_shpchrgsafdis = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'shippingChargesAfterDiscount');\n finalReturnObj.shpi_shpp_freeshpqlfdelta = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'freeShipQualificationDelta');\n finalReturnObj.shpi_shpp_shpitmstotal = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'shipmentItemsTotal');\n\n finalReturnObj.shpi_shpo_disamnt = spltArrayObjectWithArrayObjectDataIntoVector(persistLocalData.shipmentInfo, 'shippingOffers', 'discountAmount');\n\n\n if (validateForNotNull(persistLocalData.orderSummary.merchandisePromoAmount)) {\n finalReturnObj.or_merpromoamnt = persistLocalData.orderSummary.merchandisePromoAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.discountedShippingAmount)) {\n finalReturnObj.or_disshpamnt = persistLocalData.orderSummary.discountedShippingAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.originalShippingAmount)) {\n finalReturnObj.or_ogshpamnt = persistLocalData.orderSummary.originalShippingAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.estimated)) {\n finalReturnObj.or_tax_est = persistLocalData.orderSummary.tax.estimated;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.taxRate)) {\n finalReturnObj.or_tax_taxrt = persistLocalData.orderSummary.tax.taxRate;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.tax)) {\n finalReturnObj.or_tax_tax = persistLocalData.orderSummary.tax.tax;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalSurcharges)) {\n finalReturnObj.or_totalsur = persistLocalData.orderSummary.totalSurcharges;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalTaxFee)) {\n finalReturnObj.or_totaltaxfree = persistLocalData.orderSummary.totalTaxFee;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalKohlsCashAndPromoDiscounts)) {\n finalReturnObj.or_totalkcpromodis = persistLocalData.orderSummary.totalKohlsCashAndPromoDiscounts;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalTax)) {\n finalReturnObj.or_totaltax = persistLocalData.orderSummary.totalTax;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.total)) {\n finalReturnObj.or_total = persistLocalData.orderSummary.total;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.savings)) {\n finalReturnObj.or_savings = persistLocalData.orderSummary.savings;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.taxFeeEnabled)) {\n finalReturnObj.or_taxfeeen = persistLocalData.orderSummary.taxFeeEnabled;\n }\n\n break;\n\n }\n }\n\n\n return finalReturnObj;\n\n }\n\n function fetchCartDump() {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n if(!isValid(persistLocalData)){\n persistLocalData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if (validateForNotNull(cartData)) {\n for (var i = 0; i < cartData.length; i++) {\n if (i == 15) {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if (validateForNotNull(currentObj.storeClearance)) {\n currentFinalObjToSend.sc = currentObj.storeClearance;\n }\n\n if (validateForNotNull(currentObj.itemProperties.size)) {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n\n if (validateForNotNull(currentObj.itemProperties.color)) {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n\n if (validateForNotNull(currentObj.itemProperties.isWebExclusive)) {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive;\n }\n\n\n var finalInvInfo = {};\n\n if (validateForNotNull(currentObj.inventoryInfo.shipAvailable)) {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.bopusAvailable)) {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.bossAvailable)) {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip)) {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip;\n }\n\n if (validateForNotNull(currentObj.finalInvInfo)) {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo;\n }\n\n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ', currentPromoInfo);\n\n if (validateForNotNull(currentPromoInfo)) {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for (var j = 0; j < currentPromoInfo.length; j++) {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if (validateForNotNull(currentPromoObj.promoType)) {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType;\n }\n\n if (validateForNotNull(currentPromoObj.promoText)) {\n prTextArr[prTextArr.length] = currentPromoObj.promoText;\n }\n\n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n\n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ', currentOfferInfo);\n\n if (validateForNotNull(currentOfferInfo)) {\n var finalOfferInfoArray = [];\n\n for (var j = 0; j < currentOfferInfo.length; j++) {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if (validateForNotNull(currentOfferInfoObj.offerDiscount)) {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount;\n }\n\n if (validateForNotNull(currentOfferInfoObj.startDate)) {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate;\n }\n\n if (validateForNotNull(currentOfferInfoObj.endDate)) {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate;\n }\n\n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n\n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ', shipmentInfo);\n\n if (validateForNotNull(shipmentInfo)) {\n var finalshipmentInfoArray = [];\n\n for (var j = 0; j < shipmentInfo.length; j++) {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {};\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges)) {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount)) {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta)) {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal)) {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal;\n }\n\n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if (validateForNotNull(shippingOffers)) {\n var finalshippingOfferArray = [];\n\n for (var k = 0; k < shippingOffers.length; k++) {\n var currentshippingOffersObj = shippingOffers[k];\n\n if (validateForNotNull(currentshippingOffersObj.discountAmount)) {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount;\n }\n\n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary;\n\n var finalOrderSummaryObj = {};\n\n if (validateForNotNull(orderSummary.merchandisePromoAmount)) {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount;\n }\n\n if (validateForNotNull(orderSummary.discountedShippingAmount)) {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n\n if (validateForNotNull(orderSummary.originalShippingAmount)) {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated)) {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate)) {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax)) {\n finalOrderSummaryObj.tax = orderSummary.tax.tax;\n }\n\n if (validateForNotNull(orderSummary.totalSurcharges)) {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges;\n }\n\n if (validateForNotNull(orderSummary.totalTaxFee)) {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee;\n }\n\n if (validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts)) {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts;\n }\n\n if (validateForNotNull(orderSummary.totalTax)) {\n finalOrderSummaryObj.totTax = orderSummary.totalTax;\n }\n\n if (validateForNotNull(orderSummary.total)) {\n finalOrderSummaryObj.total = orderSummary.total;\n }\n\n if (validateForNotNull(orderSummary.savings)) {\n finalOrderSummaryObj.sav = orderSummary.savings;\n }\n\n if (validateForNotNull(orderSummary.taxFeeEnabled)) {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled;\n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n function fetchMcmId() {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n function getSkuPriceObj(skuId)\n {\n if(pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].SKUS)\n {\n var skuArr = pageData.productDetails.pageItems[0].SKUS;\n\n for(var i=0;i<skuArr.length;i++)\n {\n var tempObj = skuArr[i]\n\n if(tempObj.skuId == skuId)\n {\n return tempObj;\n }\n }\n }\n\n return null;\n }\n\n\n function getPresentVector(isRto, rtoEventType) {\n try {\n\n if (debugScr) console.log('getPresentVector');\n\n var itemsInBag = 0;\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if(cartData && !isValid(cartData)){\n cartData = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n \n if (isValid(cartData)) {\n var cartInfo = JSON.parse(cartData);\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n if (cartInfo.cartItems[i].itemPriceInfo.grossPrice) {\n cartValue = cartValue + Number(cartInfo.cartItems[i].itemPriceInfo.grossPrice);\n }\n\n\n var tempObj = {};\n tempObj.productId = cartInfo.cartItems[i].productId;\n tempObj.skuId = cartInfo.cartItems[i].skuId;\n tempObj.quantity = cartInfo.cartItems[i].quantity;\n tempObj.itemType = cartInfo.cartItems[i].itemType;\n\n currentUserCartArr.push(tempObj);\n\n }\n } else {\n\n var cookieBagTotal = getCookie('VisitorBagTotals');\n if (cookieBagTotal && cookieBagTotal.toString().length != 0) {\n isJsonNull = true;\n\n cartValue = -1;\n\n\n }\n\n }\n\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n console.log(cartValue + ' Before Present Vector ', evtName);\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n console.log('Present Vector 1', presentVector);\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n\n if (isRto == true) {\n presentVector.event = eventCodes[\"_ws_rto\"];\n\n if (rtoEventType != null) {\n\n var rtoPageCode = '';\n\n switch (evtName.toLowerCase()) {\n case \"_ws_viewedhome\":\n\n rtoPageCode = 'HP';\n\n break;\n\n case \"_ws_searched\":\n\n rtoPageCode = 'SP';\n\n break;\n\n case \"_ws_viewedcatalog\":\n\n rtoPageCode = 'TP';\n\n break;\n case \"_ws_viewedproduct\":\n\n rtoPageCode = 'PP';\n\n\n break;\n\n case \"_ws_viewedsku\":\n\n rtoPageCode = 'PP';\n\n\n break;\n\n case \"_ws_viewedcart\":\n\n rtoPageCode = 'CP';\n\n break;\n\n case \"_ws_addedtobag\":\n\n rtoPageCode = 'PP';\n\n break;\n }\n\n switch (rtoEventType) {\n case \"qualification_test\":\n\n presentVector.rto_data = 'Q:T';\n\n break;\n\n case \"qualification_control\":\n\n presentVector.rto_data = 'Q:C';\n\n break;\n\n case \"shown\":\n\n presentVector.rto_data = 'S:' + rtoPageCode;\n\n break;\n\n case \"applied\":\n\n presentVector.rto_data = 'A';\n\n break;\n }\n\n\n\n evtName = '_ws_rto';\n }\n\n }\n\n if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n if (typeof pageData != 'undefined') {\n\n if(pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID)\n {\n presentVector.productID = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID) || '-';\n presentVector.originalPrice = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].originalPrice) || '-';\n presentVector.salePrice = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].salePrice) || '-';\n presentVector.PDPCategory = (pageData.productDetails && pageData.productDetails.categoryName) || '-';\n presentVector.onSale = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].isOnSale) || '-'; \n }\n\n if (typeof productV2JsonData != 'undefined') {\n\n var skuPriceObj = getSkuPriceObj(productV2JsonData.preSelectedSku);\n\n if(skuPriceObj)\n {\n presentVector.originalPrice = skuPriceObj.regularPrice.toString().substring(1,skuPriceObj.regularPrice.length);\n presentVector.salePrice = skuPriceObj.salePrice.toString().substring(1,skuPriceObj.salePrice.length);\n presentVector.PDPCategory = (pageData.productDetails && pageData.productDetails.categoryName) || '-';\n presentVector.onSale = '-';\n }\n\n presentVector.productID = (productId) || '-';\n \n }\n\n \n } else {\n var prodUrlSplit = window.location.pathname.toString().split('prd-')[1];\n var firstIndexOf = prodUrlSplit.indexOf('/');\n\n presentVector.productID = prodUrlSplit.substring(0, firstIndexOf);\n }\n presentVector.userPFM = getUrlParameter('userPFM') || '-';\n }\n\n if (evtName.toLocaleLowerCase() == '_ws_searched') {\n\n presentVector.keywords = (pageData.pmpDetails && pageData.pmpDetails && pageData.pmpDetails.keywords) || '-';\n if (typeof pageData != 'undefined') {\n presentVector.CN = getUrlParameter('CN') || '-';\n presentVector.visualNavForm = getUrlParameter('VisualNavFrom') || '-';\n }\n var isFrmRecentSearch = getUrlParameter('isFrmRecentSearch');\n var isFrmTypeAhead = getUrlParameter('isFrmTypeAhead');\n presentVector.searchType = (isFrmRecentSearch == 'TRUE' && isFrmTypeAhead == 'TRUE') ? 'recent+typeahead' : (isFrmRecentSearch == 'TRUE' ? 'recent' : (isFrmTypeAhead == 'TRUE' ? 'typeahead' : '-'));\n }\n\n if (debugScr) console.log('Got Page Event Name ' + evtName.toLocaleLowerCase());\n\n if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n if (typeof pageData != 'undefined') {\n presentVector.department = (pageData.pmpDetails && pageData.pmpDetails.departmentName) || '-';\n presentVector.pageFilter = (pageData.pmpDetails && pageData.pmpDetails.pageFilter) || '-';\n }\n presentVector.CN = getUrlParameter('CN') || '-';\n presentVector.visualNavForm = getUrlParameter('VisualNavFrom') || '-';\n }\n\n presentVector = fetchNewAttributesForVectorization(presentVector, evtName);\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ', ie);\n }\n }\n\n\n\n function updateUserVectors(isRto, rtoEventType) {\n try {\n\n if (!isValid(evtName)) {\n return;\n }\n\n if (debugScr) console.log('Into updateUserVectors');\n var presentVector = getPresentVector(isRto, rtoEventType);\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n if (debugScr) console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try {\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n var cartDump = fetchCartDump();\n\n if (validateForNotNull(cartDump)) {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for (var k = 0; k < cartKeys.length; k++) {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n if (validateForNotNull(newUserVectors)) {\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n } catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'webstoresendevent ' + evtName;\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n if (debugScr) console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n if (debugScr) console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue = cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge)) {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n } else {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if (isJsonNull) {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = pgName;\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n if (debugScr) console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ', ie);\n }\n }\n\n function updateFeatures() {\n\n if (debugScr) console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n\n\n\n\n\n function _handleRawData(rawData, ctaData) {\n //debugScr = true;\n if (debugScr)\n console.log('[ZineOne-om] rawData recd ' + rawData);\n try {\n var showMsg = true;\n var z1Response = JSON.parse(rawData);\n\n let raw_data_event = new CustomEvent('onZ1RawData', {\n detail: z1Response\n });\n document.dispatchEvent(raw_data_event);\n\n\n if (debugScr) console.log('[ZineOne-om] omniture z1Response is Before Urgency ', typeof z1Response);\n\n if (z1Response && z1Response.pdpUrgencyMsg) {\n\n var isTopRated = document.getElementsByClassName(\"tce-toprated-text\");\n if (isTopRated.length >= 1) {\n //var topRatedDiv = isTopRated[0];\n showMsg = false;\n }\n var isKChoice = document.getElementsByClassName(\"tce-kchoice\");\n if (isKChoice.length >= 1) {\n //var topRatedDiv = isTopRated[0];\n showMsg = false;\n }\n if (debugScr) console.log('[ZineOne-om] Show Message Flag ', showMsg);\n if (showMsg) {\n\n if (z1Response.pdpUrgencyTag.includes(\"scarcity\")) {\n\n if (debugScr) console.log(\"[ZineOne]I am here 5\");\n\n if (localStorage.getItem(\"z1_cust_id\") == \"3000000018326613\" || localStorage.getItem(\"z1_cust_id\") == \"3000000015510732\" ||\n localStorage.getItem(\"z1_cust_id\") == \"3000000013469959\" || localStorage.getItem(\"z1_cust_id\") == \"2254024615400568\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254015584448533\" || localStorage.getItem(\"z1_cust_id\") == \"2253998883117448\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254015110568294\" || localStorage.getItem(\"z1_cust_id\") == \"3000000013617619\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2254009728812139\" || localStorage.getItem(\"z1_cust_id\") == \"2254040233704719\" ||\n localStorage.getItem(\"z1_cust_id\") == \"2253999797960783\") {\n var z1Div = document.getElementById(\"z1-pdpscarcity\");\n if (isValid(z1Div)) {\n if (debugScr) console.log(\"[ZineOne] pdpscarcity!\");\n z1Div.innerHTML = z1Response.pdpUrgencyMsg;\n //z1Div.innerHTML = \"<i>Just a</i> <b> few left!!</b>\";\n z1Div.style.display = \"block\";\n }\n }\n\n } else {\n console.log('[ZineOne-om] Show Urgency');\n var z1div = document.getElementById(\"z1-pdpurgency\");\n z1div.innerHTML = z1Response.pdpUrgencyMsg;\n //z1div.style.display = \"block !important\";\n\n function overrideStyle(styles) {\n let css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n let styles = '#z1-pdpurgency {display: block !important;}';\n overrideStyle(styles);\n\t\t\t\t\t\t\tstoreUrgencyMsg = document.getElementById(\"PDP_z1Social_badge\") ? document.getElementById(\"PDP_z1Social_badge\").innerHTML : \"\";\n\n console.log('[ZineOne-om] rawData recd ' + z1div);\n console.log('[ZineOne-om] rawData recd ' + z1Response.pdpUrgencyMsg);\n }\n }\n\n }\n\n if (debugScr) console.log('[ZineOne-om] omniture z1Response is Before Scarcity ', typeof z1Response);\n\n if (z1Response && z1Response.scarcity) {\n if (debugScr) console.log(\"[ZineOne] omniture z1Response.scarcity is \", z1Response.scarcity);\n var scarcity = z1Response.scarcity;\n\n var quantitySectionDiv = document.getElementsByClassName(\"quantity\");\n var pdpScarcityDiv = document.getElementById(\"z1-pdpscarcity\");\n var bopusRadio = document.getElementById(\"bopusTab\");\n var shipRadio = document.getElementById(\"shipTab\");\n var bossRadio = document.getElementById(\"bossTab\");\n\n //var blockStyle = \"display:block;text-align: left; width: 100%; color: purple; font-size: 15px; clear: both; overflow: auto;\";\n\n if (scarcity.pdpInvTag == \"pdpBopusOnlineScarcity\" || scarcity.pdpInvTag == \"pdpOnlineScarcity\") {\n var onload_inv = scarcity.oInv;\n var onload_bInv = scarcity.bInv;\n if (onload_inv != 0 && onload_inv < 10) {\n //content with msg Just X left in this store\n if (quantitySectionDiv && pdpScarcityDiv) {\n if (debugScr) console.log(\"Only \" + onload_inv + \" left!\");\n //pdpScarcityDiv.setAttribute(\"style\", blockStyle);\n pdpScarcityDiv.style.display=\"block\";\n pdpScarcityDiv.style.textAlign=\"left\";\n pdpScarcityDiv.style.width=\"100%\";\n pdpScarcityDiv.style.color=\"purple\";\n pdpScarcityDiv.style.fontSize=\"15px\";\n pdpScarcityDiv.style.clear=\"both\";\n pdpScarcityDiv.style.overflow=\"auto\";\n pdpScarcityDiv.innerHTML = \"<b>Only \" + onload_inv + \" left!</b>\";\n }\n }\n }\n if (bossRadio) {\n if (bossRadio.checked) {\n if (debugScr) console.log(\"bossRadio already checked...\");\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n bossRadio.onclick = function() {\n if (debugScr) console.log(\"bossRadio checked...\");\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n }\n /**UnCommented as per Shilpa's mail on 04-06-2020**/\n if (bopusRadio) {\n if (bopusRadio.checked) {\n if (debugScr) console.log(\"bopusRadio. already checked...\", scarcity.bInv);\n var bopusValue = scarcity.bInv;\n if (bopusValue != 0 && bopusValue <= 2) {\n //content with msg Just X left in this store\n if (quantitySectionDiv && pdpScarcityDiv) {\n if (debugScr) console.log(\"Only \" + bopusValue + \" left in this store!\");\n //pdpScarcityDiv.setAttribute(\"style\", blockStyle);\n pdpScarcityDiv.style.display=\"block\";\n pdpScarcityDiv.style.textAlign=\"left\";\n pdpScarcityDiv.style.width=\"100%\";\n pdpScarcityDiv.style.color=\"purple\";\n pdpScarcityDiv.style.fontSize=\"15px\";\n pdpScarcityDiv.style.clear=\"both\";\n pdpScarcityDiv.style.overflow=\"auto\";\n pdpScarcityDiv.innerHTML = \"<b>Only \" + bopusValue + \" left in this store!</b>\";\n }\n } else {\n //remove style\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n }\n bopusRadio.onclick = function() {\n if (debugScr) console.log(\"bopusRadio clicked\");\n if (bopusRadio.checked) {\n if (debugScr) console.log(\"bopusRadio.checked...\", scarcity.bInv);\n var bopusValue = scarcity.bInv;\n if (bopusValue != 0 && bopusValue <= 2) {\n //content with msg Just X left in this store\n if (quantitySectionDiv && pdpScarcityDiv) {\n if (debugScr) console.log(\"Only \" + bopusValue + \" left in this store!\");\n //pdpScarcityDiv.setAttribute(\"style\", blockStyle);\n pdpScarcityDiv.style.display=\"block\";\n pdpScarcityDiv.style.textAlign=\"left\";\n pdpScarcityDiv.style.width=\"100%\";\n pdpScarcityDiv.style.color=\"purple\";\n pdpScarcityDiv.style.fontSize=\"15px\";\n pdpScarcityDiv.style.clear=\"both\";\n pdpScarcityDiv.style.overflow=\"auto\";\n pdpScarcityDiv.innerHTML = \"<b>Only \" + bopusValue + \" left in this store!</b>\";\n }\n } else {\n //remove style\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n }\n };\n }\n if (shipRadio) {\n if (shipRadio.checked) {\n if (debugScr) console.log(\"shipRadio already checked...\", scarcity.oInv);\n var shipValue = scarcity.oInv;\n if (shipValue != 0 && shipValue < 10) {\n //content with msg Just X left in this store\n if (debugScr) console.log(\"Only \" + shipValue + \" left!\");\n if (quantitySectionDiv && pdpScarcityDiv) {\n if (debugScr) console.log(\"Only \" + onload_inv + \" left!\");\n //pdpScarcityDiv.setAttribute(\"style\", blockStyle);\n pdpScarcityDiv.style.display=\"block\";\n pdpScarcityDiv.style.textAlign=\"left\";\n pdpScarcityDiv.style.width=\"100%\";\n pdpScarcityDiv.style.color=\"purple\";\n pdpScarcityDiv.style.fontSize=\"15px\";\n pdpScarcityDiv.style.clear=\"both\";\n pdpScarcityDiv.style.overflow=\"auto\";\n pdpScarcityDiv.innerHTML = \"<b>Only \" + onload_inv + \" left!</b>\";\n }\n } else {\n //remove style\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n }\n shipRadio.onclick = function() {\n if (debugScr) console.log(\"shipRadio clicked\");\n if (shipRadio.checked) {\n if (debugScr) console.log(\"shipRadio.checked...\", scarcity.oInv);\n var shipValue = scarcity.oInv;\n if (shipValue != 0 && shipValue < 10) {\n //content with msg Just X left in this store\n if (debugScr) console.log(\"Only \" + shipValue + \" left!\");\n if (quantitySectionDiv && pdpScarcityDiv) {\n if (debugScr) console.log(\"Only \" + onload_inv + \" left!\");\n //pdpScarcityDiv.setAttribute(\"style\", blockStyle);\n pdpScarcityDiv.style.display=\"block\";\n pdpScarcityDiv.style.textAlign=\"left\";\n pdpScarcityDiv.style.width=\"100%\";\n pdpScarcityDiv.style.color=\"purple\";\n pdpScarcityDiv.style.fontSize=\"15px\";\n pdpScarcityDiv.style.clear=\"both\";\n pdpScarcityDiv.style.overflow=\"auto\";\n pdpScarcityDiv.innerHTML = \"<b>Only \" + onload_inv + \" left!</b>\";\n }\n } else {\n //remove style\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n }\n };\n }\n\n function checkOtherStoreHandler() {\n try {\n if (quantitySectionDiv && pdpScarcityDiv) {\n //pdpScarcityDiv.setAttribute(\"style\", \"display: none;\");\n pdpScarcityDiv.style.display=\"none\";\n pdpScarcityDiv.innerHTML = \"\";\n }\n } catch (excp) {\n console.log(\"Error in checkOtherStore \", excp);\n }\n };\n\n document.addEventListener('checkOtherStore', checkOtherStoreHandler, false);\n var checkOtherStoreElem = document.getElementsByClassName(\"ce-fisCOS s-pickupstore\");\n if (checkOtherStoreElem && checkOtherStoreElem.length > 0) {\n checkOtherStoreElem = checkOtherStoreElem[0];\n checkOtherStoreElem.onclick = function() {\n //console.log(\"checkkkkkk\");\n var eventCheckOtherStore = new CustomEvent('checkOtherStore');\n document.dispatchEvent(eventCheckOtherStore);\n };\n }\n\n\n }\n\n\n if (debugScr) console.log('[ZineOne-om] omniture z1Response is Before RTOOfferData ', typeof z1Response);\n\n\n if (z1Response.silentRtoOfferData) {\n var rtoReportEvent = '_ws_sient_rto_page_report';\n\n var rtoPageCode = '';\n\n switch (evtName.toLowerCase()) {\n case \"_ws_viewedhome\":\n\n rtoPageCode = 'HP';\n\n break;\n\n case \"_ws_searched\":\n\n rtoPageCode = 'SP';\n\n break;\n\n case \"_ws_viewedcatalog\":\n\n rtoPageCode = 'TP';\n\n break;\n case \"_ws_viewedproduct\":\n\n rtoPageCode = 'PP';\n\n\n break;\n\n case \"_ws_viewedsku\":\n\n rtoPageCode = 'PP';\n\n\n break;\n\n case \"_ws_viewedcart\":\n\n rtoPageCode = 'CP';\n\n break;\n\n case \"_ws_addedtobag\":\n\n rtoPageCode = 'PP';\n\n\n\n break;\n }\n\n var currentUserVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n if (currentUserVector) {\n var currentStartTime = currentUserVector.timeVector.toString().split('|')[0];\n\n var returnObj = {};\n returnObj.pgN = rtoPageCode;\n returnObj.sessionStartTime = currentStartTime;\n //returnObj.rtoName = e.rtoName;\n //returnObj.identifier = e.identifier;\n\n ZineOne.pushEvent(rtoReportEvent, returnObj);\n }\n\n updateUserVectors(true, 'qualification_control');\n }\n\n if (z1Response.rtoOfferData) {\n //z1Response = z1Response.rtoOfferData;\n\n var e = z1Response.rtoOfferData;\n\n localStorage.setItem('z1_supc', JSON.stringify(e));\n\n\n if (e.is_copied == 'true') return;\n\n ///////////////\n\n\n //Case 1: Display Omniture\n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend) {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if (existingSupc != null && existingSupc != undefined && existingSupc != 'null') {\n\n existingSupc = JSON.parse(existingSupc);\n\n\n\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n\n\n //function showRTOBanner(e)\n //{\n // Style string for RTO\n console.log(\"[ZineOne] webstoreSendEventAllPages tag running\");\n var style = '.popupPromoText {font-size: 1.85em;margin-bottom: 5px;}.z1_b_container_kohlsbannertoparrow_rto {font-family: \"Gotham 5r\";position: fixed;padding: 0px;z-index: 1000;background: transperant;transition: all 1s ease-in;-webkit-animation: fadein 2s;/* Safari, Chrome and Opera > 12.1 */-moz-animation: fadein 2s;/* Firefox < 16 */-ms-animation: fadein 2s;/* Internet Explorer */-o-animation: fadein 2s;/* Opera < 12.1 */animation: fadein 2s; { z1_position_val}}@keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Firefox < 16 */@-moz-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Safari, Chrome and Opera > 12.1 */@-webkit-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Internet Explorer */@-ms-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Opera < 12.1 */@-o-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}.arrow_box {position: absolute;text-align: center;left: 50%;transform: translate(-50%, 100%);bottom: -20px;background: #ffffff;border: 1px solid #bfbfbf;padding: 1rem;border-radius: 0.6rem;width: 238px;-webkit-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);-moz-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);}.arrow_box:after,.arrow_box:before {content: \" \";position: absolute;}.arrow_box:after {border-color: rgba(255, 255, 255, 0);border-bottom-color: #ffffff;border-width: 20px;margin-left: -20px;}.arrow_box:before {width: 22px;height: 22px;background: #ffffff;z-index: 100;transform: translate(-50%, -50%) rotate(45deg);top: 1px;left: 50%;box-shadow: -6px -6px 5px 1px #999;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_box_style {position: relative;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 {padding-left: 0px !important;margin-left: 0px;min-width: none;max-width: none;align-self: center;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 img {min-width: 64px;max-width: 64px;min-height: 64px;max-height: 64px;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 {padding: 0 10px;font-size: 0.9em !important;line-height: 1.5;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 .titleText {background: url(\"https://d2p4r375zfkzm8.cloudfront.net/zb-design-com/arrowdown3.png\") no-repeat 0 2px;font-weight: bold;color: #000;font-size: 1.08em;padding: 0px 0 3px 20px;line-height: 1.4;}.z1_b_container_kohlsbannertoparrow_rto .closeBtn {cursor: pointer;position: absolute;right: 3px;top: 8px;width: 20px;height: 20px;margin: 0;padding: 0;font-size: 19px;font-family: \"Gotham 4r\";}.z1_b_container_kohlsbannertoparrow_rto .closeBtn img {border-bottom-left-radius: 50%;border-top-left-radius: 50%;border-bottom-right-radius: 50%;border-top-right-radius: 50%;height: 13px;width: 13px;opacity: 1;}.z1_b_container_kohlsbannertoparrow_rto .offerPrice {font-size: 1.3em;color: #e8342c;padding-right: 8px;}.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .todaytext {font-size: 1.5em;color: #3a3a3a;font-weight: 400;margin: 5px 0px;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto #offerDuration {font-weight: bold;font-size: 24px;}.z1_b_container_kohlsbannertoparrow_rto .todaytext div#offerDurationUnits {display: flex;flex-direction: column;text-align: left;font-size: 0.8em;}.z1_b_container_kohlsbannertoparrow_rto .savetext_row {padding: 0.6rem 0;}.z1_b_container_kohlsbannertoparrow_rto .cupontext {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.07;letter-spacing: -0.4px;text-align: center;color: #000000;margin: 20px;}.z1_b_container_kohlsbannertoparrow_rto .cupontext span {font-weight: bold;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer {background: #005553;text-transform: uppercase;color: #060606;padding: 0.40rem 1.85rem;border-radius: 2.2px;text-decoration: none;margin: 12px auto;letter-spacing: 1px;font-size: 13px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.6;letter-spacing: 0.5px;text-align: center;color: #ffffff;width: 138px;height: 31px;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy {content: \"Copy Offer\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover span {display: none;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover:before {/* background:#d2e2d3; color: #005553; */content: \"Click to Copy\";}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied:before {content: \"Copied\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied {background-color: #d2e2d3;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link {margin-top: 25px;font-size: 12px;font-weight: normal;font-style: normal;font-stretch: normal;line-height: 0.92;letter-spacing: normal;text-align: center;color: #444444;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {text-decoration: underline;color: #969696;font-size: 0.8rem;line-height: 1.2;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a:hover {color: #333;}.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 37.1px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.49;letter-spacing: normal;text-align: center;color: #005553;margin: 20px 0;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto .treatText {font-size: 17px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.z1_b_container_kohlsbannertoparrow_rto .treatTextNew {font-size: 1.2em;margin-bottom: 10px;color: #000;display: none;}.z1_b_container_kohlsbannertoparrow_rto .saveCont.saveMsg {margin-top: 8px;}.z1_b_container_kohlsbannertoparrow_rto .uptillTime {font-weight: 900;}.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 2em;}.treatTextLatest {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.btn_offer_container {margin: 25px;}.z1-rto-dollar_reward {font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #005553;margin-bottom: 10px;}.z1-rto-dollar_reward_content {display: flex;flex-wrap: wrap;justify-content: center;}.z1-rto-dollar-text {font-size: 34.2px;margin-top: auto;width: 20px;height: 25px;margin-bottom: auto;}.z1-rto-dollar-text-amount {font-size: 68px;height: 68px;letter-spacing: -3px;}.z1-rto-dollar-text-dOff-outer {margin-top: 15px;margin-bottom: auto;height: 25px;}.z1-rto-dollar-text-dOff-off {font-size: 16px;margin-left: -26px;position: relative;top: 4px;}.z1-rto-dollar-text-dOff-off-amount {font-size: 38px;position: relative;top: -4px;left: -5px;text-shadow: -1px 1px 0 #fff, 1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;}.z1-rto-dollar-text-dOff-off-miniDollar {height: -1px;font-size: 23px;position: relative;top: -9px;}.z1-rto-dollar-text-dOff-off-miniDollarAmount {letter-spacing: -1px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty {background-color: #e9f4cc;}.loyalty .usernameText {color: #208033;}.loyalty .saveMsg {color: #208033;}.loyalty .offerText {color: #208033;}.loyalty #rtoOfferCode {color: #208033;}.loyalty .z1-rto-dollar_reward_content {color: #208033;}.loyalty .btn_addoffer {background: #208033;}.loyalty.arrow_box:after {border-bottom-color: #208033;}.loyalty.arrow_box:before {background: #208033;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .bottom_link a {color: #444444;}.loyalty-cont.disable {display: none}.loyalty-cont.enable {display: block}.loyalty-cont {background-color: #208033;position: relative;top: -17px;left: -17px;width: 273px;height: 60px;border-radius: 0.6em 0.6em 0 0;color: #fff;}.loyalty-cont .heading-1 {padding-top: 15px;font-size: 16px;}.loyalty-cont .heading-2 {padding-top: 8px;font-size: 12px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .closeBtn {z-index: 1;color: #fff;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .loyalty-cont.disable {display: block;}.element_v2 {display: none;}.ui_v2 .element_v1 {display: none;}.ui_v2 .element_v2 {display: block;}#v2-take {position: absolute;left: 42px;top: 85px;}.ui_v2 .z1-rto-dollar-text {font-size: 36.9px;height: 5px;}.ui_v2 .z1-rto-dollar-text-amount {font-size: 82px;padding: 5px;}.ui_v2 {font-family: \"Gotham 5r\";}.ui_v2 .z1-rto-dollar-text-dOff-off {font-size: 25.6px;margin-left: 0px;top: 45px;font-weight: bold;}.ui_v2 .z1-rto-dollar_reward {margin-top: 5px;}.ui_v2 .treatText {margin-top: 25px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .treatText {margin-top: 15px;font-size: 16px;color: #000;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .offerDuration {color: #000;font-size: 20px;margin-top: 5px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .cupontext {color: #005553;font-size: 15px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {color: #444444;}.ui_v2.dollar_fix .z1-rto-dollar-text-dOff-off {top: 20px;}.ui_v2.dollar_fix #v2-take {top: 70px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {margin: 30px 0;margin-bottom: 25px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 89.7px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 40.4px;}';\n\n if (debugScr) console.log('Before RTO Style');\n\n\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = style;\n else css.appendChild(document.createTextNode(style));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n\n\n //appendStyle(style);\n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n\n\n domstr_val = '<div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\"offerText\">' + dolStr + '<span id=\"rtoOfferValue\" class=\"rtoOfferValue\"></span><span class=\"z1-rto-dollar-text-dOff-off element_v2\">off</span>' + '</div>';\n\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\";\n\n domstr_val = '<div class=\"offerText\">' + '<span id=\"rtoOfferValue\" class=\"rtoOfferValue\"></span>' + pctStr + '</div>';\n }\n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = '<div class=\"z1-rto-dollar_reward\"><div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\"z1-rto-dollar_reward_content\"><div class=\"z1-rto-dollar-text\">$</div><div id=\"rtoOfferValue\" class=\"z1-rto-dollar-text-amount\"></div><div class=\"z1-rto-dollar-text-dOff-outer\"><span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount element_v1\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">' + e.offThres + '</span></span></div></div></div>';\n }\n\n\n\n var domstr = '<div data-zineone-properties=\"modal:true;container-class:z1_b_container_kohlsbannertoparrow_rto;\" id=\"z1-rto-div\" class=\"z1_b_container_kohlsbannertoparrow_rto arrow_box\"><div class=\"closeBtn\" onclick=\"var el=document.getElementById(\\'z1-rto-div\\'); el.innerHTML=\\'\\';el.parentNode.removeChild(el);\">x</div><div class=\"z1_b_c1\"><div class=\"loyalty-cont disable\"><div class=\"heading-1\">KOHL’S REWARDS®</div><div class=\"heading-2\">MEMBER EXCLUSIVE</div></div><div><span class=\"usernameText\">Hi, </span><span class=\"saveMsg element_v1\"> save</span><div class=\"saveMsg element_v2\">your cart looks great!</div></div>' + domstr_val + '<div class=\"treatText element_v1\">in the next <span id=\"offerDuration\"></span> minutes.</div><div class=\"saveMsg element_v2\">the items in your cart!</div><div class=\"treatTextNew\">Valid until <span id=\"uptillTime\" class=\"uptillTime\"></span></div><div class=\"treatTextLatest element_v1\">(Go ahead, treat yourself!)</div><div class=\"element_v2\"><div class=\"treatText\">Check out in the next</div><div class=\"offerDuration\"><span id=\"offerDurationv2\"></span> minutes.</div></div><div class=\"cupontext\">PROMO CODE: <span id=\"rtoOfferCode\"></span></div><div class=\"btn_offer_container\"><a class=\"btn_addoffer\"><span id=\"btn_addoffer\"></span></a></div><div class=\"bottom_link\"><a id=\"discliamer_href\" href=\"#\" target=\"_default\">details & exclusions</a></div><input type=\"text\" id=\"textCopy\" style=\"opacity:0;pointer-events:none\" /></div></div>';\n\n\n\n var t = document.createRange().createContextualFragment(domstr);\n\n if (debugScr) console.log('Before RTO Z1 Widget');\n\n\n if (!document.getElementById('z1widget')) {\n return;\n }\n\n document.getElementById('z1widget').appendChild(t);\n\n\n /* On IE appendChild won't work with primitive values and strings. It needs DOM element or else use innerHTML if you want to put primitive values inside divs. \n document.getElementById('rtoOfferValue').appendChild(e.offerValue);\n document.getElementById('rtoOfferCode').appendChild(e.offerCode);\n document.getElementById('textCopy').value = e.offerCode;\n document.getElementById('offerDuration').appendChild(e.offerDuration);\n document.getElementById('offerDurationv2').appendChild(e.offerDuration);\n\n document.getElementById('discliamer_href').href = e.disclaimer;*/\n document.getElementById('rtoOfferValue').innerHTML=e.offerValue;\n document.getElementById('rtoOfferCode').innerHTML=e.offerCode;\n document.getElementById('textCopy').value= e.offerCode;\n document.getElementById('offerDuration').innerHTML=e.offerDuration;\n document.getElementById('offerDurationv2').innerHTML=e.offerDuration;\n\n document.getElementById('discliamer_href').href = e.disclaimer;\n\n \n var uptillTime = new Date();\n uptillTime.setMinutes(uptillTime.getMinutes() + Number(e.offerDuration));\n\n if (e.loyaltyCx == true) {\n document.getElementById('z1-rto-div').classList.add('loyalty');\n }\n\n if (e.ui_version && e.ui_version == 2) {\n document.getElementById('z1-rto-div').classList.add('ui_v2');\n document.getElementById('z1-rto-div').classList.add(e.offType.toLowerCase());\n }\n\n if (e.cta == \"COPY\") {\n document.getElementById('btn_addoffer').innerText = \"COPY OFFER\";\n document.getElementsByClassName('btn_addoffer')[0].classList.add('copy');\n }\n\n if (e.cta == \"ADD\" || e.cta == 'WALLET') {\n document.getElementById('btn_addoffer').innerText = \"ADD OFFER\";\n }\n \n\n document.getElementsByClassName('btn_addoffer')[0].onclick = function() {\n\n if (e.cta == 'COPY') {\n\n var copyTextField = document.getElementById('textCopy');\n copyTextField.select();\n\n var copied = document.execCommand(\"copy\");\n\n console.log('webStoreAllEvents: Got Copied Status ' + copied);\n\n\n document.getElementsByClassName('btn_addoffer')[0].classList.add('copied');\n document.getElementById('btn_addoffer').innerText = \"\";\n\n e.is_copied = 'true';\n localStorage.setItem('z1_supc', JSON.stringify(e));\n\n return;\n }\n\n var urlToGo = '/checkout/shopping_cart.jsp?redeemCoupon=true';\n\n\n if (e.cta == 'WALLET') {\n if (pageData && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n var cartValue = parseInt(pageData.cartDetails.cartSubTotalValue);\n\n //alert('Got Cart Value '+cartValue);\n if (cartValue == 0) {\n urlToGo = '/wallet/my_wallet.jsp#offers';\n }\n\n }\n }\n\n location.href = urlToGo;\n\n };\n\n\n\n \n var hours = uptillTime.getHours();\n var minutes = uptillTime.getMinutes();\n var ampm = hours >= 12 ? 'pm' : 'am';\n hours = hours % 12;\n hours = hours ? hours : 12; // the hour '0' should be '12'\n minutes = minutes < 10 ? '0' + minutes : minutes;\n var strTime = hours + ':' + minutes + ' ' + ampm;\n\n\n \n var uptillTimeStr = strTime;\n\n //document.getElementById('uptillTime').appendChild(uptillTimeStr + '.');\n document.getElementById('uptillTime').innerHTML = uptillTimeStr + '.';\n\n if (document.getElementsByClassName('first-name')[0] && document.getElementsByClassName('first-name')[0].innerText.toLowerCase() != \"account\") {\n document.getElementsByClassName('usernameText')[0].innerText = document.getElementsByClassName('first-name')[0].innerText + ',';\n } else {\n document.getElementsByClassName('saveMsg')[0].innerText = \"Save\";\n }\n \n var existingSupc = localStorage.getItem('z1_supc');\n\n if (existingSupc != null && existingSupc != undefined && existingSupc != 'null') {\n\n existingSupc = JSON.parse(existingSupc);\n\n } else {\n existingSupc = {};\n existingSupc.offType = \"\";\n }\n \n var prop75 = existingSupc.omniturePrefix + '|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n prop75 = prop75 + 'OL|';\n\n console.log('Got Event Name for RTO ', evtName);\n\n\n var rtoReportEvent = '_ws_rto_page_report';\n\n var rtoPageCode = '';\n\n switch (evtName.toLowerCase()) {\n case \"_ws_viewedhome\":\n\n //prop75 = prop75 + 'HP|';\n rtoPageCode = 'HP';\n\n break;\n\n case \"_ws_searched\":\n\n //prop75 = prop75 + 'SP|';\n rtoPageCode = 'SP';\n\n break;\n\n case \"_ws_viewedcatalog\":\n\n //prop75 = prop75 + 'TP|';\n rtoPageCode = 'TP';\n\n break;\n case \"_ws_viewedproduct\":\n\n //prop75 = prop75 + 'PP|';\n rtoPageCode = 'PP';\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n\n case \"_ws_viewedsku\":\n\n //prop75 = prop75 + 'PP|';\n rtoPageCode = 'PP';\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n\n case \"_ws_viewedcart\":\n\n //prop75 = prop75 + 'CP|';\n rtoPageCode = 'CP';\n\n break;\n\n case \"_ws_addedtobag\":\n\n //prop75 = prop75 + 'PP|';\n rtoPageCode = 'PP';\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n }\n\n var currentUserVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n if (currentUserVector) {\n var currentStartTime = currentUserVector.timeVector.toString().split('|')[0];\n\n var returnObj = {};\n returnObj.pgN = rtoPageCode;\n returnObj.sessionStartTime = currentStartTime;\n returnObj.type = \"shown\";\n returnObj.rtoName = e.rtoName;\n returnObj.identifier = e.identifier;\n\n ZineOne.pushEvent(rtoReportEvent, returnObj);\n }\n\n //console.log('After Report Event ', e.pscore,e.offerValue,pageData.cartDetails.cartSubTotalValue,e.offerCode,pageData.customerDetails.customerID);\n\n //prop75 = prop75 + 'P:' + e.pscore + '|';\n //prop75 = prop75 + 'O:' + e.offerValue + '|';\n //prop75 = prop75 + 'T:' + pageData.cartDetails.cartSubTotalValue + '|';\n //prop75 = prop75 + 'OC:' + e.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n if (debugScr) console.log('Got Prop 75 ', prop75Obj);\n\n var cusId = pageData.customerDetails.customerID;\n\n //console.log('Before Condition Check',prop75Obj.prop75,cusId);\n\n if (cusId && prop75Obj.prop75) {\n //console.log('Inside s.tl Omniture ',prop75Obj.prop75);\n\n var eVar39 = cusId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: prop75Obj.prop75,\n eVar39: eVar39\n });\n\n }\n\n updateUserVectors(true, \"qualification_test\");\n\n document.getElementById(\"z1-rto-div\").onclick = function(e) {\n //console.log(\"Event...\",e)\n e.stopPropagation();\n\n //console.log('Elemtn Id ',e.toElement.id);\n\n if (e.toElement.id == 'discliamer_href') {\n window.open(\n document.getElementById(\"discliamer_href\").href,\n '_blank' // <- This is what makes it open in a new window.\n );\n }\n //e.preventDefault();\n return false;\n };\n\n\n\n\n\n\n }\n\n if (typeof s == 'undefined') {\n if (debugScr) console.log('[ZineOne] omniture s is not defined');\n return;\n }\n\n if (debugScr) console.log('[ZineOne-om] omniture z1Response is ', typeof z1Response);\n\n\n if (typeof z1Response == 'string') {\n z1Response = JSON.parse(z1Response);\n }\n\n if (debugScr) console.log('[ZineOne-om] omniture z1Response.prop75 is ', z1Response.prop75, typeof z1Response);\n\n if (z1Response && z1Response.prop75) {\n var showMsg = true;\n if ((z1Response.prop75).includes(\"w>z1pu\")) {\n var isTopRated = document.getElementsByClassName(\"tce-toprated-text\");\n if (isTopRated.length >= 1) {\n if (debugScr) console.log('[ZineOne] found isTopRated=true');\n var topRatedDiv = isTopRated[0];\n showMsg = false;\n }\n var isKChoice = document.getElementsByClassName(\"tce-kchoice\");\n if (isKChoice.length >= 1) {\n if (debugScr) console.log('[ZineOne] found isKChoice=true');\n var topRatedDiv = isKChoice[0];\n showMsg = false;\n }\n }\n if (showMsg) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n } else {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n var prop75 = \"w>z1pu|e\";\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: prop75,\n eVar39: eVar39\n });\n }\n }\n\n if (z1Response && z1Response.prop75) {\n if ((z1Response.prop75).includes(\"w>z1wo\")) {\n ZineOne.pushEvent(\"_ws_z1_wallet_er_update_time\", {});\n }\n }\n\n if (z1Response && z1Response.rtoControl) {\n\n var rtoConProp75 = z1Response.rtoControl;\n\n switch (evtName.toLowerCase()) {\n case \"_ws_viewedhome\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'HP');\n\n break;\n\n case \"_ws_searched\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'SP');\n\n break;\n\n case \"_ws_viewedcatalog\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'TP');\n\n break;\n case \"_ws_viewedproduct\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'PP');\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n\n case \"_ws_viewedsku\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'PP');\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n\n case \"_ws_viewedcart\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'CP');\n\n break;\n\n case \"_ws_addedtobag\":\n\n rtoConProp75 = rtoConProp75.replace('<PN>', 'PP');\n\n s.pageName = '';\n s.prop4 = '';\n\n\n break;\n }\n\n\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: rtoConProp75,\n eVar39: eVar39\n });\n\n //updateUserVectors(true,'qualification_control');\n\n }\n\n if (z1Response && z1Response.fsg) {\n\n if (debugScr) console.log('[ZineOne] free shipping gauge is ' + (z1Response));\n\n var vID = localStorage.getItem(\"z1_cust_id\"); //getCookie(\"VisitorId\");\n if (!isValid(vID)) {\n vID = localStorage.getItem(\"z1_connectUserId\");\n }\n var timestamp = new Date().getTime();\n // Venkat - Begin 10/23/2018 - MVC freeship code enhancement\n var z1_fsg_data = {\n 'fsg': {\n '_d': z1Response.fsg._d,\n '_t': z1Response.fsg._t,\n 'offerCode': z1Response.fsg.offerCode\n },\n 'timestamp': timestamp,\n 'visitorId': vID\n };\n // Venkat - End 10/23/2018 - MVC freeship code enhancement\n localStorage.setItem('z1_fsg_data', JSON.stringify(z1_fsg_data));\n //fsg(JSON.stringify(z1_fsg_data));\n }\n\n if (z1Response && z1Response.bopus) {\n\n if (z1Response.bopus == \"1\") {\n getBopusInfo();\n localStorage.setItem(\"z1_bopus_data\", JSON.stringify(z1Response));\n }\n\n }\n\n if (z1Response && z1Response.rStar) {\n var product_list_with_stars = z1Response.rStar;\n if (product_list_with_stars.length > 0) {\n if (debugScr) console.log(\"[ZineOne] stars with commerce_ids rStar = \", product_list_with_stars);\n for (let i = 0; i < product_list_with_stars.length; i++) {\n //if (debugScr) console.log(\"c obj ...\",product_list_with_stars[i]);\n let elmnt_id = \"z1-star-\" + product_list_with_stars[i].cid;\n let number_of_stars = product_list_with_stars[i].stars;\n number_of_stars = Math.round(number_of_stars * 10) / 10;\n //if (debugScr) console.log(\"[ZineOne] elmnt_id ...\",elmnt_id);\n //if (debugScr) console.log(\"[ZineOne] number_of_stars ...\",number_of_stars);\n if (number_of_stars >= 4) {\n let parent_div = document.getElementById(elmnt_id);\n //if (debugScr) console.log(\"[ZineOne] parent_div...\",parent_div);\n let innerHTMLSvgString = \"\";\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float: left;padding-right: 3px;\">';\n for (let j = 0; j < 5; j++) {\n var check_if_decimal = (number_of_stars - j).toFixed(2);\n //if (debugScr) console.log(\"[ZineOne] check_if_decimal...\",check_if_decimal);\n if (check_if_decimal < 1 && check_if_decimal > 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <1 >0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16px\" height=\"16px\" viewBox=\"0 0 25 25\" style=\"width: 16px !important; height: 16px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024\" x1=\"' + (check_if_decimal * 100) + '%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else if (check_if_decimal <= 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <= 0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16px\" height=\"16px\" viewBox=\"0 0 25 25\" style=\"width: 16px !important; height: 16px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_0.99_975024\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else {\n //if (debugScr) console.log(\"[ZineOne] iff... 99...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16px\" height=\"16px\" viewBox=\"0 0 25 25\" style=\"width: 16px !important; height: 16px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_99.99_975024\" x1=\"99.99%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n }\n }\n innerHTMLSvgString = innerHTMLSvgString + '</div>';\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float:left;line-height: 20px;\"><span style=\"font-family: &#39;Gotham 7r&#39;,Helvetica,Arial,sans-serif;color:black;\">' + number_of_stars + '</span></div>';\n\n parent_div.innerHTML = innerHTMLSvgString;\n\n }\n }\n }\n }\n\n if (z1Response && z1Response.rStarAbovePointOne) {\n //console.log(\"SAIKAT - ENTERED BLOCK OF Z1RESPONSE & Z1RESPONSE.rStarAbovePointOne\");\n console.log(\"rStarAbovePointOne called!\");\n function showRating() {\n var product_list_with_stars = z1Response.rStarAbovePointOne;\n if (product_list_with_stars.length > 0) {\n if (debugScr) console.log(\"[ZineOne] stars with commerce_ids rStarAbovePointOne = \", product_list_with_stars);\n for (let i = 0; i < product_list_with_stars.length; i++) {\n //if (debugScr) console.log(\"c obj ...\",product_list_with_stars[i]);\n let elmnt_id = \"z1-star-\" + product_list_with_stars[i].cid;\n let number_of_stars = product_list_with_stars[i].stars;\n number_of_stars = Math.round(number_of_stars * 10) / 10;\n if (debugScr) console.log(\"[ZineOne] rStarAbovePointOne - elmnt_id ...\", elmnt_id);\n if (debugScr) console.log(\"[ZineOne] rStarAbovePointOne - number_of_stars ...\", number_of_stars);\n if (number_of_stars >= 0) {\n let parent_div = document.getElementById(elmnt_id);\n parent_div.setAttribute(\"style\", \"margin-top:10px;\");\n //if (debugScr) console.log(\"[ZineOne] parent_div...\",parent_div);\n let innerHTMLSvgString = \"\";\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float: left;padding-right: 3px;\">';\n for (let j = 0; j < 5; j++) {\n var check_if_decimal = (number_of_stars - j).toFixed(2);\n //if (debugScr) console.log(\"[ZineOne] check_if_decimal...\",check_if_decimal);\n if (check_if_decimal < 1 && check_if_decimal > 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <1 >0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024\" x1=\"' + (check_if_decimal * 100) + '%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else if (check_if_decimal <= 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <= 0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_0.99_975024\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else {\n //if (debugScr) console.log(\"[ZineOne] iff... 99...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_99.99_975024\" x1=\"99.99%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n }\n }\n innerHTMLSvgString = innerHTMLSvgString + '</div>';\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float: left;font-size: 12px;font-family: \\'Gotham 7r\\',GothamBold,Helvetica,Arial,sans-serif;height: 11px;width: 26px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;color: #000000;\">' + number_of_stars + '</div>';\n\n parent_div.innerHTML = innerHTMLSvgString;\n\n }\n }\n }\n\n var decrement_btn_collection = document.getElementsByClassName(\"shopping_cart_dec\");\n var increment_btn_collection = document.getElementsByClassName(\"shopping_cart_inc\");\n var remove_btn_collection = document.getElementsByClassName(\"bag_remove_item gwp-remove-item-shoppingcart\");\n\n if (isValid(decrement_btn_collection) && decrement_btn_collection.length > 0) {\n console.log(\"inside decrement_btn_collection\");\n for (let i = 0; i < decrement_btn_collection.length; i++) {\n decrement_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n if (isValid(increment_btn_collection) && increment_btn_collection.length > 0) {\n console.log(\"inside increment_btn_collection\");\n for (let i = 0; i < increment_btn_collection.length; i++) {\n increment_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n if (isValid(remove_btn_collection) && remove_btn_collection.length > 0) {\n console.log(\"inside remove_btn_collection\");\n for (let i = 0; i < remove_btn_collection.length; i++) {\n remove_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n };\n\n document.addEventListener('ratings', showRating, false);\n var eventini = new CustomEvent('ratings');\n document.dispatchEvent(eventini);\n\n if (isValid(trJsonData) && isValid(trJsonData.cartItems) && trJsonData.cartItems.length > 0) {\n let prd_quanity = 0;\n trJsonData.cartItems.map(function(obj){\n prd_quanity = prd_quanity + obj.quantity;\n });\n localStorage.setItem(\"z1_prd_quanity\", prd_quanity);\n }\n\n function setRatings() {\n let timeCounter = 0;\n let maxCounter = 10;\n let timeDelay = 500;\n let previous_quantity = parseInt(localStorage.getItem(\"z1_prd_quanity\"));\n if (isValid(trJsonData) && isValid(trJsonData.cartItems) && trJsonData.cartItems.length > 0) {\n let checkQuantityChange = setInterval(function() {\n current_quanity = 0\n trJsonData.cartItems.map( function(obj) {\n current_quanity = current_quanity + obj.quantity;\n });\n if (current_quanity != previous_quantity) {\n console.log(\"dec pressed!\");\n let shoppingBagItems = document.getElementsByClassName(\"shoppingBagItem\");\n for (let j = 0; j < shoppingBagItems.length; j++) {\n let parent_div = shoppingBagItems[j].getElementsByClassName(\"z1PostItem\")[0];\n if (isValid(parent_div)) {\n let star_div = document.createElement(\"div\");\n star_div.setAttribute(\"id\", \"z1-star-\" + shoppingBagItems[j].getAttribute('data-skuid'));\n parent_div.appendChild(star_div);\n }\n }\n var event = new CustomEvent('ratings');\n document.dispatchEvent(event);\n localStorage.setItem(\"z1_prd_quanity\", current_quanity);\n clearInterval(checkQuantityChange);\n\n }\n if (timeCounter > maxCounter) {\n clearInterval(checkQuantityChange);\n }\n timeCounter++;\n }, timeDelay);\n }\n };\n\n }\n\n if (z1Response && z1Response.rStarAboveFour) {\n //console.log(\"SAIKAT - ENTERED BLOCK OF Z1RESPONSE & Z1RESPONSE.rStarAboveFour\");\n console.log(\"rStarAboveFour called!\");\n function showRating() {\n var product_list_with_stars = z1Response.rStarAboveFour;\n if (product_list_with_stars.length > 0) {\n if (debugScr) console.log(\"[ZineOne] stars with commerce_ids rStarAboveFour = \", product_list_with_stars);\n for (let i = 0; i < product_list_with_stars.length; i++) {\n //if (debugScr) console.log(\"c obj ...\",product_list_with_stars[i]);\n let elmnt_id = \"z1-star-\" + product_list_with_stars[i].cid;\n let number_of_stars = product_list_with_stars[i].stars;\n number_of_stars = Math.round(number_of_stars * 10) / 10;\n //if (debugScr) console.log(\"[ZineOne] elmnt_id ...\",elmnt_id);\n //if (debugScr) console.log(\"[ZineOne] number_of_stars ...\",number_of_stars);\n if (number_of_stars >= 0) {\n let parent_div = document.getElementById(elmnt_id);\n parent_div.setAttribute(\"style\", \"margin-top:10px;\");\n //if (debugScr) console.log(\"[ZineOne] parent_div...\",parent_div);\n let innerHTMLSvgString = \"\";\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float: left;padding-right: 3px;\">';\n for (let j = 0; j < 5; j++) {\n var check_if_decimal = (number_of_stars - j).toFixed(2);\n //if (debugScr) console.log(\"[ZineOne] check_if_decimal...\",check_if_decimal);\n if (check_if_decimal < 1 && check_if_decimal > 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <1 >0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_' + (check_if_decimal * 100) + '.99_975024\" x1=\"' + (check_if_decimal * 100) + '%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else if (check_if_decimal <= 0) {\n //if (debugScr) console.log(\"[ZineOne] iff... <= 0...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_0.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_0.99_975024\" x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n } else {\n //if (debugScr) console.log(\"[ZineOne] iff... 99...\");\n innerHTMLSvgString = innerHTMLSvgString + '<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14px\" height=\"14px\" viewBox=\"0 0 25 25\" style=\"width: 14px !important; height: 14px !important;\"><polygon points=\"\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></polygon><path d=\"M24.8676481,9.0008973 C24.7082329,8.54565507 24.2825324,8.23189792 23.7931772,8.20897226 L16.1009423,8.20897226 L13.658963,0.793674161 C13.4850788,0.296529881 12.9965414,-0.0267985214 12.4623931,0.00174912135 L12.4623931,0.00174912135 C11.9394964,-0.00194214302 11.4747239,0.328465149 11.3146628,0.81767189 L8.87268352,8.23296999 L1.20486846,8.23296999 C0.689809989,8.22949161 0.230279943,8.55030885 0.0640800798,9.0294023 C-0.102119784,9.50849575 0.0623083246,10.0383495 0.472274662,10.3447701 L6.69932193,14.9763317 L4.25734261,22.4396253 C4.08483744,22.9295881 4.25922828,23.4727606 4.68662933,23.7767181 C5.11403038,24.0806756 5.69357086,24.0736812 6.11324689,23.7595003 L12.6333317,18.9599546 L19.1778362,23.7595003 C19.381674,23.9119158 19.6299003,23.9960316 19.8860103,23.9994776 C20.2758842,24.0048539 20.6439728,23.8232161 20.8724402,23.5127115 C21.1009077,23.202207 21.1610972,22.8017824 21.0337405,22.4396253 L18.5917612,14.9763317 L24.6967095,10.3207724 C25.0258477,9.95783882 25.0937839,9.43328063 24.8676481,9.0008973 Z\" style=\"fill: url(&quot;#bv_rating_summary_star_filled_0_99.99_975024&quot;) !important;\"></path><defs><linearGradient id=\"bv_rating_summary_star_filled_0_99.99_975024\" x1=\"99.99%\" y1=\"0%\" x2=\"100%\" y2=\"0%\"><stop offset=\"0%\" style=\"stop-color: rgb(0, 0, 0); stop-opacity: 1;\"></stop><stop offset=\"1%\" style=\"stop-color: rgb(246, 246, 246); stop-opacity: 1;\"></stop></linearGradient></defs></svg>';\n }\n }\n innerHTMLSvgString = innerHTMLSvgString + '</div>';\n innerHTMLSvgString = innerHTMLSvgString + '<div style=\"float: left;font-size: 12px;font-family: \\'Gotham 7r\\',GothamBold,Helvetica,Arial,sans-serif;height: 11px;width: 26px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;color: #000000;\">' + number_of_stars + '</div>';\n\n parent_div.innerHTML = innerHTMLSvgString;\n\n }\n }\n }\n\n var decrement_btn_collection = document.getElementsByClassName(\"shopping_cart_dec\");\n var increment_btn_collection = document.getElementsByClassName(\"shopping_cart_inc\");\n var remove_btn_collection = document.getElementsByClassName(\"bag_remove_item gwp-remove-item-shoppingcart\");\n\n if (isValid(decrement_btn_collection) && decrement_btn_collection.length > 0) {\n console.log(\"inside decrement_btn_collection\");\n for (let i = 0; i < decrement_btn_collection.length; i++) {\n decrement_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n if (isValid(increment_btn_collection) && increment_btn_collection.length > 0) {\n console.log(\"inside increment_btn_collection\");\n for (let i = 0; i < increment_btn_collection.length; i++) {\n increment_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n if (isValid(remove_btn_collection) && remove_btn_collection.length > 0) {\n console.log(\"inside remove_btn_collection\");\n for (let i = 0; i < remove_btn_collection.length; i++) {\n remove_btn_collection[i].onclick = function() {\n setRatings();\n };\n }\n }\n };\n\n document.addEventListener('ratings', showRating, false);\n var eventini = new CustomEvent('ratings');\n document.dispatchEvent(eventini);\n\n if (isValid(trJsonData) && isValid(trJsonData.cartItems) && trJsonData.cartItems.length > 0) {\n let prd_quanity = 0;\n trJsonData.cartItems.map(function(obj) {\n prd_quanity = prd_quanity + obj.quantity;\n });\n localStorage.setItem(\"z1_prd_quanity\", prd_quanity);\n }\n\n function setRatings() {\n let timeCounter = 0;\n let maxCounter = 10;\n let timeDelay = 500;\n let previous_quantity = parseInt(localStorage.getItem(\"z1_prd_quanity\"));\n if (isValid(trJsonData) && isValid(trJsonData.cartItems) && trJsonData.cartItems.length > 0) {\n let checkQuantityChange = setInterval(function() {\n current_quanity = 0\n trJsonData.cartItems.map(function(obj) {\n current_quanity = current_quanity + obj.quantity;\n });\n if (current_quanity != previous_quantity) {\n console.log(\"dec pressed!\");\n let shoppingBagItems = document.getElementsByClassName(\"shoppingBagItem\");\n for (let j = 0; j < shoppingBagItems.length; j++) {\n let parent_div = shoppingBagItems[j].getElementsByClassName(\"z1PostItem\")[0];\n if (isValid(parent_div)) {\n let star_div = document.createElement(\"div\");\n star_div.setAttribute(\"id\", \"z1-star-\" + shoppingBagItems[j].getAttribute('data-skuid'));\n parent_div.appendChild(star_div);\n }\n }\n var event = new CustomEvent('ratings');\n document.dispatchEvent(event);\n localStorage.setItem(\"z1_prd_quanity\", current_quanity);\n clearInterval(checkQuantityChange);\n\n }\n if (timeCounter > maxCounter) {\n clearInterval(checkQuantityChange);\n }\n timeCounter++;\n }, timeDelay);\n }\n };\n\n }\n\n\n //console.log(\"Pre-Loading recommendations....\");\n if (z1Response && z1Response.recommendationData) {\n var recommendationData = z1Response.recommendationData;\n if (debugScr) console.log(\"[ZineOne] recommendationData = \", recommendationData);\n //console.log(\"Loading recommendations....\");\n var products = recommendationData;\n //if (debugScr) console.log(\"products...\",products);\n var innerHTMLString = '';\n if (products && products.length > 0) {\n var parent_div = document.getElementById(\"bd_rec_Horizontal\");\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-holder \">';\n //innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-title\" style=\"display: block;\">You&rsquo;re so close to free shipping!</div>';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-title\" style=\"display: block;\">';\n innerHTMLString = innerHTMLString + '<p class=\"tce-top-text\">You&rsquo;re so close to free shipping!</p>';\n innerHTMLString = innerHTMLString + '<p class=\"tce-bottom-text\"></p>';\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-container item-count-3\" data-channel=\"WebStore\" data-page=\"ShoppingBag\" data-placement=\"Horizontal\">';\n for (let j = 0; j < products.length; j++) {\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-holder\" data-product-id=\"' + products[j].id + '\" data-product-title=\"' + products[j].productTitle + '\">';\n //innerHTMLString = innerHTMLString + '<a href=\"/product/prd-'+products[j].id+'/*\">';\n\n //BDREC change recommended by Kohl's, 11/13/18\n innerHTMLString = innerHTMLString + '<a href=\"/product/prd-' + products[j].id + '?pfm=' + products[j].source + '-' + products[j].channel + '-' + products[j].page + '-' + products[j].placement + '\">';\n\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-detail-holder\">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-hover\" title=\"' + products[j].productTitle + '\">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-template-common-loading\" style=\"display: none;\">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-template-common-loader\"></div>';\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '<img class=\"bd-flat-view-product-image\" src=\"' + products[j].image_url + '\">';\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-details \">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-price-main-container\">';\n if (products[j].salePrice != \"\") {\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-sale-price-container\">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-sale-price-label\">Sale</div>';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-sale-price\">&#36;' + products[j].salePrice + '</div>';\n innerHTMLString = innerHTMLString + '</div>';\n }\n if (products[j].regularPrice != \"\") {\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-regular-price-container\">';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-regular-price\">Regular</div>';\n innerHTMLString = innerHTMLString + '<div class=\"bd-flat-view-product-regular-price-label\">&#36;' + products[j].regularPrice + '</div>';\n innerHTMLString = innerHTMLString + '</div>';\n }\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '</a>';\n innerHTMLString = innerHTMLString + '</div>';\n }\n innerHTMLString = innerHTMLString + '</div>';\n innerHTMLString = innerHTMLString + '</div>';\n parent_div.innerHTML = innerHTMLString;\n }\n }\n\n if (z1Response && z1Response.abandon_cart_pop_up_image) {\n console.log(\" z1Response.abandon_cart_pop_up_image >>> \", z1Response.abandon_cart_pop_up_image);\n\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n var styles = '.z1-abandon-cart-pop-up-bg {width: 100%;height: 100%;background: #ffffff96}';\n styles += '.z1-abandon-cart-pop-up-container {position: absolute;top: 50%; left: 50%; width: 373px;height: 317px;border-radius: 8px;border: solid 4px #dceef0;background-color: #ffffff;transform: translate(-50%, -50%);}';\n styles += '.z1-abandon-cart-pop-up-welcome-back{ width: 373px;height: 54px;background-color: #dceef0;}';\n styles += '.z1-abandon-cart-pop-up-welcome-back-text-box { width: 381px;height: 35px;font-family: \"Gotham 5r\", Helvetica, Arial, sans-serif ;font-size: 26px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #14718a;}';\n\n styles += '.z1-abandon-cart-pop-up-text{ margin-top: 10px;margin-bottom: 10px;font-family: \"Gotham 5r\", Helvetica, Arial, sans-serif;font-size: 15px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.27;letter-spacing: normal;text-align: center;color: #000000;}';\n styles += '.z1-abandon-cart-pop-up-center{text-align: center;}';\n\n styles += '.z1-abandon-cart-pop-up-center-checkout{ text-align: center;width: 162px;height: 40px;background-color: #14718a;margin: auto;}'\n styles += '.z1-abandon-cart-pop-up-img{ width: 162px; height: 142px; margin: 5px;}';\n styles += '.z1-abandon-cart-pop-up-checkout-btn { height: 40px;background-color: #14718a;font-family: \"Gotham 4r\", Helvetica, Arial, sans-serif;font-size: 14px;color: #ffffff;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;}';\n styles += '.z1-abandon-cart-pop-up-close-btn-div { height: 12.5px; }';\n\n styles += '.z1-abandon-cart-pop-up-close:before, .z1-abandon-cart-pop-up-close:after {position: absolute;right: 12.5px;content: \\' \\';height: 20px;width: 1.5px;background-color: #14718a;}';\n\n\n\n styles += '.z1-abandon-cart-pop-up-close:before {transform: rotate(45deg);}';\n styles += '.z1-abandon-cart-pop-up-close:after {transform: rotate(-45deg);}';\n appendStyle(styles);\n\n var abcCartParentDiv = document.getElementById(\"z1-abandon-cart-pop-up\");\n\n var inHTMLString = \"\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-bg'></div>\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-container'>\";\n //inHTMLString = inHTMLString + \"<a href='JavaScript:Void(0);' onclick='document.getElementById(\\\"z1-abandon-cart-pop-up\\\").style.display=\\\"none\\\";' class='z1-abandon-cart-pop-up-close'></a>\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-welcome-back'><div class='z1-abandon-cart-pop-up-close-btn-div'><a href='JavaScript:Void(0);' onclick='document.getElementById(\\\"z1-abandon-cart-pop-up\\\").style.display=\\\"none\\\";' class='z1-abandon-cart-pop-up-close' style='background-color: transparent;float: right;height: 20px;width: 20px;cursor: pointer;'></a></div><div class='z1-abandon-cart-pop-up-welcome-back-text-box'>Welcome back.</div></div>\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-text'>There's still something in your cart.<br>Get it before it's gone!</div>\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-center' ><img src='\" + z1Response.abandon_cart_pop_up_image + \"' alt='' class='z1-abandon-cart-pop-up-img'></div>\";\n inHTMLString = inHTMLString + \"<div class='z1-abandon-cart-pop-up-center-checkout'><input type='button' onclick=\\\"location.href='https://www.kohls.com/checkout/v2/checkout.jsp'\\\" value='CHECK OUT NOW' class='z1-abandon-cart-pop-up-checkout-btn'></div>\";\n inHTMLString = inHTMLString + \"</div>\";\n abcCartParentDiv.innerHTML = inHTMLString;\n abcCartParentDiv.style.display = \"block\";\n }\n\n\n\n } catch (error) {\n console.log('[ZineOne-om] Could not process _ws_ rawdatahandler due to error. ', error);\n }\n }\n\n\n function fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n }\n\n\n function fsg(z1Response) {\n var timestart;\n if (debugScr) {\n timestart = new Date().getTime();\n }\n if (debugScr) console.log(\"[ZineOne] response = \" + z1Response);\n z1Response = JSON.parse(z1Response);\n var flag = (z1Response.fsg);\n if (debugScr) console.log(\"[ZineOne] flag = \" + flag);\n\n\n //fsg\n if (flag._d == \"1\") {\n\n var neb = document.getElementById(\"new-equity-banner\");\n //neb.fadeOut();\n neb.style.display = \"none\";\n // var jsb = document.getElementById(\"js-shipping-banner-2\");\n // jsb.style.display = \"block\";\n\n\n\n //fade(neb);\n\n //display flag\n //var vID = getCookie(\"VisitorId\");\n var vID = localStorage.getItem(\"z1_cust_id\"); //getCookie(\"VisitorId\");\n if (!isValid(vID)) {\n vID = localStorage.getItem(\"z1_connectUserId\");\n }\n var thresh = isNumeric(vID) ? (\"$\" + (flag._t)) : \"$75\"; // Oct 31-Nov25 is 50 not 75\n var thr = isNumeric(vID) ? parseInt(flag._t) : 75; // Oct 31-Nov25 is 50 not 75\n\n try {\n\n if (debugScr) console.log(\"[ZineOne] setting styles\");\n /*\n var parent = document.getElementById(\"new-equity-banner\");\n var css = document.createElement(\"style\");\n css.type = \"text/css\";\n var styles = \".kas-newpb-free-shipping-msg { font-size: 12px; font-family: 'Gotham 5r', 'GothamMedium', Helvetica, Arial, sans-serif !important;color: #5f5f5f !important } .freeShipSuggestMessage { color: #1babb4 !important; font-size: 13px; font-family: 'Gotham 7r', 'GothamMedium', Helvetica, Arial, sans-serif !important;color: #1babb4 !important } .freeShipSuggestMessage span { font-size: 13px; font-family: 'Gotham 7r', 'GothamMedium', Helvetica, Arial, sans-serif !important; color: #1babb4 !important} #js-shipping-banner-2 {display: block; !important }\";\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n parent.appendChild(css);\n parent.style.height = \"40px\";\n */\n (\n function() {\n\n function a() {\n //changed tce-meter-bar from 56em to 39em and tce-meter-copy from 15em to 8em, changed tce-ship-meter-cartDetails height to 39px from 40px\n var r = \"<style type=\\\"text/css\\\"> #tce-ship-meter {display: block;clear: both;}.tce-meter-copy {position: absolute;top: 50%;left: 8em;transform: translateY(-50%);}.tce-meter-copy p {font-size: 16px;color: #000; font-family:'Gotham 5r', Helvetica, sans-serif;text align:center;}.tce-meter-copy span {font-size: 16px;color: #108281; font-family:'Gotham 5r', Helvetica, sans-serif;}.tce-meter-bar * {all: unset;}.tce-meter-bar {position: absolute;float: left;width: 315px;left: 49em;top: 1.2em;}.tce-meter-bar p {display: block;-webkit-margin-before: 1em;-webkit-margin-after: 1em;-webkit-margin-start: 0;-webkit-margin-end: 0;}.tce-ship-meter-cartDetails {width:100%;text-align:center;max-width: 1044px;margin-left: auto;margin-right: auto;display:block;position:relative;height:39px;text-align: center;background-color:#f0f0f0;}.tce-ship-meter-cartDetails__gauge {display: block;height: auto; width:100%;}.tce-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 13px;position: absolute;left: 2.5em;}.tce-ship-meter-cartDetails-left {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;color: #000;font-weight: bold;position: absolute;left: 0;}.tce-ship-meter-cartDetails-right {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;font-weight: bold;color: #000;position: absolute;left: 112%;top: 0;}.tce-small-ship-meter-cartDetails {display:block;position:relative;width: 166px;height: 28px;top: 18px;margin-top:2px;}.tce-small-ship-meter-cartDetails-left {font-size: 11px;color:#000;font-weight:bold;position:absolute;font-family:'Gotham 4r', Helvetica, sans-serif;}.tce-small-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 13px;position: absolute;left: 2.5em;}.tce-small-ship-meter-cartDetails-right {font-size: 11px;color:#000;position: absolute;left: 125%;top: 0;font-family:'Gotham 4r', Helvetica, sans-serif;}</style>\";\n\n function g(u, s, t) {\n\n\n return $(\"#js-free-shipping-meter1, #js-free-shipping-meter2\").css({\n\n background: \"linear-gradient(to right, \" + u + \" 0%,\" + u + \" \" + t + \"%,\" + s + \" \" + t + \"%,\" + s + \" 100%)\"\n\n }\n\n );\n\n };\n\n var n = '<div class=\"tce-meter-bar\" ><div class=\"tce-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter1\" class=\"tce-ship-meter-cartDetails-meter\"></div><div class=\"tce-ship-meter-cartDetails-right\"> ' + thresh + '</div></div>';\n\n function d() {\n\n var s = f();\n var pqr = \"<a style='outline: 0 none;color: #000; text-decoration: none; 'href='https: //www.kohls.com/ecom/shipping/75_ShippingUPDATED_nodates_bopus.html' target='blank'><p style='background: url(https://media.kohlsimg.com/is/image/kohls/20180215-CL-shipping-truck-desktop?fmt=png-alpha&scl=1) 0px 7px no-repeat;display: inline-block;padding-left: 50px;height: 40px;line-height: 40px;background-size: 40px;'>Earn <span>free shipping</span> on orders \".concat(thresh.concat(\" or more! <span style='text-decoration: underline;text-transform: none;font-size: 10px;color:#000;'>details</span></p></a>\"));\n var t = s > 0 && s < thr ? \"<a style='outline:0 none;color: #000;text-decoration: none;'href='https://www.kohls.com/ecom/shipping/75_ShippingUPDATED_nodates_bopus.html' target='blank'><p style='background: url(https://media.kohlsimg.com/is/image/kohls/20180215-CL-shipping-truck-desktop?fmt=png-alpha&scl=1) 0px 7px no-repeat;display: inline-block;padding-left: 50px;height: 40px;line-height: 40px;background-size: 40px;'>You're $\" + h() + \" away from <span>free shipping!</span> <span style='text-decoration: underline;text-transform: none;font-size: 10px;color:#000;'>details</span></p></a>\" : s >= thr ? \"<a style='outline:0 none;color: #000;text-decoration: none;' href='https://www.kohls.com/ecom/shipping/75_ShippingUPDATED_nodates_bopus.html' target='blank'><p style='background: url(https://media.kohlsimg.com/is/image/kohls/20180215-CL-shipping-truck-desktop?fmt=png-alpha&scl=1) 0px 7px no-repeat;display: inline-block;padding-left: 50px;height: 40px;line-height: 40px;background-size: 40px;'>You&rsquo;ve earned <span>free shipping</span> on your order! <span style='text-decoration: underline;text-transform: none;font-size: 10px;color: #000;'>details</span></p></a>\" : pqr;\n\n //changes done on 30102018\n //return (r + '<div id=\"js-shipping-banner-2\" class=\"tce-ship-meter-cartDetails\"><div class=\"tce-meter-copy\"><p>' + t + \"</p></div>\" + n + \"</div>\");\n return (r + '<div id=\"js-shipping-banner-2\" style=\"display:none;\" class=\"tce-ship-meter-cartDetails\"><div class=\"tce-meter-copy\"><p>' + t + \"</p></div>\" + n + \"</div>\");\n };\n\n function l() {\n //set display to none for js-meter-summary-2\n var xyz = '<div id=\"js-meter-summary-2\" style=\"display:block\" class=\"tce-small-ship-meter-cartDetails\"><div class=\"tce-small-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter2\" class=\"tce-small-ship-meter-cartDetails-meter\"></div><div class=\"tce-small-ship-meter-cartDetails-right\"> '.concat(thresh.concat('</div> </div>'));\n return xyz; //'<div id=\"js-meter-summary-2\" class=\"tce-small-ship-meter-cartDetails\"><div class=\"tce-small-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter2\" class=\"tce-small-ship-meter-cartDetails-meter\"></div><div class=\"tce-small-ship-meter-cartDetails-right\">$75</div> </div>'\n\n };\n\n\n function h() {\n var s = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if(s && !isValid(s)){\n s = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n if (s == \"null\" || (JSON.parse(s)).status == \"Failure\") {\n //if (debugScr) console.log(\"[ZineOne] the cart is empty\");\n return \"the-cart-is-empty\";\n }\n\n return (thr - i()).toFixed(2);\n\n //var t = $.parseJSON(s);\n //return t.shipmentInfo[0].shipmentPriceInfo.freeShipQualificationDelta // returns delta\n };\n\n function i() {\n var s = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if(s && !isValid(s)){\n s = (isValid(Kjs) && isValid(Kjs.PB) && isValid(Kjs.PB.getPbCartStorage())) ? JSON.stringify(Kjs.PB.getPbCartStorage()) : \"null\";\n }\n if (s == \"null\" || (JSON.parse(s)).status == \"Failure\") {\n return 0;\n }\n\n var t = $.parseJSON(s);\n return t.orderSummary.merchandisePromoAmount; // returns total\n //return t.orderSummary.total // returns total\n };\n\n\n function f() {\n\n var u = i(); //total\n var t = h() >= 0 ? h() : 0; //delta\n var s = thr; //threshold\n\n\n if (debugScr) console.log(\"[ZineOne] (total,delta,threshold) = (\" + u + \",\" + t + \",\" + s + \")\");\n\n\n var x = t > 0 ? (s - t).toFixed(2) : t === 0 && u >= s ? s : 0; // returns total-delta\n\n return x;\n\n };\n\n\n function q() {\n\n return Math.round(100 / thr * f()); // returns %ge full\n };\n\n function m(t) {\n\n c(t);\n var s = q();\n var temp = s >= 100 ? g(\"#0d8886\", \"#0d8886\", 100) : g(\"#0d8886\", \"#d6d8da\", s);\n return;\n\n };\n\n\n function c(s) {\n\n if (s === \"add\") {\n\n $(d()).insertBefore($(\"div.tr_phase2_headercontainer\")); //tr_phase2_headercontainer\n\n }\n\n\n\n if (s === \"update\") {\n\n $(\"#js-shipping-banner-2\").html($(d()));\n }\n };\n\n m(\"add\");\n var j = $(\"#mini-cart .mini-cart-header .subtotal\");\n var e = {\n attributes: true,\n childList: true\n };\n function o(w) {\n var v = w.length;\n\n for (var t = 0; t < v; t++) {\n\n if (w[t].type === \"childList\") {\n var u = f();\n var s = $(\".loadedNewPB\");\n\n if (s.length === 0) {\n return;\n }\n $(\"#js-meter-summary-2\").remove();\n $(\".tr_phase2_add_padding_ghr\").appendChild(l());\n\n return m(\"update\");\n }\n /*\n if (w[t].type === \"attributes\") {\n var u = f();\n var s = $(\".loadedNewPB\");\n\n if (s.length === 0) {\n return;\n }\n\n $(\".tr_phase2_add_padding_ghr\").appendChild(l());\n\n return m(\"update\");\n }\n */\n\n }\n return;\n };\n\n var k = new MutationObserver(o);\n k.observe(j[0], e);\n var p = localStorage.setItem;\n localStorage.setItem = function() {\n var t = new CustomEvent(\"itemInserted\");\n document.dispatchEvent(t);\n p.apply(this, arguments);\n var s = h();\n if (s === \"the-cart-is-empty\") {\n return;\n }\n\n return m(\"update\");\n };\n };\n\n\n var b = setInterval(function() {\n if (document.readyState === \"complete\") {\n clearInterval(b);\n a();\n }\n\n }, 100);\n\n })();\n\n\n if (debugScr) {\n var timeend = new Date().getTime();\n if (debugScr) console.log(\"[ZineOne] FSG time taken ==> \" + (timeend - timestart));\n }\n\n } catch (z1ie) {\n console.log(\"[ZineOne] FSG Tag Failed.\", z1ie);\n }\n\n\n // Venkat - Begin - 10/23/2018 - MVC enhancement\n\n }\n if (flag._d == \"2\") {\n try {\n var z1_cid = localStorage.getItem(\"z1_cust_id\");\n if (debugScr) console.log(\"Newly added return code for only mvc_event and mvc_status true and offer code: \" + flag);\n if (z1_cid && (z1_cid == \"2254009728812139\" || z1_cid == \"3000000030411692\")) {\n\n var parentDiv = document.getElementById(\"shipping-banner\");\n if (isValid(parentDiv)) {\n var fsg_parent_div = document.createElement(\"div\");\n fsg_parent_div.setAttribute(\"id\", \"loyalty-default-msg1\");\n //parentDiv.prepend(fsg_parent_div);//Won't work in IE...need to write using other logic\n }\n var offerCode = flag.offerCode;\n myOfferCode = unescape(offerCode);\n if (debugScr) console.log(\"myOfferCode \" + myOfferCode);\n var existingDiv = document.getElementById(\"loyalty-default-msg1\");\n // TODO - in prod this is different - existingDiv.innerHTML = '';\n\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n /*var _styleStr = `\n \\/* FSG CSS: BEGIN *\\/\n\n .fsg-band-container { width: auto; display: flex; color: #FFFFFF; font-size: 12px; align-items: center; background-size: cover; height: 53px;object-fit: contain; background-image: linear-gradient(to left, #d9008c, #fb5f29);}\n .fsg-icon-container .shipping-icon {filter: brightness(0) invert(1); text-align: left; width: 50px; height: 33.7px; object-fit: contain;}\n .FSG-Hey-MVC-your-shipping {padding: 2px 65px; text-align: center; height: 27px; font-family: Gotham; font-size: 13px; font-weight: normal; font-style: normal; font-stretch: normal; line-height: normal; letter-spacing: -0.2px; text-align: center; color: #ffffff;}\n .FSG.mvc.t1 { letter-spacing: -0.5px;}\n .FSG.mvc.t2 { font-weight: 700; letter-spacing: -0.5px;}\n\n \\/* FSG CSS: END *\\/\n `;*/\n var _styleStr = '.fsg-band-container{height:35px;width:auto;display:flex;color:#fff;align-items:center;background-size:cover;object-fit:contain;background-image:linear-gradient(to left,#d9008c,#fb5f29);padding:3px 20px 3px 20px}.fsg-icon-container .shipping-icon{filter:brightness(0) invert(1);text-align:left;width:50px;height:33.7px;object-fit:contain}.FSG-Hey-MVC-your-shipping{font-family:\"Gotham 5r\",Helvetica,Arial,sans-serif;font-size:20px;font-weight:400;font-style:normal;font-stretch:normal;line-height:normal;letter-spacing:-.2px;text-align:center;color:#fff;margin:0 auto}.FSG.mvc.t1{letter-spacing:-.5px}.FSG.mvc.t2{font-weight:700;letter-spacing:-.5px}'; // Enhancement 26/10/2018\n\n //call appendStyle\n appendStyle(_styleStr);\n var fsg_fname = getCookie(\"VisitorUsaFullName\");\n //fsg_fname = (fsg_fname) ? \" \" + fsg_fname : \"\";\n fsg_fname = (fsg_fname) ? \" \" + fsg_fname.replace(/\\|/g, \"\") : \"\"; // Enhancement 26/10/2018\n\n /*var domstr = `\n <div class=\"fsg-band-container\">\n <div class=\"fsg-icon-container\">\n <img src=\"https://media.kohlsimg.com/is/image/kohls/20180215-CL-shipping-truck-desktop?fmt=png-alpha&scl=1\" class=\"shipping-icon\">\n </div>\n <div class=\"FSG-Hey-MVC-your-shipping\">\n <span >Hey` + fsg_fname + `, your shipping is on us! <br> </span>\n <span class=\"FSG.mvc.t1\"> Promo code: </span>\n <span class=\"FSG.mvc.t2\">${myOfferCode}</span>\n </div>\n </div>`;*/\n var domstr = '<div class=\"fsg-band-container\"><div class=\"fsg-icon-container\"><img src=\"https://media.kohlsimg.com/is/image/kohls/20180215-CL-shipping-truck-desktop?fmt=png-alpha&scl=1\" class=\"shipping-icon\"></div><div class=\"FSG-Hey-MVC-your-shipping\"><span>Hey' + fsg_fname + ', your shipping is on us! </span><span class=\"FSG.mvc.t1\"> Promo code: </span><span class=\"FSG.mvc.t2\">${myOfferCode}</span></div></div>'; // Enhancement 26/10/2018\n\n //changes done on 30102018\n //if (debugScr) console.log(\"domstr \" + domstr);\n // TODO - in prod this is different - existingDiv.innerHTML = domstr;\n existingDiv.innerHTML = domstr;\n }\n\n } catch (ze) {\n console.log(\"[ZineOne] @@ FSG Tag Failed.\", ze);\n }\n // Venkat - End - 10/23/2018 - MVC enhancement\n } else {\n if (debugScr) console.log(\"[ZineOne] FSG Display Off.\");\n var dc = document.getElementById(\"new-equity-banner\");\n dc.style.display = \"block\";\n }\n //fsg\n\n }\n\n\n function getBopusInfo() { //skuCode) {\n // Venkat - Begin - 01/09/2019\n // PLEASE set the following var TO ENABLE the BOPUS Pdp store hour notifications\n if (!ENABLE_BOPUS_STORE_HOUR)\n return;\n // Venkat - End - 01/09/2019\n\n\n if (debugScr) console.log(\"[ZineOne] BOPUS Start for selected sku!==> \" + typeof(Kjs.mainPanel.getBagItem(\"skuId\")));\n\n var bopusFound = false; //store found\n var bopusEligible = false; //product found\n var storeId = \"-1\";\n var customer = pageData.customerDetails;\n var qtyList = pageData.productDetails.pageItems.QtyInfo;\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\"); // KOHL'S client side function to get currently selected sku\n var storeDist = \"-1\";\n //console.log(\"[ZineOne] pageData ==> \" + JSON.stringify(pageData.productDetails.pageItems.QtyInfo));\n\n if (!isValid(pageData) || !isValid(pageData.customerDetails) || !isValid(pageData.productDetails) || !isValid(pageData.productDetails.pageItems) || !isValid(pageData.productDetails.pageItems.QtyInfo))\n return;\n\n if (debugScr) console.log(\"[ZineOne] pageData Exists with sku!==> \" + Kjs.mainPanel.getBagItem(\"skuId\"));\n\n //Check whether Bopus is available for the SKU\n for (var i = 0; i < qtyList.length; i++) {\n if (debugScr) console.log(\"[ZineOne] BOPUS loop: \" + (JSON.stringify(qtyList[i].skuCode) == skuCode));\n if (isValid(qtyList[i].storeWithBopusAvailability) && (qtyList[i].availableBopusInventory > 0) && (qtyList[i].storeDistanceFromPreferredStore >= 0) && qtyList[i].skuCode == skuCode) {\n if (debugScr) console.log(\"[ZineOne] BOPUS Eligible!\" + i);\n storeId = qtyList[i].storeWithBopusAvailability;\n storeDist = qtyList[i].storeDistanceFromPreferredStore;\n bopusEligible = true;\n break;\n }\n } // pageData SKU loop\n\n if (bopusEligible) { // then search for store in store list\n\n var storeList = localStorage.getItem('K_storelist');\n var storeListJson = JSON.parse(storeList).allAvailableStores;\n var storeName = \"-1\";\n var address = \"-1\";\n var longitude = \"0\";\n var workingHours = \"-1\";\n\n for (i = 0; i < storeListJson.length; i++) {\n if (storeId == storeListJson[i].shipNode) {\n // BOPUS store found\n if (debugScr) console.log(\"[ZineOne] Store FOUND in store list. \");\n bopusFound = true;\n storeName = storeListJson[i].organizationName;\n address = storeListJson[i].addressLine1;\n longitude = storeListJson[i].longitude;\n workingHours = storeListJson[i].workingHours;\n break;\n }\n } // K_storelist loop\n\n if (!bopusFound || !storeName || !address || storeName == \"-1\" || address == \"-1\") {\n if (debugScr) {\n if (debugScr) console.log(\"[ZineOne] Store NOT FOUND in store list.\");\n }\n //return; <==== Might want to uncomment in case storelist should be used\n }\n\n var X_hours = \"-1111111111\";\n X_hours = getX_hours(longitude, workingHours);\n if (debugScr) console.log(\"[ZineOne] X_hours ==> \" + X_hours);\n\n if (parseInt(X_hours) > 2) { // store not open or going to open soon. DON'T show message!!!!\n if (debugScr) console.log(\"[ZineOne] xhours not 2\" + parseInt(X_hours));\n return;\n }\n\n var suffix = \"!\";\n\n // FOR NOW. CHECK WITH NDE-40 TO UPDATE THE MILES SHOWN.\n if ((parseFloat(storeDist) > 0 && parseFloat(storeDist) <= 15)) {\n //Commented out as per discussions with Nikhil Chandurkar (since distance is already shown)\n //suffix = \", \" + storeDist + \" miles away!\";\n } else if (parseFloat(storeDist) > 15) {\n if (debugScr) console.log(\"[ZineOne] storedist too far \" + parseFloat(storeDist));\n return; // DON'T show if more than 15 miles away!!\n }\n\n var ship_selec = document.getElementsByClassName(\"preferedStore\")[0]; //document.getElementById(\"shipment-selection\");\n var txt = document.createElement(\"span\");\n if (isValid(document.getElementById(\"z1\"))) {\n var z1 = document.getElementById(\"z1\");\n if (debugScr) console.log(\"[ZineOne] removing z1\");\n z1.parentNode.removeChild(z1);\n }\n // Venkat - Begin - 10/08/2018 - Changing the copy message as per Nikhil's email\n //txt.innerHTML = (\"<span id='z1' style='color:#D88907; display:inline'><b style='color:black'>-</b> Pickup in store in \" + /*X_hours*/ \"2\" + \" hours\" + suffix + \"</span>\");\n txt.innerHTML = (\"<span id='z1' style='color:#D88907; display:inline'><b style='color:black'>-</b> Most orders ready in \" + /*X_hours*/ \"2\" + \" hours\" + suffix + \"</span>\");\n // Venkat - END - 10/08/2018\n ship_selec.appendChild(txt);\n\n } else {\n return; // bopusEligible = false\n }\n\n }\n\n function getX_hours(longitude, workingHours) {\n\n if (debugScr) console.log(\"[ZineOne] X_hours Start!\");\n\n var d = new Date();\n var currHH = parseInt(d.getHours()) < 10 ? (\"0\" + d.getHours()) : d.getHours();\n var currMM = parseInt(d.getMinutes()) < 10 ? (\"0\" + d.getMinutes()) : d.getMinutes();\n var currHHMM = parseInt(currHH + \"\" + currMM); //\"0331\"; //\"2342\"; //finHHMM; //parseInt(currHH+\"\"+currMM);\n var X_hours = \"\"; //= currHHMM > closesAtHHMM ? ((2400 - currHHMM) + opensAtHHMM) : currHHMM<opensAtHHMM? (opensAtHHMM-currHHMM) : 0;//(closesAtHHMM - currHHMM);\n var diffHH;\n var diffMM;\n ////////// According to NDE-40 updates, hardcode store hours to 7am-5pm. Show 2 hrs in between these times.\n var opensAtHHMM = 1300; // 7 am // 1 pm\n var closesAtHHMM = 1700; // 5 pm\n //////////\n\n if (debugScr) console.log(\"[ZineOne] X_hours MATH start!\");\n\n if (currHHMM > closesAtHHMM) {\n diffHH = 24 - Math.floor(currHHMM / 100) + Math.floor(opensAtHHMM / 100);\n diffMM = Math.floor(opensAtHHMM % 100) - Math.floor(currHHMM % 100);\n if (diffMM < 0) {\n diffHH = diffHH - 1;\n diffMM = diffMM + 60;\n }\n diffHH = diffHH < 10 ? \"0\" + diffHH : diffHH;\n diffMM = diffMM < 10 ? \"0\" + diffMM : diffMM;\n X_hours = diffHH + \"\" + diffMM;\n\n } else if (currHHMM < opensAtHHMM) {\n diffHH = Math.floor(opensAtHHMM / 100) - Math.floor(currHHMM / 100);\n diffMM = Math.floor(opensAtHHMM % 100) - Math.floor(currHHMM % 100);\n if (diffMM < 0) {\n diffHH = diffHH - 1;\n diffMM = diffMM + 60;\n }\n diffHH = diffHH < 10 ? \"0\" + diffHH : diffHH;\n diffMM = diffMM < 10 ? \"0\" + diffMM : diffMM;\n X_hours = diffHH + \"\" + diffMM;\n\n } else {\n X_hours = 2; // show 2 hours when between 7am and 5pm\n }\n\n if (debugScr) console.log(\"[ZineOne] X_hours MATH end! currHHMM => \" + currHHMM + \" X_hours ==> \" + X_hours);\n\n if ((\"\" + X_hours).length > 3) {\n var h = Math.floor(parseInt(X_hours) / 100);\n var dm = (parseFloat(X_hours) % 100) / 60;\n //console.log(\"[ZineOne] h, dm ==>\" + h + \",\" + dm);\n X_hours = Math.round(h + dm);\n }\n return X_hours;\n }\n\n\n\n function getDayLightOffset() {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth() + 1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow;\n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n\n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n function convertUTCtoCST(dateObj) {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr) {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1] - 1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1] - 1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset() * 60 * 1000) / 1000);\n\n if (debugScr) console.log(dateObj.getTime() + ' getTimeFromApiFormat ' + dateObj);\n\n return dateObj.valueOf();\n\n }\n\n\n\n function addDataToRedemptionPopup(popupDiv, promoCode) {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n\n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n if (debugScr) console.log('Final HTML ' + InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function() {\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if (currentPromoCode == promoCode) {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc', JSON.stringify(existingSupc));\n\n }\n\n };\n\n }\n\n\n\n function addSUPCRedemption(e) {\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function() {\n\n\n var style = '.popupPromoText { font-size: 1.85em; margin-bottom: 5px;}';\n\n appendStyle(style);\n\n if (debugScr) console.log(\"kohlscashapply Click \");\n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function() {\n\n if (debugScr) console.log(\"Checking for Redemption Popup \" + timeCounter);\n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n if (debugScr) console.log('Got Popup Div ' + popupDiv);\n\n if (popupDiv != undefined && popupDiv != null) {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv, e.offerCode);\n\n return;\n }\n\n if (timeCounter > maxCounter) {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n }\n\n\n function checkForOfferSequence(pgName) {\n //return;\n if (pgName == \"Home\" | pgName == \"PMP\" | pgName == \"Search\" | pgName == \"Cart\") {\n var z1_offerDetails = localStorage.getItem('z1_offerDetails') + \"\";\n if (debugScr) console.log(\"z1_offerDetails...\", z1_offerDetails);\n if (isValid(z1_offerDetails)) {\n var z1_offerDetails_json = JSON.parse(z1_offerDetails);\n if (debugScr) console.log(\"z1_offerDetails_json...\", z1_offerDetails_json);\n if (!z1_offerDetails_json.offerUsed) {\n openKohlsCashModal('https://www.kohls.com/checkout/v2/includes/kohlsCash.jsp?shouldIncludeForms=true', Kjs.CMDM.softlogin('.kohlscashapply'));\n\n var popupInterval = setInterval( function() {\n\n if (document.getElementById('promo-kcInput') != null) {\n\n if (debugScr) console.log('promocode....' + z1_offerDetails_json.offerCode);\n document.getElementById('promo-kcInput').value = z1_offerDetails_json.offerCode;\n document.getElementById('applyInputButton').click();\n localStorage.removeItem('z1_offerDetails');\n\n clearInterval(popupInterval);\n }\n }, 1000);\n }\n }\n }\n }\n\n\n function addSUPCMinicart() {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if (existingSupc != null && existingSupc != undefined && existingSupc != 'null') {\n var e = JSON.parse(existingSupc);\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n if (debugScr) console.log(e.offerExpiry + \" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0, currentTime.toString().length - 3));\n\n if (debugScr) console.log(endTime + \" timeCheck Main: \" + currentTime);\n\n rtoTimeRemaining = (endTime - currentTime);\n\n if (rtoTimeRemaining <= 0 || e.is_redeemed == true) {\n return;\n }\n\n document.getElementById(\"tr_phase2_ShoppingBg\").onclick = function() {\n\n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n\n\n var popupCheck = setInterval(function() {\n\n if (debugScr) console.log(\"Checking for Redemption Popup \" + timeCounter);\n\n var popupDiv = document.getElementsByClassName('tr_phase2_headerPanel')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n if (debugScr) console.log('Got Popup Div ' + popupDiv);\n\n if (popupDiv != undefined && popupDiv != null) {\n clearInterval(popupCheck);\n\n\n addSUPCRedemption(e);\n //setTimeout(function(){ }, 500);\n\n\n return;\n }\n\n if (timeCounter > maxCounter) {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n };\n\n\n }\n\n }\n\n\n addSUPCMinicart();\n\n\n } catch (ie) {\n console.log(\"Error in Tag webstoreSendEventAllPages: WebStore Z1 tag. \", ie);\n\n // var currentDate = new Date();\n // var errorObj = {};\n // errorObj.p1 = ie.message;\n\n // var custDetails = pageData.customerDetails.customerID;\n\n // errorObj.p2 = '8. webstoresendevent '+evtName + '|'+currentDate + '|'+custDetails;\n\n // ZineOne.pushEvent('_ws_logs', errorObj);\n }\n\n\n\n\n /*$(document).ready(function(){*/\n /*\n $.ajax({\n url: \"/common/user_check_status.jsp\",\n dataType: 'json',\n success: function(data) {\n console.log(JSON.stringify(data));\n },\n error: function() {\n //alert(\"error\");\n }\n });\n */\n /*});*/\n\n} catch (e) {\n console.log(\"[Zineone-I-I] Error in webstoreSendEventAllPages: WebStore Z1 tag \",e);\n}","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"closeZ1WidgetOnMIniCartClick","actionType":"z1script","script":"try {\n var elem = document.getElementById('z1widget');\n if (elem) elem.style.display = \"none\";\n} catch (ee) {\n console.log(\"[zineone] err in tag closeZ1WidgetOnMIniCartClick \"+ee);\n}\n","eventName":"click","pageSelector":{"type":"pgName","condition":"contains","val":"/catalog"},"domSelector":{"type":"id","val":"mini-cart"}},{"tagName":"closeZ1WidgetOnUtilityGreeting","actionType":"z1script","script":"try {\n var elem = document.getElementById('z1widget');\n if (elem) elem.style.display = \"none\";\n} catch (ee) {\n console.log(\"[zineone] err in tag closeZ1WidgetOnUtilityGreeting \"+ee);\n}\n","eventName":"click","pageSelector":{"type":"pgName","condition":"contains","val":"/catalog"},"domSelector":{"type":"id","val":"utility-nav"}},{"tagName":"Creating Z1 Widget Div on SearchPage","actionType":"z1script","script":"//add msg div as child of notifyDiv\n//var notifyDiv = document.getElementById(\"container\");\ntry {\n var notifyDiv = document.getElementById(\"mini-cart\");\n var z1Div = document.createElement(\"div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1widget\");\n notifyDiv.appendChild(z1Div);\n} catch (z1ie) {\n console.log(\"[ZineOne] exception in running Tag to create div to attach z1widget=\"+z1ie);\n}\n","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"/search"}},{"tagName":"closeZ1WidgetOnMIniCartClickSearch","actionType":"z1script","script":"try {\n var elem = document.getElementById('z1widget');\n elem.style.display = \"none\";\n} catch (ee) {\n console.log(\"[zineone] err in tag closeZ1WidgetOnMIniCartClickSearch \" + ee);\n}\n","eventName":"click","pageSelector":{"type":"pgName","condition":"contains","val":"/search"},"domSelector":{"type":"id","val":"mini-cart"}},{"tagName":"Z1 Divs on PDP","actionType":"z1script","script":"/*\n//add msg div as child of parentDiv\nvar isDebugScr = true;\ntry {\n var parentDivCollection = document.getElementsByClassName(\"pdp-main-right-content\");\n if (parentDivCollection.length == 1) {\n var parentDiv = parentDivCollection[0];\n var z1Div = document.createElement(\"div\");\n if (isDebugScr) console.log(\"[zineone] created new div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"pdp-z1widget\");\n //z1Div.setAttribute(\"style\", \"color:#7E2C79\");\n z1Div.setAttribute(\"style\", \"color:#7E2C79;font-family:'Gotham 7r',Helvetica,Arial;font-size:16px;\");\n //parentDiv.appendChild(z1Div);\n parentDiv.prepend(z1Div);\n if (isDebugScr) console.log(\"[zineone] appended new div\"); \n }\n} catch (z1ie) {\n console.log(\"[zineone] exception in Tag creating div to attch z1widget on PDP=\" + z1ie);\n}\n\n\n//add msg div as child of parentDiv\nvar isDebugScr = false;\ntry {\n var parentDivCollection = document.getElementsByClassName(\"pdp-main-right-content\");\n if (parentDivCollection.length == 1) {\n var parentDiv = parentDivCollection[0];\n var z1Div = document.createElement(\"div\");\n if (isDebugScr) console.log(\"[zineone] created new div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1-pdpurgency\");\n //z1Div.setAttribute(\"style\", \"color:#7E2C79\");\n //z1Div.setAttribute(\"style\", \"display:none;width:100%;margin-left:15px;background-size: 100%;color:#ffffff;height:30px;line-height:30px;font-size:15px;text-align: center;position:relative;font-family:'Gotham 5r',Helvetica,Arial, sans-serif; font-weight:bold; font-size:16px;background:url('https://media.kohlsimg.com/is/image/kohls/20180606-tce-zineone-badge-bg?fmt=png') no-repeat\");\n z1Div.setAttribute(\"style\", \"display:none;width: 100%; background: linear-gradient(to right, #84337e, #2a2455); background-size:'100% 100%'; color: #ffffff; height: 2.5em; line-height: 2.5em; font-size: 17px; font-weight:bold; text-align: center;font-family: 'Gotham 7r', Helvetica, Arial, sans-serif;transform: skewX(-10deg);\");\n //parentDiv.appendChild(z1Div);\n //var z1Span = document.getElementById(\"z1_span_id\");\n //z1Span.setAttribute(\"style\", \"font-weight:lighter;\"); \n parentDiv.prepend(z1Div);\n if (isDebugScr) console.log(\"[zineone] appended new div\"); \n }\n} catch (z1ie) {\n console.log(\"[zineone] exception in _ws_ Tag creating div to attch z1widget on PDP=\" + z1ie);\n}\n*/\n\nvar isDebugScr = false;\ntry {\n /*var myId = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if (isDebugScr) console.log(\"Urgency my Id ==> \",myId);\n if (myId == \"3000000030411692\" || myId == \"3000000129500077\" || myId == \"3000000015076174\" || myId == \"3000000074262095\" ) {*/\n function getCookie(name) {\n var value = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n return (value != null) ? unescape(value[2]) : null;\n }\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n return true;\n }\n var productPageName = pageName;\n var parentDivCollection = \"\";\n var aka_hp2_cookie = getCookie(\"AKA_HP2\");\n var aka_rv_cookie = getCookie(\"AKA_RV\");\n var aka_pdp2_cookie = getCookie(\"AKA_PDP2\");\n if (isDebugScr) console.log(\" aka_hp2_cookie ==> \", aka_hp2_cookie, \" aka_rv_cookie ==> \", aka_rv_cookie, \" aka_pdp2_cookie ==> \", aka_pdp2_cookie);\n if (isValid(aka_pdp2_cookie) && aka_pdp2_cookie.toLowerCase() == \"true\") {\n var parentDiv = \"\";\n if (productPageName == \"regularProductPage\") {\n parentDiv = document.getElementById(\"PDP_z1Social_badge\");\n } else if (productPageName == \"collectionPDPPage\") {\n parentDiv = document.getElementById(\"CDP_z1Social_badge\");\n } else {\n parentDiv = \"\";\n }\n if (parentDiv) {\n var z1Div = document.createElement(\"div\");\n if (isDebugScr) console.log(\"[zineone] created new div\");\n z1Div.setAttribute(\"id\", \"z1-pdpurgency\");\n z1Div.style.display = \"none\";\n z1Div.style.margin = \".3em\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.width = \"100%\";\n z1Div.style.background = \"linear-gradient(to right, #84337e, #2a2455)\";\n z1Div.style.backgroundSize = \"100% 100%\";\n z1Div.style.color = \"#ffffff\";\n z1Div.style.height = \"30px\";\n z1Div.style.lineHeight = \"30px\";\n z1Div.style.fontSize = \"17px\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.fontFamily = \"\\'Gotham 7r\\', Helvetica, Arial, sans-serif\";\n //parentDiv.prepend(z1Div); //Doesn't work on IE\n parentDiv.appendChild(z1Div);\n }\n } else {\n var parentDivCollection = document.getElementsByClassName(\"pdp-main-right-content\");\n if (!parentDivCollection || (parentDivCollection && parentDivCollection.length == 0))\n parentDivCollection = document.getElementsByClassName(\"collection_main_right_content\");\n if (parentDivCollection && parentDivCollection.length == 1) {\n var parentDiv = parentDivCollection[0];\n var z1Div = document.createElement(\"div\");\n if (isDebugScr) console.log(\"[zineone] created new div\");\n z1Div.setAttribute(\"id\", \"z1-pdpurgency\");\n z1Div.style.display = \"none\";\n z1Div.style.margin = \".3em\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.width = \"100%\";\n z1Div.style.background = \"linear-gradient(to right, #84337e, #2a2455)\";\n z1Div.style.backgroundSize = \"100% 100%\";\n z1Div.style.color = \"#ffffff\";\n z1Div.style.height = \"30px\";\n z1Div.style.lineHeight = \"30px\";\n z1Div.style.fontSize = \"17px\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.fontFamily = \"\\'Gotham 7r\\', Helvetica, Arial, sans-serif\";\n\n //parentDiv.prepend(z1Div); //doesn't work on IE\n var refDiv = parentDiv.firstChild;\n parentDiv.insertBefore(z1Div, refDiv);\n\n if (isDebugScr) console.log(\"[zineone] appended new div\");\n }\n }\n\n /*} else {\n var parentDivCollection = document.getElementsByClassName(\"pdp-main-right-content\");\n if (!parentDivCollection || (parentDivCollection && parentDivCollection.length == 0))\n parentDivCollection = document.getElementsByClassName(\"collection_main_right_content\");\n if (parentDivCollection && parentDivCollection.length == 1) {\n var parentDiv = parentDivCollection[0];\n var z1Div = document.createElement(\"div\");\n if (isDebugScr) console.log(\"[zineone] created new div\");\n //z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1-pdpurgency\");\n //z1Div.setAttribute(\"style\", \"display:none;margin: .3em; text-align: center; width: 100%; background: linear-gradient(to right, #84337e, #2a2455); background-size: 100% 100%; color: #ffffff; height: 30px; line-height: 30px; font-size: 17px;text-align: center;font-family: 'Gotham 7r', Helvetica, Arial, sans-serif;transform: skewX(-10deg);\");\n //z1Div.setAttribute(\"style\", \"display:none;margin: .3em; text-align: center; width: 100%; background: linear-gradient(to right, #84337e, #2a2455); background-size: 100% 100%; color: #ffffff; height: 30px; line-height: 30px; font-size: 17px;text-align: center;font-family: 'Gotham 7r', Helvetica, Arial, sans-serif;\"); \n z1Div.style.display = \"none\";\n z1Div.style.margin = \".3em\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.width = \"100%\";\n z1Div.style.background = \"linear-gradient(to right, #84337e, #2a2455)\";\n z1Div.style.backgroundSize = \"100% 100%\";\n z1Div.style.color = \"#ffffff\";\n z1Div.style.height = \"30px\";\n z1Div.style.lineHeight = \"30px\";\n z1Div.style.fontSize = \"17px\";\n z1Div.style.textAlign = \"center\";\n z1Div.style.fontFamily = \"\\'Gotham 7r\\', Helvetica, Arial, sans-serif\";\n\n //parentDiv.prepend(z1Div); //doesn't work on IE\n var refDiv = parentDiv.firstChild;\n parentDiv.insertBefore(z1Div, refDiv);\n\n if (isDebugScr) console.log(\"[zineone] appended new div\");\n }\n }*/\n\n\n} catch (z1ie) {\n console.log(\"[zineone] exception in _ws_ Tag creating div to attch z1widget on PDP=\" + z1ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"/product/prd-"}},{"tagName":"Creating Z1 Widget Div on Homepage","actionType":"z1script","script":"//add msg div as child of notifyDiv\n//var notifyDiv = document.getElementById(\"container\");\ntry {\n \n var id = localStorage.getItem(\"z1_cust_id\");\n \n if(id==\"3000000015510732\"||id==\"2254040233704719\"){\n \n }\n \n var notifyDiv = document.getElementById(\"mini-cart\");\n var z1Div = document.createElement(\"div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1widget\");\n notifyDiv.appendChild(z1Div);\n} catch (z1ie) {\n console.log(\"exception in Tag creating div to attch z1widget=\" + z1ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"/"}},{"tagName":"Creating Z1 Widget Div on CartPage","actionType":"z1script","script":"//add msg div as child of notifyDiv\n//var notifyDiv = document.getElementById(\"container\");\ntry {\n var notifyDiv = document.getElementById(\"mini-cart\");\n var z1Div = document.createElement(\"div\");\n z1Div.setAttribute(\"data-zineone-widget\", \"z1_content_widget\");\n z1Div.setAttribute(\"id\", \"z1widget\");\n notifyDiv.appendChild(z1Div);\n} catch (z1ie) {\n console.log(\"exception in Tag creating div to attch z1widget=\" + z1ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"ends","val":"shopping_cart.jsp"}},{"tagName":"closeZ1WidgetOnMIniCartClickHome","actionType":"z1script","script":"try {\n var elem = document.getElementById('z1widget');\n elem.style.display = \"none\";\n} catch (ee) {\n console.log(\"[zineone] err in tag closeZ1WidgetOnMIniCartClickSearch \" + ee);\n}\n","eventName":"click","pageSelector":{"type":"pgName","condition":"contains","val":"/"},"domSelector":{"type":"id","val":"mini-cart"}},{"tagName":"closeZ1WidgetOnMIniCartClickCart","actionType":"z1script","script":"try {\n var elem = document.getElementById('z1widget');\n var e2 = document.querySelectorAll('#z1widget');\n for (var i = 0; i < e2.length; i++)\n {\n if (e2[i].style.display)\n {\n e2[i].style.display = \"none\";\n }\n }\n //elem.style.display = 'none';\n \t//elem.style.display = \"\";\n} catch (ee) {\n console.log(\"[zineone] err in tag closeZ1WidgetOnMIniCartClickSearch \" + ee);\n}\n","eventName":"click","pageSelector":{"type":"pgName","condition":"contains","val":"/shopping_cart.jsp"},"domSelector":{"type":"id","val":"mini-cart"}},{"tagName":"completeShipping","actionType":"z1script","script":"try {\n var debugScr = true;\n var cartValue = 0;\n\n if (debugScr) console.log(\"[ZineOne] addtobag Event will be triggered\");\n\n var evtName = \"_ws_completeShipping\";\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n };\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n function validateForNotNull(obj)\n {\n //console.log('validateForNotNull',obj,typeof(obj));\n if(!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0)\n {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array,attribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\",attribute,array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\",mainAttribute,innerAttribute,array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ',spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function fetchCartDump()\n {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if(validateForNotNull(cartData))\n {\n for(var i=0;i<cartData.length;i++)\n {\n if(i == 15)\n {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if(validateForNotNull(currentObj.storeClearance))\n {\n currentFinalObjToSend.sc = currentObj.storeClearance; \n }\n \n if(validateForNotNull(currentObj.itemProperties.size))\n {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n \n if(validateForNotNull(currentObj.itemProperties.color))\n {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n \n if(validateForNotNull(currentObj.itemProperties.isWebExclusive))\n {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive; \n }\n \n\n var finalInvInfo = {};\n\n if(validateForNotNull(currentObj.inventoryInfo.shipAvailable))\n {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if(validateForNotNull(currentObj.inventoryInfo.bopusAvailable))\n {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.bossAvailable))\n {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip))\n {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip; \n }\n \n if(validateForNotNull(currentObj.finalInvInfo))\n {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo; \n }\n \n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ',currentPromoInfo);\n\n if(validateForNotNull(currentPromoInfo))\n {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for(var j=0;j<currentPromoInfo.length;j++)\n {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if(validateForNotNull(currentPromoObj.promoType))\n {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType; \n }\n \n if(validateForNotNull(currentPromoObj.promoText))\n {\n prTextArr[prTextArr.length] = currentPromoObj.promoText; \n }\n \n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n \n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ',currentOfferInfo);\n\n if(validateForNotNull(currentOfferInfo))\n {\n var finalOfferInfoArray = [];\n\n for(var j=0;j<currentOfferInfo.length;j++)\n {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if(validateForNotNull(currentOfferInfoObj.offerDiscount))\n {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount; \n }\n \n if(validateForNotNull(currentOfferInfoObj.startDate))\n {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate; \n }\n \n if(validateForNotNull(currentOfferInfoObj.endDate))\n {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate; \n }\n \n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n \n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ',shipmentInfo);\n\n if(validateForNotNull(shipmentInfo))\n {\n var finalshipmentInfoArray = [];\n\n for(var j=0;j<shipmentInfo.length;j++)\n {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {}; \n\n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges))\n {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount))\n {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta))\n {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal))\n {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal; \n }\n \n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if(validateForNotNull(shippingOffers))\n {\n var finalshippingOfferArray = [];\n\n for(var k=0;k<shippingOffers.length;k++)\n {\n var currentshippingOffersObj = shippingOffers[k];\n\n if(validateForNotNull(currentshippingOffersObj.discountAmount))\n {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount; \n }\n \n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary; \n\n var finalOrderSummaryObj = {};\n\n if(validateForNotNull(orderSummary.merchandisePromoAmount))\n {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount; \n }\n \n if(validateForNotNull(orderSummary.discountedShippingAmount))\n {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n \n if(validateForNotNull(orderSummary.originalShippingAmount))\n {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated))\n {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate))\n {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax))\n {\n finalOrderSummaryObj.tax = orderSummary.tax.tax; \n }\n \n if(validateForNotNull(orderSummary.totalSurcharges))\n {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges; \n }\n \n if(validateForNotNull(orderSummary.totalTaxFee))\n {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee; \n }\n \n if(validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts))\n {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts; \n }\n \n if(validateForNotNull(orderSummary.totalTax))\n {\n finalOrderSummaryObj.totTax = orderSummary.totalTax; \n }\n \n if(validateForNotNull(orderSummary.total))\n {\n finalOrderSummaryObj.total = orderSummary.total; \n }\n \n if(validateForNotNull(orderSummary.savings))\n {\n finalOrderSummaryObj.sav = orderSummary.savings; \n }\n \n if(validateForNotNull(orderSummary.taxFeeEnabled))\n {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled; \n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n function fetchMcmId()\n {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n function getPresentVector() {\n try {\n\n console.log('getPresentVector');\n\n if(pageData.cartDetails)\n {\n cartValue = pageData.cartDetails.cartSubTotalValue;\n }\n\n var itemsInBag = Number(localStorage.getItem(\"z1_checkoutBagCount\"));\n\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n if (typeof pageData != 'undefined') {\n presentVector.customerState = (pageData.customerDetails && pageData.customerDetails.customerState) || '-';\n presentVector.customerPostalCode = (pageData.customerDetails && pageData.customerDetails.customerPostalCode) || '-'; \n }\n presentVector.userPFM = getUrlParameter('userPFM') || '-';\n }\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() {\n try {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try\n {\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if(validateForNotNull(cartDump))\n {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for(var k=0;k<cartKeys.length;k++)\n {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n \n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if(validateForNotNull(newUserVectors))\n {\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n }\n catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'completeShipping';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue= cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n if(validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge))\n {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n }\n else\n {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n \n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n\n\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n\n\n ZineOne.pushEvent(evtName, {});\n\n updateUserVectors();\n\n\n\n} catch (ie) {\n\nif (debugScr) console.log(\"[Zineone] Error in Tag Script: WebStore Z1 tag. \" + ie);\n\n}","eventName":"click","pageSelector":{"type":"pgName","condition":"ends","val":"checkout/v2/checkout.jsp"},"domSelector":{"type":"class","val":"button_continueToPayment"}},{"tagName":"completePayment","actionType":"z1script","script":"try {\n var debugScr = true;\n var cartValue = 0;\n\n if (debugScr) console.log(\"[ZineOne] addtobag Event will be triggered\");\n\n var evtName = \"_ws_completePayment\";\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n };\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n function validateForNotNull(obj)\n {\n //console.log('validateForNotNull',obj,typeof(obj));\n if(!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0)\n {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array,attribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\",attribute,array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\",mainAttribute,innerAttribute,array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ',spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function fetchCartDump()\n {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if(validateForNotNull(cartData))\n {\n for(var i=0;i<cartData.length;i++)\n {\n if(i == 15)\n {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if(validateForNotNull(currentObj.storeClearance))\n {\n currentFinalObjToSend.sc = currentObj.storeClearance; \n }\n \n if(validateForNotNull(currentObj.itemProperties.size))\n {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n \n if(validateForNotNull(currentObj.itemProperties.color))\n {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n \n if(validateForNotNull(currentObj.itemProperties.isWebExclusive))\n {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive; \n }\n \n\n var finalInvInfo = {};\n\n if(validateForNotNull(currentObj.inventoryInfo.shipAvailable))\n {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if(validateForNotNull(currentObj.inventoryInfo.bopusAvailable))\n {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.bossAvailable))\n {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip))\n {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip; \n }\n \n if(validateForNotNull(currentObj.finalInvInfo))\n {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo; \n }\n \n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ',currentPromoInfo);\n\n if(validateForNotNull(currentPromoInfo))\n {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for(var j=0;j<currentPromoInfo.length;j++)\n {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if(validateForNotNull(currentPromoObj.promoType))\n {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType; \n }\n \n if(validateForNotNull(currentPromoObj.promoText))\n {\n prTextArr[prTextArr.length] = currentPromoObj.promoText; \n }\n \n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n \n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ',currentOfferInfo);\n\n if(validateForNotNull(currentOfferInfo))\n {\n var finalOfferInfoArray = [];\n\n for(var j=0;j<currentOfferInfo.length;j++)\n {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if(validateForNotNull(currentOfferInfoObj.offerDiscount))\n {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount; \n }\n \n if(validateForNotNull(currentOfferInfoObj.startDate))\n {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate; \n }\n \n if(validateForNotNull(currentOfferInfoObj.endDate))\n {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate; \n }\n \n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n \n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ',shipmentInfo);\n\n if(validateForNotNull(shipmentInfo))\n {\n var finalshipmentInfoArray = [];\n\n for(var j=0;j<shipmentInfo.length;j++)\n {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {}; \n\n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges))\n {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount))\n {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta))\n {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal))\n {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal; \n }\n \n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if(validateForNotNull(shippingOffers))\n {\n var finalshippingOfferArray = [];\n\n for(var k=0;k<shippingOffers.length;k++)\n {\n var currentshippingOffersObj = shippingOffers[k];\n\n if(validateForNotNull(currentshippingOffersObj.discountAmount))\n {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount; \n }\n \n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary; \n\n var finalOrderSummaryObj = {};\n\n if(validateForNotNull(orderSummary.merchandisePromoAmount))\n {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount; \n }\n \n if(validateForNotNull(orderSummary.discountedShippingAmount))\n {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n \n if(validateForNotNull(orderSummary.originalShippingAmount))\n {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated))\n {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate))\n {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax))\n {\n finalOrderSummaryObj.tax = orderSummary.tax.tax; \n }\n \n if(validateForNotNull(orderSummary.totalSurcharges))\n {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges; \n }\n \n if(validateForNotNull(orderSummary.totalTaxFee))\n {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee; \n }\n \n if(validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts))\n {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts; \n }\n \n if(validateForNotNull(orderSummary.totalTax))\n {\n finalOrderSummaryObj.totTax = orderSummary.totalTax; \n }\n \n if(validateForNotNull(orderSummary.total))\n {\n finalOrderSummaryObj.total = orderSummary.total; \n }\n \n if(validateForNotNull(orderSummary.savings))\n {\n finalOrderSummaryObj.sav = orderSummary.savings; \n }\n \n if(validateForNotNull(orderSummary.taxFeeEnabled))\n {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled; \n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n function fetchMcmId()\n {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n\n function getPresentVector() {\n try {\n\n console.log('getPresentVector');\n\n if(pageData.cartDetails)\n {\n cartValue = pageData.cartDetails.cartSubTotalValue;\n }\n\n var itemsInBag = Number(localStorage.getItem(\"z1_checkoutBagCount\"));\n\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n\n presentVector.cardType = document.getElementsByClassName('shippingAddreswrap selected')[0].getElementsByClassName('shippingAddress_name')[0].getElementsByTagName('h3')[0].innerHTML.toString().trim();\n\n }\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() {\n try {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try{\n\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if(validateForNotNull(cartDump))\n {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for(var k=0;k<cartKeys.length;k++)\n {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n \n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if(validateForNotNull(newUserVectors))\n {\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n }\n catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'completePayment';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n \n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue= cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n if(validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge))\n {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n }\n else\n {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n \n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n\n\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n\n\n ZineOne.pushEvent(evtName, {});\n\n updateUserVectors();\n\n\n\n} catch (ie) {\n\nif (debugScr) console.log(\"[Zineone] Error in Tag Script: WebStore Z1 tag. \" + ie);\n\n}","eventName":"click","pageSelector":{"type":"pgName","condition":"ends","val":"checkout/v2/checkout.jsp"},"domSelector":{"type":"class","val":"button_continueto_review_order"}},{"tagName":"Catalog Filter","actionType":"z1script","script":"\ntry {\n\n\n\tvar debugScr = true;\n var cartValue = 0;\n var currentUserCartArr = [];\n\n var isJsonNull = false;\n\n\n\tvar evtName = '_ws_viewedCatalog';\n\n\n\t//Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n\n };\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\tfunction getUrlParameter(sParam) \n\t{\n\t\tvar sPageURL = decodeURIComponent(window.location.search.substring(1)),\n\t sURLVariables = sPageURL.split('&'),\n\t sParameterName,\n\t i;\n\n\t for (i = 0; i < sURLVariables.length; i++) {\n\t sParameterName = sURLVariables[i].split('=');\n\n\t if (sParameterName[0] === sParam) {\n\t return sParameterName[1] === undefined ? true : sParameterName[1];\n\t }\n\t }\n }\n\n function checkForCNUpdate()\n {\n \tCURRENT_CN_CHECK++;\n\n \tconsole.log(' checkForCNUpdate '+CURRENT_CN_CHECK+'::'+MAX_CN_CHECK);\n\n \tif(CURRENT_CN_CHECK <= MAX_CN_CHECK)\n \t{\n \t\tvar tempCN = getUrlParameter('CN');\n\n \t\tconsole.log(currentCN+' CHecking CN '+tempCN);\n\n \t\tif(tempCN == currentCN)\n \t\t{\n \t\t\tsetTimeout(function(){ \n \t\t\t\tcheckForCNUpdate(); \n \t\t\t}, 1000);\n\n\t\t\t\t\n\t\t\t\treturn;\n \t\t}\n \t\telse\n \t\t{\n\n \t\t\tcurrentCN = getUrlParameter('CN');\n\n \t\t\tvar evtData = addEventData();\n \t\t\tZineOne.pushEvent(evtName, evtData);\n updateUserVectors();\n\n \t\t}\n \t}\n \t\n }\n\n\n function validateForNotNull(obj)\n {\n //console.log('validateForNotNull',obj,typeof(obj));\n if(!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0)\n {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array,attribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\",attribute,array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\",mainAttribute,innerAttribute,array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ',spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function fetchCartDump()\n {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if(validateForNotNull(cartData))\n {\n for(var i=0;i<cartData.length;i++)\n {\n if(i == 15)\n {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if(validateForNotNull(currentObj.storeClearance))\n {\n currentFinalObjToSend.sc = currentObj.storeClearance; \n }\n \n if(validateForNotNull(currentObj.itemProperties.size))\n {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n \n if(validateForNotNull(currentObj.itemProperties.color))\n {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n \n if(validateForNotNull(currentObj.itemProperties.isWebExclusive))\n {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive; \n }\n \n\n var finalInvInfo = {};\n\n if(validateForNotNull(currentObj.inventoryInfo.shipAvailable))\n {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if(validateForNotNull(currentObj.inventoryInfo.bopusAvailable))\n {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.bossAvailable))\n {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip))\n {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip; \n }\n \n if(validateForNotNull(currentObj.finalInvInfo))\n {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo; \n }\n \n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ',currentPromoInfo);\n\n if(validateForNotNull(currentPromoInfo))\n {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for(var j=0;j<currentPromoInfo.length;j++)\n {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if(validateForNotNull(currentPromoObj.promoType))\n {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType; \n }\n \n if(validateForNotNull(currentPromoObj.promoText))\n {\n prTextArr[prTextArr.length] = currentPromoObj.promoText; \n }\n \n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n \n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ',currentOfferInfo);\n\n if(validateForNotNull(currentOfferInfo))\n {\n var finalOfferInfoArray = [];\n\n for(var j=0;j<currentOfferInfo.length;j++)\n {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if(validateForNotNull(currentOfferInfoObj.offerDiscount))\n {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount; \n }\n \n if(validateForNotNull(currentOfferInfoObj.startDate))\n {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate; \n }\n \n if(validateForNotNull(currentOfferInfoObj.endDate))\n {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate; \n }\n \n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n \n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ',shipmentInfo);\n\n if(validateForNotNull(shipmentInfo))\n {\n var finalshipmentInfoArray = [];\n\n for(var j=0;j<shipmentInfo.length;j++)\n {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {}; \n\n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges))\n {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount))\n {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta))\n {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal))\n {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal; \n }\n \n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if(validateForNotNull(shippingOffers))\n {\n var finalshippingOfferArray = [];\n\n for(var k=0;k<shippingOffers.length;k++)\n {\n var currentshippingOffersObj = shippingOffers[k];\n\n if(validateForNotNull(currentshippingOffersObj.discountAmount))\n {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount; \n }\n \n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary; \n\n var finalOrderSummaryObj = {};\n\n if(validateForNotNull(orderSummary.merchandisePromoAmount))\n {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount; \n }\n \n if(validateForNotNull(orderSummary.discountedShippingAmount))\n {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n \n if(validateForNotNull(orderSummary.originalShippingAmount))\n {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated))\n {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate))\n {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax))\n {\n finalOrderSummaryObj.tax = orderSummary.tax.tax; \n }\n \n if(validateForNotNull(orderSummary.totalSurcharges))\n {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges; \n }\n \n if(validateForNotNull(orderSummary.totalTaxFee))\n {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee; \n }\n \n if(validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts))\n {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts; \n }\n \n if(validateForNotNull(orderSummary.totalTax))\n {\n finalOrderSummaryObj.totTax = orderSummary.totalTax; \n }\n \n if(validateForNotNull(orderSummary.total))\n {\n finalOrderSummaryObj.total = orderSummary.total; \n }\n \n if(validateForNotNull(orderSummary.savings))\n {\n finalOrderSummaryObj.sav = orderSummary.savings; \n }\n \n if(validateForNotNull(orderSummary.taxFeeEnabled))\n {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled; \n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n\n function fetchFilterData(cnString,oldCnFromEvent)\n {\n var finalReturnString = '';\n\n var splitCnString = cnString.toString().split(\"+\");\n\n var currentFilterObj = {};\n var oldCnFromEventSplit = oldCnFromEvent.toString().split(\"|\");\n\n //console.log('oldCnFromEventSplit',oldCnFromEventSplit,oldCnFromEventSplit.length);\n\n for(var i=(oldCnFromEventSplit.length-1);i>=0;i--)\n {\n if(oldCnFromEventSplit[i].length == 0 || oldCnFromEventSplit[i] == '-')\n {\n continue;\n }\n\n var innerObj = oldCnFromEventSplit[i].split(\"+\");\n\n if(innerObj.length > 0)\n {\n for(var k=0;k<innerObj.length;k++)\n {\n var filterObj = innerObj[k].split(\":\");\n var filterName = filterObj[0];\n var filterValue = filterObj[1];\n\n currentFilterObj[filterName] = filterValue;\n }\n\n break;\n }\n \n }\n\n var alreadyUsedObj = {};\n\n //console.log(splitCnString);\n for(var i=0;i<splitCnString.length;i++)\n {\n var filterObj = splitCnString[i].split(\":\");\n var filterName = filterObj[0];\n\n //console.log('Filter Name ',filterName);\n //console.log('Filter Value ',filterValue);\n\n if(filterName in alreadyUsedObj)\n {\n continue;\n }\n\n alreadyUsedObj[filterName] = true;\n \n if(filterName in currentFilterObj)\n {\n currentFilterObj[filterName] = Number(currentFilterObj[filterName]) + 1;\n }\n else\n {\n currentFilterObj[filterName] = 1;\n }\n\n\n }\n\n //console.log('currentFilterObj',currentFilterObj);\n\n var filterkeys = Object.keys(currentFilterObj);\n for(var i=0;i<filterkeys.length;i++)\n {\n finalReturnString = finalReturnString + filterkeys[i] + ':' + currentFilterObj[filterkeys[i]] + '+';\n }\n\n finalReturnString = finalReturnString.substring(0,finalReturnString.length - 1);\n\n return finalReturnString;\n\n\n }\n\n function fetchNewAttributesForVectorization(eventData,eventName) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if (validateForNotNull(persistLocalData)) \n {\n var pageDataJson = pageData;\n\n persistLocalData = JSON.parse(persistLocalData);\n\n console.log('Into switch in fetchNewAttributesForVectorization',eventName);\n\n switch(eventName.toLowerCase())\n {\n case \"_ws_viewedcatalog\":\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.categoryName)) {\n finalReturnObj.pgdata_pmpdet_catname = pageDataJson.pmpDetails.categoryName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.subcategoryName)) {\n finalReturnObj.pgdata_pmpdet_subcatname = pageDataJson.pmpDetails.subcategoryName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.findingName)) {\n finalReturnObj.pgdata_pmpdet_findingname = pageDataJson.pmpDetails.findingName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.keywords)) {\n finalReturnObj.pgdata_pmpdet_cat_keywords = pageDataJson.pmpDetails.keywords;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.pageFilter)) {\n finalReturnObj.pgdata_pmpdet_pgfilter = pageDataJson.pmpDetails.pageFilter;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.departmentName)) {\n finalReturnObj.pgdata_pmpdet_deptname = pageDataJson.pmpDetails.departmentName;\n }\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.genderValues)) {\n finalReturnObj.pgdata_pmpdet_gendervalues = pageDataJson.pmpDetails.genderValues;\n }\n\n\n var newUserVectors = localStorage.getItem('z1_newUserVectors');\n\n if(newUserVectors && newUserVectors.length > 0)\n {\n var newUserVectorsJson = JSON.parse(newUserVectors);\n var currentFilterString = newUserVectorsJson.filter_by_count;\n\n if(validateForNotNull(getUrlParameter('CN')) && validateForNotNull(currentFilterString))\n {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'),currentFilterString); \n }\n \n }\n else\n {\n if(validateForNotNull(getUrlParameter('CN')))\n {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'),''); \n }\n \n }\n\n break;\n\n case '_ws_changedsort':\n\n var selectFilter = document.getElementById('sortby_select');\n if(selectFilter)\n {\n var selectedValue = selectFilter.options[selectFilter.selectedIndex].value;\n if(validateForNotNull(selectedValue))\n {\n finalReturnObj.sort_by = selectedValue;\n }\n }\n\n\n break;\n\n }\n }\n\n\n return finalReturnObj;\n\n }\n\n function fetchMcmId()\n {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n\n function getPresentVector() {\n try {\n\n console.log('getPresentVector');\n\n var itemsInBag = 0;\n\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if(isValid(cartData))\n {\n var cartInfo = JSON.parse(cartData);\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n cartValue = cartValue + Number(cartInfo.cartItems[i].itemPriceInfo.grossPrice);\n\n var tempObj = {};\n tempObj.productId = cartInfo.cartItems[i].productId;\n tempObj.skuId = cartInfo.cartItems[i].skuId;\n tempObj.quantity = cartInfo.cartItems[i].quantity;\n tempObj.itemType = cartInfo.cartItems[i].itemType;\n\n currentUserCartArr.push(tempObj);\n\n }\n }\n else\n {\n if(getCookie('VisitorBagTotals').toString().length != 0)\n {\n cartValue = -1;\n\n isJsonNull = true;\n }\n }\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n \n\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n if (typeof pageData != 'undefined') {\n presentVector.department = (pageData.pmpDetails && pageData.pmpDetails.departmentName) || '-';\n presentVector.pageFilter = (pageData.pmpDetails && pageData.pmpDetails.pageFilter) || '-';\n }\n presentVector.CN = getUrlParameter('CN') || '-';\n presentVector.visualNavForm = getUrlParameter('VisualNavFrom') || '-';\n }\n\n presentVector = fetchNewAttributesForVectorization(presentVector,evtName);\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() {\n try {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try{\n\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if(validateForNotNull(cartDump))\n {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for(var k=0;k<cartKeys.length;k++)\n {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n \n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if(validateForNotNull(newUserVectors))\n {\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n }\n catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = '2. Catalog Filter';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n try\n {\n var maxAttrSize = 0;\n\n var totalSize = JSON.stringify(vectorsEventData);\n totalSize = totalSize.length;\n\n var vectorsEventDataKeys = Object.keys(vectorsEventData);\n for(var k=0;k<vectorsEventDataKeys.length;k++)\n {\n var attrSize = vectorsEventData[vectorsEventDataKeys[k]].length;\n\n if(attrSize > maxAttrSize)\n {\n maxAttrSize = attrSize;\n }\n }\n\n var newObj = {};\n newObj.ml_uv_maxAttrSize = maxAttrSize;\n newObj.ml_uv_totalSize = totalSize;\n\n ZineOne.pushEvent('_ws_updatevectors_size_tracking', newObj);\n\n } catch (ie) {\n\n \n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue= cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if(validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge))\n {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n }\n else\n {\n vectorsEventData.isKcc = -1;\n }\n \n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n \n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if(isJsonNull)\n {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = 'PMP';\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n \n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n\n function getCartData() {\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n var cartInfo = JSON.parse(cartData);\n var productsArr = [];\n\n //Send the Event even if the Cart does not have any item, so that the OpenAPI could be called\n //on the Server side\n\n if (cartInfo == null || cartInfo.cartItems == null || cartInfo.cartItems.length <= 0)\n return true;\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var saleUnitprice = 0;\n var regularUnitPrice = 0;\n if (!si.itemPriceInfo && !si.itemPriceInfo.saleUnitprice)\n saleUnitprice = si.itemPriceInfo.saleUnitprice;\n\n if (!si.itemPriceInfo && !si.itemPriceInfo.regularUnitPrice)\n regularUnitPrice = si.itemPriceInfo.regularUnitPrice;\n var obj = {\n \"id\": si.cartItemId,\n \"skuCode\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": saleUnitprice.toString(),\n \"regularUnitPrice\": regularUnitPrice.toString()\n };\n productsArr.push(obj);\n //if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n }\n //if (debugScr) console.log(\"[ZineOne] Out of loop\");\n if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n return JSON.stringify(productsArr);\n }\n\n\n\n function addEventData() {\n\n \tvar evtData = {};\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n\n \n } else {\n if (debugScr) console.log(\"[ZineOne] pageData NOT initialized. Cannot set customerId or login state.\");\n }\n\n var itemsInBag = 0;\n var cartItems, cartId, cartTotalValue, cartSubTotalValue, cartShippingValue, cartDiscountValue;\n if (pageData && pageData.cartDetails) {\n itemsInBag = pageData.cartDetails.numberOfItems;\n if (debugScr) console.log('[ZineOne] Number of Items in the cart: ' + itemsInBag);\n cartId = pageData.cartDetails.cartID;\n cartTotalValue = pageData.cartDetails.cartTotalValue;\n cartSubTotalValue = pageData.cartDetails.cartSubTotalValue;\n cartShippingValue = pageData.cartDetails.shippingValue;\n cartDiscountValue = pageData.cartDetails.discountValue;\n\n //cartItems = pageData.cartDetails.cartItems;\n cartItems = getCartData();\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n }\n\n //ZineOne.setCustomKey(\"customerId\", RRTrackingBean.profileId);\n // replace e with var from webstore page (consider profile attr per Manish)\n // maybe do on page unload so you grab it once on first page and use it afterwards\n evtData.itemsInBag = itemsInBag;\n if (cartId) evtData.cartId = cartId;\n if (cartTotalValue) evtData.cartTotalValue = cartTotalValue;\n if (cartSubTotalValue) evtData.cartSubTotalValue = cartSubTotalValue;\n if (cartShippingValue) evtData.cartShippingValue = cartShippingValue;\n if (cartDiscountValue) evtData.cartDiscountValue = cartDiscountValue;\n if (cartItems) evtData.cartItems = cartItems;\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n\n\n if (isSoftLoggedIn) evtData[\"isSoftLoggedIn\"] = isSoftLoggedIn;\n if (isLoggedIn) evtData[\"isLoggedIn\"] = isLoggedIn;\n if (debugScr) console.log(\"[ZineOne] evtName = \" + evtName);\n if (debugScr) console.log(\"[ZineOne] evtData =\" + JSON.stringify(evtData));\n\n\n return evtData;\n }\n\n\n}\n\ncatch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: Catalog Filter Z1 tag. \" + ie);\n}\n\ntry {\n\n\n\n\tvar isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n\n\n\n\tvar currentCN = getUrlParameter('CN');\n\n\tvar MAX_CN_CHECK = 10;\n\tvar CURRENT_CN_CHECK = 0;\n\n\n\tdocument.addEventListener('click',function(e){\n\n\t\tconsole.log('E Target ',e.target.className);\n\n\t\tvar classNameArr = e.target.className.toString().split('facet_checkbox');\n\t\tvar ceAjaxArr = e.target.className.toString().split('ce-ajax');\n\t\tvar checkmarkArr = e.target.className.toString().split('checkmark');\n\t\t\n\n\t\tconsole.log('Class Name Length '+classNameArr.length);\n\n \tif(e.target && (classNameArr.length > 1 || ceAjaxArr.length > 1 || checkmarkArr.length > 1)){\n\n evtName = '_ws_viewedCatalog';\n\n \t\tCURRENT_CN_CHECK = 0;\n\t\t\tcheckForCNUpdate();\n\n \t}});\n\n //Check for Sorting Dropdown\n var selectFilter = document.getElementById('sortby_select');\n selectFilter.onchange = function(){\n\n evtName = '_ws_changedsort';\n\n updateUserVectors();\n\n console.log('selectFilter Change',selectFilter);\n\n };\n\n}\n\ncatch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: Catalog Filter Z1 tag. \" + ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"catalog/"}},{"tagName":"Search Filter","actionType":"z1script","script":"\ntry {\n\n\n\tvar debugScr = true;\n var cartValue = 0;\n var currentUserCartArr = [];\n\n var isJsonNull = false;\n\n\n\tvar evtName = '_ws_searched';\n\n\n\t//Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n\n };\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\tfunction getUrlParameter(sParam) \n\t{\n\t\tvar sPageURL = decodeURIComponent(window.location.search.substring(1)),\n\t sURLVariables = sPageURL.split('&'),\n\t sParameterName,\n\t i;\n\n\t for (i = 0; i < sURLVariables.length; i++) {\n\t sParameterName = sURLVariables[i].split('=');\n\n\t if (sParameterName[0] === sParam) {\n\t return sParameterName[1] === undefined ? true : sParameterName[1];\n\t }\n\t }\n }\n\n function checkForCNUpdate()\n {\n \tCURRENT_CN_CHECK++;\n\n \tconsole.log(' checkForCNUpdate '+CURRENT_CN_CHECK+'::'+MAX_CN_CHECK);\n\n \tif(CURRENT_CN_CHECK <= MAX_CN_CHECK)\n \t{\n \t\tvar tempCN = getUrlParameter('CN');\n\n \t\tconsole.log(currentCN+' CHecking CN '+tempCN);\n\n \t\tif(tempCN == currentCN)\n \t\t{\n \t\t\tsetTimeout(function(){ \n \t\t\t\tcheckForCNUpdate(); \n \t\t\t}, 1000);\n\n\t\t\t\t\n\t\t\t\treturn;\n \t\t}\n \t\telse\n \t\t{\n\n \t\t\tcurrentCN = getUrlParameter('CN');\n\n \t\t\tvar evtData = addEventData();\n \t\t\tZineOne.pushEvent(evtName, evtData);\n updateUserVectors();\n\n \t\t}\n \t}\n \t\n }\n\n\n function validateForNotNull(obj)\n {\n //console.log('validateForNotNull',obj,typeof(obj));\n if(!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0)\n {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array,attribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\",attribute,array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\",mainAttribute,innerAttribute,array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ',spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function fetchCartDump()\n {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if(validateForNotNull(cartData))\n {\n for(var i=0;i<cartData.length;i++)\n {\n if(i == 15)\n {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if(validateForNotNull(currentObj.storeClearance))\n {\n currentFinalObjToSend.sc = currentObj.storeClearance; \n }\n \n if(validateForNotNull(currentObj.itemProperties.size))\n {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n \n if(validateForNotNull(currentObj.itemProperties.color))\n {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n \n if(validateForNotNull(currentObj.itemProperties.isWebExclusive))\n {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive; \n }\n \n\n var finalInvInfo = {};\n\n if(validateForNotNull(currentObj.inventoryInfo.shipAvailable))\n {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if(validateForNotNull(currentObj.inventoryInfo.bopusAvailable))\n {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.bossAvailable))\n {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip))\n {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip; \n }\n \n if(validateForNotNull(currentObj.finalInvInfo))\n {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo; \n }\n \n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ',currentPromoInfo);\n\n if(validateForNotNull(currentPromoInfo))\n {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for(var j=0;j<currentPromoInfo.length;j++)\n {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if(validateForNotNull(currentPromoObj.promoType))\n {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType; \n }\n \n if(validateForNotNull(currentPromoObj.promoText))\n {\n prTextArr[prTextArr.length] = currentPromoObj.promoText; \n }\n \n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n \n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ',currentOfferInfo);\n\n if(validateForNotNull(currentOfferInfo))\n {\n var finalOfferInfoArray = [];\n\n for(var j=0;j<currentOfferInfo.length;j++)\n {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if(validateForNotNull(currentOfferInfoObj.offerDiscount))\n {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount; \n }\n \n if(validateForNotNull(currentOfferInfoObj.startDate))\n {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate; \n }\n \n if(validateForNotNull(currentOfferInfoObj.endDate))\n {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate; \n }\n \n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n \n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ',shipmentInfo);\n\n if(validateForNotNull(shipmentInfo))\n {\n var finalshipmentInfoArray = [];\n\n for(var j=0;j<shipmentInfo.length;j++)\n {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {}; \n\n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges))\n {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount))\n {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta))\n {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal))\n {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal; \n }\n \n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if(validateForNotNull(shippingOffers))\n {\n var finalshippingOfferArray = [];\n\n for(var k=0;k<shippingOffers.length;k++)\n {\n var currentshippingOffersObj = shippingOffers[k];\n\n if(validateForNotNull(currentshippingOffersObj.discountAmount))\n {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount; \n }\n \n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary; \n\n var finalOrderSummaryObj = {};\n\n if(validateForNotNull(orderSummary.merchandisePromoAmount))\n {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount; \n }\n \n if(validateForNotNull(orderSummary.discountedShippingAmount))\n {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n \n if(validateForNotNull(orderSummary.originalShippingAmount))\n {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated))\n {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate))\n {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax))\n {\n finalOrderSummaryObj.tax = orderSummary.tax.tax; \n }\n \n if(validateForNotNull(orderSummary.totalSurcharges))\n {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges; \n }\n \n if(validateForNotNull(orderSummary.totalTaxFee))\n {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee; \n }\n \n if(validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts))\n {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts; \n }\n \n if(validateForNotNull(orderSummary.totalTax))\n {\n finalOrderSummaryObj.totTax = orderSummary.totalTax; \n }\n \n if(validateForNotNull(orderSummary.total))\n {\n finalOrderSummaryObj.total = orderSummary.total; \n }\n \n if(validateForNotNull(orderSummary.savings))\n {\n finalOrderSummaryObj.sav = orderSummary.savings; \n }\n \n if(validateForNotNull(orderSummary.taxFeeEnabled))\n {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled; \n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n\n function fetchFilterData(cnString,oldCnFromEvent)\n {\n var finalReturnString = '';\n\n var splitCnString = cnString.toString().split(\"+\");\n\n var currentFilterObj = {};\n var oldCnFromEventSplit = oldCnFromEvent.toString().split(\"|\");\n\n //console.log('oldCnFromEventSplit',oldCnFromEventSplit,oldCnFromEventSplit.length);\n\n for(var i=(oldCnFromEventSplit.length-1);i>=0;i--)\n {\n if(oldCnFromEventSplit[i].length == 0 || oldCnFromEventSplit[i] == '-')\n {\n continue;\n }\n\n var innerObj = oldCnFromEventSplit[i].split(\"+\");\n\n if(innerObj.length > 0)\n {\n for(var k=0;k<innerObj.length;k++)\n {\n var filterObj = innerObj[k].split(\":\");\n var filterName = filterObj[0];\n var filterValue = filterObj[1];\n\n currentFilterObj[filterName] = filterValue;\n }\n\n break;\n }\n \n }\n\n var alreadyUsedObj = {};\n\n //console.log(splitCnString);\n for(var i=0;i<splitCnString.length;i++)\n {\n var filterObj = splitCnString[i].split(\":\");\n var filterName = filterObj[0];\n\n //console.log('Filter Name ',filterName);\n //console.log('Filter Value ',filterValue);\n\n if(filterName in alreadyUsedObj)\n {\n continue;\n }\n\n alreadyUsedObj[filterName] = true;\n \n if(filterName in currentFilterObj)\n {\n currentFilterObj[filterName] = Number(currentFilterObj[filterName]) + 1;\n }\n else\n {\n currentFilterObj[filterName] = 1;\n }\n\n\n }\n\n //console.log('currentFilterObj',currentFilterObj);\n\n var filterkeys = Object.keys(currentFilterObj);\n for(var i=0;i<filterkeys.length;i++)\n {\n finalReturnString = finalReturnString + filterkeys[i] + ':' + currentFilterObj[filterkeys[i]] + '+';\n }\n\n finalReturnString = finalReturnString.substring(0,finalReturnString.length - 1);\n\n return finalReturnString;\n\n\n }\n\n function fetchNewAttributesForVectorization(eventData,eventName) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if (validateForNotNull(persistLocalData)) \n {\n var pageDataJson = pageData;\n\n persistLocalData = JSON.parse(persistLocalData);\n\n console.log('Into switch in fetchNewAttributesForVectorization',eventName);\n\n switch(eventName)\n {\n case \"_ws_searched\":\n\n if (validateForNotNull(pageDataJson.pmpDetails) && validateForNotNull(pageDataJson.pmpDetails.keywords)) {\n finalReturnObj.pgdata_pmpdet_search_keywords = pageDataJson.pmpDetails.keywords;\n }\n\n \n\n\n var newUserVectors = localStorage.getItem('z1_newUserVectors');\n\n if(newUserVectors && newUserVectors.length > 0)\n {\n var newUserVectorsJson = JSON.parse(newUserVectors);\n var currentFilterString = newUserVectorsJson.filter_by_count;\n\n if(validateForNotNull(getUrlParameter('CN')) && validateForNotNull(currentFilterString))\n {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'),currentFilterString); \n }\n \n }\n else\n {\n if(validateForNotNull(getUrlParameter('CN')))\n {\n finalReturnObj.filter_by_count = fetchFilterData(getUrlParameter('CN'),''); \n }\n \n }\n \n\n break;\n\n case '_ws_changedsort':\n\n var selectFilter = document.getElementById('sortby_select');\n if(selectFilter)\n {\n var selectedValue = selectFilter.options[selectFilter.selectedIndex].value;\n if(validateForNotNull(selectedValue))\n {\n finalReturnObj.sort_by = selectedValue;\n }\n }\n\n\n break;\n\n\n }\n }\n\n\n return finalReturnObj;\n\n }\n\n function fetchMcmId()\n {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n\n function getPresentVector() {\n try {\n\n console.log('getPresentVector');\n\n var itemsInBag = 0;\n\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if(isValid(cartData))\n {\n var cartInfo = JSON.parse(cartData);\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n cartValue = cartValue + Number(cartInfo.cartItems[i].itemPriceInfo.grossPrice);\n\n var tempObj = {};\n tempObj.productId = cartInfo.cartItems[i].productId;\n tempObj.skuId = cartInfo.cartItems[i].skuId;\n tempObj.quantity = cartInfo.cartItems[i].quantity;\n tempObj.itemType = cartInfo.cartItems[i].itemType;\n\n currentUserCartArr.push(tempObj);\n }\n }\n else\n {\n if(getCookie('VisitorBagTotals').toString().length != 0)\n {\n cartValue = -1;\n\n isJsonNull = true;\n }\n }\n\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n \n\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n if (evtName.toLocaleLowerCase() == '_ws_searched') {\n\n presentVector.keywords = (pageData.pmpDetails && pageData.pmpDetails && pageData.pmpDetails.keywords) || '-';\n \n presentVector.CN = getUrlParameter('CN') || '-';\n presentVector.visualNavForm = getUrlParameter('VisualNavFrom') || '-';\n\n var isFrmRecentSearch = getUrlParameter('isFrmRecentSearch');\n var isFrmTypeAhead = getUrlParameter('isFrmTypeAhead');\n presentVector.searchType = (isFrmRecentSearch == 'TRUE' && isFrmTypeAhead == 'TRUE') ? 'recent+typeahead' : (isFrmRecentSearch == 'TRUE' ? 'recent' : (isFrmTypeAhead == 'TRUE' ? 'typeahead' : '-'));\n\n }\n\n presentVector = fetchNewAttributesForVectorization(presentVector,evtName);\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() {\n try {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try{\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if(validateForNotNull(cartDump))\n {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for(var k=0;k<cartKeys.length;k++)\n {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if(validateForNotNull(newUserVectors))\n {\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n }\n catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = '2. searchFilter ';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue= cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if(validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge))\n {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n }\n else\n {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if(isJsonNull)\n {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = 'Search';\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n \n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n\n function getCartData() {\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n var cartInfo = JSON.parse(cartData);\n var productsArr = [];\n\n //Send the Event even if the Cart does not have any item, so that the OpenAPI could be called\n //on the Server side\n\n if (cartInfo == null || cartInfo.cartItems == null || cartInfo.cartItems.length <= 0)\n return true;\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var saleUnitprice = 0;\n var regularUnitPrice = 0;\n if (!si.itemPriceInfo && !si.itemPriceInfo.saleUnitprice)\n saleUnitprice = si.itemPriceInfo.saleUnitprice;\n\n if (!si.itemPriceInfo && !si.itemPriceInfo.regularUnitPrice)\n regularUnitPrice = si.itemPriceInfo.regularUnitPrice;\n var obj = {\n \"id\": si.cartItemId,\n \"skuCode\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": saleUnitprice.toString(),\n \"regularUnitPrice\": regularUnitPrice.toString()\n };\n productsArr.push(obj);\n //if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n }\n //if (debugScr) console.log(\"[ZineOne] Out of loop\");\n if (debugScr) console.log(\"[ZineOne] Product Array ==>\" + productsArr);\n return JSON.stringify(productsArr);\n }\n\n\n\n function addEventData() {\n\n \tvar evtData = {};\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n\n \n } else {\n if (debugScr) console.log(\"[ZineOne] pageData NOT initialized. Cannot set customerId or login state.\");\n }\n\n var itemsInBag = 0;\n var cartItems, cartId, cartTotalValue, cartSubTotalValue, cartShippingValue, cartDiscountValue;\n if (pageData && pageData.cartDetails) {\n itemsInBag = pageData.cartDetails.numberOfItems;\n if (debugScr) console.log('[ZineOne] Number of Items in the cart: ' + itemsInBag);\n cartId = pageData.cartDetails.cartID;\n cartTotalValue = pageData.cartDetails.cartTotalValue;\n cartSubTotalValue = pageData.cartDetails.cartSubTotalValue;\n cartShippingValue = pageData.cartDetails.shippingValue;\n cartDiscountValue = pageData.cartDetails.discountValue;\n\n //cartItems = pageData.cartDetails.cartItems;\n cartItems = getCartData();\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n }\n\n //ZineOne.setCustomKey(\"customerId\", RRTrackingBean.profileId);\n // replace e with var from webstore page (consider profile attr per Manish)\n // maybe do on page unload so you grab it once on first page and use it afterwards\n evtData.itemsInBag = itemsInBag;\n if (cartId) evtData.cartId = cartId;\n if (cartTotalValue) evtData.cartTotalValue = cartTotalValue;\n if (cartSubTotalValue) evtData.cartSubTotalValue = cartSubTotalValue;\n if (cartShippingValue) evtData.cartShippingValue = cartShippingValue;\n if (cartDiscountValue) evtData.cartDiscountValue = cartDiscountValue;\n if (cartItems) evtData.cartItems = cartItems;\n if (debugScr) console.log(\"[ZineOne] cartItems ==>\" + cartItems);\n\n\n if (isSoftLoggedIn) evtData[\"isSoftLoggedIn\"] = isSoftLoggedIn;\n if (isLoggedIn) evtData[\"isLoggedIn\"] = isLoggedIn;\n if (debugScr) console.log(\"[ZineOne] evtName = \" + evtName);\n if (debugScr) console.log(\"[ZineOne] evtData =\" + JSON.stringify(evtData));\n\n\n return evtData;\n }\n\n\n}\n\ncatch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: Catalog Filter Z1 tag. \" + ie);\n}\n\ntry {\n\n\n\n\tvar isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n\n\n\n\tvar currentCN = getUrlParameter('CN');\n\n\tvar MAX_CN_CHECK = 10;\n\tvar CURRENT_CN_CHECK = 0;\n\n\n\tdocument.addEventListener('click',function(e){\n\n\t\tconsole.log('E Target ',e.target.className);\n\n\t\tvar classNameArr = e.target.className.toString().split('facet_checkbox');\n\t\tvar ceAjaxArr = e.target.className.toString().split('ce-ajax');\n\t\tvar checkmarkArr = e.target.className.toString().split('checkmark');\n\t\t\n\n\t\tconsole.log('Class Name Length '+classNameArr.length);\n\n \tif(e.target && (classNameArr.length > 1 || ceAjaxArr.length > 1 || checkmarkArr.length > 1)){\n\n evtName = '_ws_searched';\n\n \t\tCURRENT_CN_CHECK = 0;\n\t\t\tcheckForCNUpdate();\n\n \t}});\n\n //Check for Sorting Dropdown\n var selectFilter = document.getElementById('sortby_select');\n selectFilter.onchange = function(){\n\n evtName = '_ws_changedsort';\n\n updateUserVectors();\n\n console.log('selectFilter Change',selectFilter);\n\n };\n\n}\n\ncatch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: Catalog Filter Z1 tag. \" + ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"search"}},{"tagName":"ClearZ1ItemsInEdgeBrowserLocalStorage","actionType":"z1script","script":"try {\n\n var uaval = window.navigator.userAgent; // > -1\"Mozilla/5.0 (X11; CrOS x86_64 6783.1.0) AppleWebKit/537.36 (KHTML, like Gecko) Edge/12.0\";\n //console.log(uaval);\n if (uaval && uaval.indexOf(\"Edge\", 0) > -1) {\n //console.log(\"Device Id is \" + dev_Id);\n Object.keys(localStorage).forEach(function(key) {\n if (key.lastIndexOf(\"z1_\", 0) === 0) {\n //console.log(\"key - \" + key + \" - value \" + localStorage.getItem(key));\n //console.log(\"key - \" + key);\n localStorage.setItem(key, \"\");\n localStorage.removeItem(key);\n }\n });\n ZineOne.turnOffApi(true);\n }\n} catch (e) {\n console.log('ZineOne : Unable to execute script' + e);\n}","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"ClearZ1OnUserLogout","actionType":"z1script","script":"function getParameterByName(name) {\n var match = RegExp('[\\\\?&]' + name + '=([^&#/]*)').exec(window.location.search);\n return match && decodeURIComponent(match[1].replace(/\\+/g, ' '));\n}\n\nfunction getCookie(name) {\n var value = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n if (debugScr && value != null) console.log(\"[ZineOne] getCookie value for = \" + name + \" value - \" + value);\n return (value != null) ? unescape(value[2]) : null;\n\n}\n\nfunction isNumeric(value) {\n return /^-{0,1}\\d+$/.test(value);\n}\n\nfunction isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n}\n\ntry {\n var debugScr = false;\n //Uncomment the below in production and comment the below in non-prod\n if ((window.location.host).includes(\"kohls.com\")) {\n var pg = Z1.window.browserInfo.pagePath;\n var reset = false;\n if (debugScr) console.log(\"[ZineOne] Page Name ==>\" + pg);\n\n if (pg == \"/\") {\n var logoutparam = getParameterByName('DPSLogout');\n if (logoutparam != null && logoutparam.toLowerCase() == 'true') {\n if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - logoutparam------------ **\" + logoutparam);\n reset = true;\n } else {\n if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - logoutparam is NULL ------------ **\");\n }\n } else {\n var xprof = getCookie('X-PROFILEID');\n var vistorId = getCookie(\"VisitorId\");\n if (debugScr) console.log(\"[ZineOne] xprof ==>\" + xprof + \" vistorId ==>\" + vistorId);\n\n if (!isValid(xprof) && (!isValid(vistorId) || !isNumeric(vistorId))) {\n //reset = true;\n }\n }\n\n var z1OTR = localStorage.getItem(\"z1_otr\");\n if (reset && (!isValid(z1OTR) || (z1OTR.toLowerCase() == 'false'))) {\n localStorage.setItem(\"z1_otr\", \"true\");\n if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - Reset Z1 properties ------------ ** z1_otr \" + z1OTR);\n\n \t// Venkat - 9/24/2018 - Begin\n \t// Uncommenting the lines below to enable the fix\n Object.keys(localStorage).forEach(function(key) {\n if (key.lastIndexOf(\"z1_\", 0) === 0) {\n //console.log(\"key - \" + key + \" - value \" + localStorage.getItem(key));\n //console.log(\"key - \" + key);\n if (!key.includes(\"z1_otr\")) {\n \tlocalStorage.setItem(key, \"\");\n \tlocalStorage.removeItem(key);\n }\n }\n });\n // Venkat - 9/24/2018 - End\n\n \t/*\n //var dev_Id = ZineOne.getDeviceId();\n //if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - Reset CustomerId to devId ------------ **\" + dev_Id);\n //ZineOne.setCustomerId(dev_Id);\n */\n } else if (!reset && (isValid(z1OTR) && z1OTR.toLowerCase() == 'true')) {\n localStorage.setItem(\"z1_otr\", \"false\");\n if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - Not resetting Z1 properties but z1_otr set to false ------------ ** original z1_otr \" + z1OTR);\n } else {\n if (debugScr) console.log(\"[ZineOne] @@@@@@@@@@@@ - Already reset Z1 properties ------------ ** z1_otr \" + z1OTR);\n }\n\n }\n} catch (e) {\n console.log(\" @@@ ClearZ1OnUserLogout \" + e);\n}","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"Z1 Div on PDP Scarcity Message","actionType":"z1script","script":"var isDebugScr = false;\ntry {\n /*var myId = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n console.log(\"Scarcity myId ==> \",myId);\n if (myId == \"3000000030411692\" || myId == \"3000000129500077\" || myId == \"3000000015076174\" || myId == \"3000000074262095\" ) {\n console.log(\"Execute only for my Id\");*/\n\n function getCookie(name) {\n var value = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n if (isDebugScr && value != null) console.log(\"[ZineOne] getCookie value for = \" + name + \" value - \" + value);\n return (value != null) ? unescape(value[2]) : null;\n }\n var aka_hp2_cookie = getCookie(\"AKA_HP2\");\n var aka_rv_cookie = getCookie(\"AKA_RV\");\n var aka_pdp2_cookie = getCookie(\"AKA_PDP2\");\n if (isDebugScr) console.log(\" aka_hp2_cookie ==> \", aka_hp2_cookie, \" aka_rv_cookie ==> \", aka_rv_cookie, \" aka_pdp2_cookie ==> \", aka_pdp2_cookie);\n if (aka_pdp2_cookie && aka_pdp2_cookie.toLowerCase() == \"true\") {\n var parentDiv;\n var productPageName = pageName;\n if (isDebugScr) console.log(\" productPageName ==> \",productPageName);\n if (productPageName == \"regularProductPage\") {\n parentDiv = document.getElementById(\"PDP_z1Scarcity_badge\");\n } else if (productPageName == \"collectionPDPPage\") {\n parentDiv = document.getElementById(\"CDP_z1Scarcity_badge\");\n }\n\n if (parentDiv) {\n var pdpScrDiv = document.createElement('div');\n if (isDebugScr) console.log(\"[ZineOne] created new div for scarcity\");\n pdpScrDiv.setAttribute(\"id\", \"z1-pdpscarcity\");\n //pdpScrDiv.setAttribute(\"style\", \"display:block;text-align: left; width: 100%; color: purple; font-size: 15px; clear: both; padding-top: 5px; overflow: auto;\");\n pdpScrDiv.style.display = \"block\";\n pdpScrDiv.style.textAlign = \"left\";\n pdpScrDiv.style.width = \"100%\";\n pdpScrDiv.style.color = \"purple\";\n pdpScrDiv.style.fontSize = \"15px\";\n pdpScrDiv.style.clear = \"both\";\n pdpScrDiv.style.paddingTop = \"5px\";\n pdpScrDiv.style.overflow = \"auto\";\n //pdpScrDiv.innerHTML=\"Just <b>1 left in this store!</b>\";\n parentDiv.appendChild(pdpScrDiv);\n }\n } else {\n var scarcityParentDiv = document.getElementsByClassName(\"quantity\");\n if (scarcityParentDiv) {\n var parentDiv = scarcityParentDiv[0];\n var pdpScrDiv = document.createElement('div');\n if (isDebugScr) console.log(\"[ZineOne] created new div for scarcity\");\n pdpScrDiv.setAttribute(\"id\", \"z1-pdpscarcity\");\n //pdpScrDiv.setAttribute(\"style\", \"display:block;text-align: left; width: 100%; color: purple; font-size: 15px; clear: both; padding-top: 5px; overflow: auto;\");\n pdpScrDiv.style.display = \"block\";\n pdpScrDiv.style.textAlign = \"left\";\n pdpScrDiv.style.width = \"100%\";\n pdpScrDiv.style.color = \"purple\";\n pdpScrDiv.style.fontSize = \"15px\";\n pdpScrDiv.style.clear = \"both\";\n pdpScrDiv.style.paddingTop = \"5px\";\n pdpScrDiv.style.overflow = \"auto\";\n //pdpScrDiv.innerHTML=\"Just <b>1 left in this store!</b>\";\n parentDiv.appendChild(pdpScrDiv);\n }\n }\n /*} else {\n var scarcityParentDiv = document.getElementsByClassName(\"quantity\");\n if (scarcityParentDiv) {\n var parentDiv = scarcityParentDiv[0];\n var pdpScrDiv = document.createElement('div');\n if (isDebugScr) console.log(\"[ZineOne] created new div for scarcity\");\n pdpScrDiv.setAttribute(\"id\", \"z1-pdpscarcity\");\n //pdpScrDiv.setAttribute(\"style\", \"display:block;text-align: left; width: 100%; color: purple; font-size: 15px; clear: both; padding-top: 5px; overflow: auto;\");\n pdpScrDiv.style.display = \"block\";\n pdpScrDiv.style.textAlign = \"left\";\n pdpScrDiv.style.width = \"100%\";\n pdpScrDiv.style.color = \"purple\";\n pdpScrDiv.style.fontSize = \"15px\";\n pdpScrDiv.style.clear = \"both\";\n pdpScrDiv.style.paddingTop = \"5px\";\n pdpScrDiv.style.overflow = \"auto\";\n //pdpScrDiv.innerHTML=\"Just <b>1 left in this store!</b>\";\n parentDiv.appendChild(pdpScrDiv);\n }\n }*/\n} catch (z1ie) {\n if (isDebugScr) console.log(\"[zineone] exception in Tag creating div to attch z1 scarcity on PDP=\" + z1ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"product/prd-"}},{"tagName":"RTO Shopping Cart","actionType":"z1script","script":"/*Changes done for IE\nA. function declaration like, var abc = function() won't work in IE if function is used first and then declared and defined. Please take below precaution before using it:\n 1. If you want to use function declaration like, var abc = function(), first declare it and then use it\n 2. Use normal function declaration like, function abc(). you can declare function anywhere in the page and use it before or after declaration. It will work on all the browsers.\nB. Do not use multiline strings, also call as 'Template String'. Template Strings are demarked by a backtick(`).\n Example. var abc = `This is multiline\n comment`; //multiline comments won't work in IE\n Use simple concatenation to achieve the same like,\n var abc = \"\";\n abc += 'This is multiline';\n abc += 'comment';\nC. You can not set defalut parameter values for function in IE.\n for e.g. function abc(num = 0,str=\"hello\") //Won't work in IE\nD. You can not use arguments object ([...args] or (...args) in function) in IE.\n For e.g function abc(...args){\n console.log(\"received paramenters \", args)\n } // Won't work in IE\nE. 'append' function won't work in IE. You can use 'appendChild' function to achieve the same functionality.\nF. 'prepend' function won't work IE. Try to use 'insertBefore' function to achieve the same functionality.\nG. new Event() function won't work in IE. You can use new CustomEvent() function to achieve the same functionality.\nH. Arrow functions (=>) won't work in IE\n*/\n\nvar debugScr = true;\ntry {\n\n var evtName = null;\n\n var isLoggedIn = \"\";\n\n var isSoftLoggedIn = \"\";\n\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n var cartValue = 0;\n\n var currentUserCartArr = [];\n\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n };\n\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n\n function getPresentVector(isRto, rtoEventType) {\n try {\n\n if (debugScr) console.log('getPresentVector');\n\n var itemsInBag = 0;\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = pageData.cartDetails.cartItems;\n if(isValid(cartData))\n {\n var cartInfo = (cartData);\n\n for (var i = 0; i < cartInfo.length; i++) {\n itemsInBag = itemsInBag + Number(cartInfo[i].quantity);\n\n cartValue = cartValue + Number(cartInfo[i].quantity)*Number(cartInfo[i].finalPrice);\n\n }\n }\n else\n {\n if(getCookie('VisitorBagTotals').toString().length != 0)\n {\n cartValue = -1;\n\n isJsonNull = true;\n\n }\n }\n\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n console.log(cartValue + ' Before Present Vector ', evtName);\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n console.log('Present Vector 1', presentVector);\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n\n if(isRto == true)\n {\n presentVector.event = eventCodes[\"_ws_rto\"] ;\n\n if(rtoEventType != null)\n {\n\n var rtoPageCode = '';\n\n rtoPageCode = 'CP';\n\n presentVector.rto_data = 'A';\n }\n\n }\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ', ie);\n }\n }\n\n\n\n function updateUserVectors(isRto, rtoEventType) {\n try {\n\n evtName = '_ws_rto';;\n if (debugScr) console.log('Into updateUserVectors');\n var presentVector = getPresentVector(isRto, rtoEventType);\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n if (debugScr) console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try {\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n var cartDump = fetchCartDump();\n\n if (validateForNotNull(cartDump)) {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for (var k = 0; k < cartKeys.length; k++) {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n if (validateForNotNull(newUserVectors)) {\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n } catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'webstoresendevent ' + evtName;\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n if (debugScr) console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n if (debugScr) console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue = cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge)) {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n } else {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if (isJsonNull) {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = pgName;\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n if (debugScr) console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ', ie);\n }\n }\n\n function updateFeatures() {\n\n if (debugScr) console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n /*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if ( !(cust_id == \"3000000030411692\" || cust_id == \"3000000126553504\") ) return;*/\n\n console.log(\"RTO Shopping cart START\");\n console.log('This is on the page load');\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n \n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n console.log('Final HTML '+InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function(){\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n\n\n existingSupc = JSON.parse(existingSupc);\n\n console.log('Got existingSupc ',existingSupc);\n\n existingSupc.is_redeemed = true;\n\n console.log('Setting is_redeemed ',existingSupc);\n\n var status = localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n console.log(status+' After Storage',localStorage.getItem('z1_supc'));\n\n sessionStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n console.log(status+' After Session Storage',sessionStorage.getItem('z1_supc'));\n\n sendRTOOmniture(2);\n\n }\n\n };\n\n\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n\n function sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\n //Case 1: Display Omniture \n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|CP|';\n\n sendDisEventToC3(\"CP\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n\n updateUserVectors(true,'applied');\n }\n\n \n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n function formatAMPM(date) {\n var hours = date.getHours();\n var minutes = date.getMinutes();\n var ampm = hours >= 12 ? 'pm' : 'am';\n hours = hours % 12;\n hours = hours ? hours : 12; // the hour '0' should be '12'\n minutes = minutes < 10 ? '0'+minutes : minutes;\n var strTime = hours + ':' + minutes + ' ' + ampm;\n return strTime;\n }\n\n function showRTOBanner(e)\n {\n // Style string for RTO\n var style = '.popupPromoText {font-size: 1.85em;margin-bottom: 5px;}.z1_b_container_kohlsbannertoparrow_rto {font-family: \\'Gotham 5r\\';position: fixed;padding: 0px;z-index: 1000;background: transperant;transition: all 1s ease-in;-webkit-animation: fadein 2s;/* Safari, Chrome and Opera > 12.1 */-moz-animation: fadein 2s;/* Firefox < 16 */-ms-animation: fadein 2s;/* Internet Explorer */-o-animation: fadein 2s;/* Opera < 12.1 */animation: fadein 2s; { z1_position_val}}@keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Firefox < 16 */@-moz-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Safari, Chrome and Opera > 12.1 */@-webkit-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Internet Explorer */@-ms-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Opera < 12.1 */@-o-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}.arrow_box {position: absolute;text-align: center;left: 50%;transform: translate(-50%, 100%);bottom: -20px;background: #ffffff;border: 1px solid #bfbfbf;padding: 1rem;border-radius: 0.6rem;width: 238px;-webkit-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);-moz-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);}.arrow_box:after,.arrow_box:before {content: \" \";position: absolute;}.arrow_box:after {border-color: rgba(255, 255, 255, 0);border-bottom-color: #ffffff;border-width: 20px;margin-left: -20px;}.arrow_box:before {width: 22px;height: 22px;background: #ffffff;z-index: 100;transform: translate(-50%, -50%) rotate(45deg);top: 1px;left: 50%;box-shadow: -6px -6px 5px 1px #999;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_box_style {position: relative;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 {padding-left: 0px !important;margin-left: 0px;min-width: none;max-width: none;align-self: center;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 img {min-width: 64px;max-width: 64px;min-height: 64px;max-height: 64px;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 {padding: 0 10px;font-size: 0.9em !important;line-height: 1.5;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 .titleText {background: url(\\'https://d2p4r375zfkzm8.cloudfront.net/zb-design-com/arrowdown3.png\\') no-repeat 0 2px;font-weight: bold;color: #000;font-size: 1.08em;padding: 0px 0 3px 20px;line-height: 1.4;}.z1_b_container_kohlsbannertoparrow_rto .closeBtn {cursor: pointer;position: absolute;right: 3px;top: 8px;width: 20px;height: 20px;margin: 0;padding: 0;font-size: 19px;font-family: \\'Gotham 4r\\';}.z1_b_container_kohlsbannertoparrow_rto .closeBtn img {border-bottom-left-radius: 50%;border-top-left-radius: 50%;border-bottom-right-radius: 50%;border-top-right-radius: 50%;height: 13px;width: 13px;opacity: 1;}.z1_b_container_kohlsbannertoparrow_rto .offerPrice {font-size: 1.3em;color: #e8342c;padding-right: 8px;}.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .todaytext {font-size: 1.5em;color: #3a3a3a;font-weight: 400;margin: 5px 0px;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto #offerDuration {font-weight: bold;font-size: 24px;}.z1_b_container_kohlsbannertoparrow_rto .todaytext div#offerDurationUnits {display: flex;flex-direction: column;text-align: left;font-size: 0.8em;}.z1_b_container_kohlsbannertoparrow_rto .savetext_row {padding: 0.6rem 0;}.z1_b_container_kohlsbannertoparrow_rto .cupontext {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.07;letter-spacing: -0.4px;text-align: center;color: #000000;margin: 20px;}.z1_b_container_kohlsbannertoparrow_rto .cupontext span {font-weight: bold;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer {background: #005553;text-transform: uppercase;color: #060606;padding: 0.40rem 1.85rem;border-radius: 2.2px;text-decoration: none;margin: 12px auto;letter-spacing: 1px;font-size: 13px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.6;letter-spacing: 0.5px;text-align: center;color: #ffffff;width: 138px;height: 31px;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy {content: \"Copy Offer\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover span {display: none;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover:before {/* background:#d2e2d3; color: #005553; */content: \"Click to Copy\";}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied:before {content: \"Copied\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied {background-color: #d2e2d3;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link {margin-top: 25px;font-size: 12px;font-weight: normal;font-style: normal;font-stretch: normal;line-height: 0.92;letter-spacing: normal;text-align: center;color: #444444;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {text-decoration: underline;color: #969696;font-size: 0.8rem;line-height: 1.2;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a:hover {color: #333;}.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 37.1px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.49;letter-spacing: normal;text-align: center;color: #005553;margin: 20px 0;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto .treatText {font-size: 17px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.z1_b_container_kohlsbannertoparrow_rto .treatTextNew {font-size: 1.2em;margin-bottom: 10px;color: #000;display: none;}.z1_b_container_kohlsbannertoparrow_rto .saveCont.saveMsg {margin-top: 8px;}.z1_b_container_kohlsbannertoparrow_rto .uptillTime {font-weight: 900;}.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 2em;}.treatTextLatest {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.btn_offer_container {margin: 25px;}.z1-rto-dollar_reward {font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #005553;margin-bottom: 10px;}.z1-rto-dollar_reward_content {display: flex;flex-wrap: wrap;justify-content: center;}.z1-rto-dollar-text {font-size: 34.2px;margin-top: auto;width: 20px;height: 25px;margin-bottom: auto;}.z1-rto-dollar-text-amount {font-size: 68px;height: 68px;letter-spacing: -3px;}.z1-rto-dollar-text-dOff-outer {margin-top: 15px;margin-bottom: auto;height: 25px;}.z1-rto-dollar-text-dOff-off {font-size: 16px;margin-left: -26px;position: relative;top: 4px;}.z1-rto-dollar-text-dOff-off-amount {font-size: 38px;position: relative;top: -4px;left: -5px;text-shadow: -1px 1px 0 #fff, 1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;}.z1-rto-dollar-text-dOff-off-miniDollar {height: -1px;font-size: 23px;position: relative;top: -9px;}.z1-rto-dollar-text-dOff-off-miniDollarAmount {letter-spacing: -1px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty {background-color: #e9f4cc;}.loyalty .usernameText {color: #208033;}.loyalty .saveMsg {color: #208033;}.loyalty .offerText {color: #208033;}.loyalty #rtoOfferCode {color: #208033;}.loyalty .z1-rto-dollar_reward_content {color: #208033;}.loyalty .btn_addoffer {background: #208033;}.loyalty.arrow_box:after {border-bottom-color: #208033;}.loyalty.arrow_box:before {background: #208033;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .bottom_link a {color: #444444;}.loyalty-cont.disable {display: none}.loyalty-cont.enable {display: block}.loyalty-cont {background-color: #208033;position: relative;top: -17px;left: -17px;width: 273px;height: 60px;border-radius: 0.6em 0.6em 0 0;color: #fff;}.loyalty-cont .heading-1 {padding-top: 15px;font-size: 16px;}.loyalty-cont .heading-2 {padding-top: 8px;font-size: 12px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .closeBtn {z-index: 1;color: #fff;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .loyalty-cont.disable {display: block;}.element_v2 {display: none;}.ui_v2 .element_v1 {display: none;}.ui_v2 .element_v2 {display: block;}#v2-take {position: absolute;left: 42px;top: 85px;}.ui_v2 .z1-rto-dollar-text {font-size: 36.9px;height: 5px;}.ui_v2 .z1-rto-dollar-text-amount {font-size: 82px;padding: 5px;}.ui_v2 {font-family: \\'Gotham 5r\\';}.ui_v2 .z1-rto-dollar-text-dOff-off {font-size: 25.6px;margin-left: 0px;top: 45px;font-weight: bold;}.ui_v2 .z1-rto-dollar_reward {margin-top: 5px;}.ui_v2 .treatText {margin-top: 25px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .treatText {margin-top: 15px;font-size: 16px;color: #000;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .offerDuration {color: #000;font-size: 20px;margin-top: 5px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .cupontext {color: #005553;font-size: 15px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {color: #444444;}.ui_v2.dollar_fix .z1-rto-dollar-text-dOff-off {top: 20px;}.ui_v2.dollar_fix #v2-take {top: 70px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {margin: 30px 0;margin-bottom: 25px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 89.7px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 40.4px;}';\n\n console.log('Before RTO Style');\n\n appendStyle(style);\n\n\n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n\n domstr_val = '<div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\\'offerText\\'>'+dolStr+'<span id=\\'rtoOfferValue\\' class=\\'rtoOfferValue\\'></span><span class=\"z1-rto-dollar-text-dOff-off element_v2\">off</span>'+'</div>';\n\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\"; \n\n domstr_val = '<div class=\\'offerText\\'>'+'<span id=\\'rtoOfferValue\\' class=\\'rtoOfferValue\\'></span>'+pctStr+'</div>'; \n } \n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = '<div class=\"z1-rto-dollar_reward\"><div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\"z1-rto-dollar_reward_content\"><div class=\"z1-rto-dollar-text\">$</div><div id=\\'rtoOfferValue\\' class=\"z1-rto-dollar-text-amount\"></div><div class=\"z1-rto-dollar-text-dOff-outer\"><span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount element_v1\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">'+e.offThres+'</span></span></div></div></div>';\n }\n\n var domstr = '<div data-zineone-properties=\"modal:true;container-class:z1_b_container_kohlsbannertoparrow_rto;\" id=\"z1-rto-div\" class=\"z1_b_container_kohlsbannertoparrow_rto arrow_box\"><div class=\"closeBtn\" onclick=\"var el=document.getElementById(\\'z1-rto-div\\');el.innerHTML=\\'\\';el.parentNode.removeChild(el);\">x</div><div class=\"z1_b_c1\"><div class=\\'loyalty-cont disable\\'><div class=\\'heading-1\\'>KOHL’S REWARDS®</div><div class=\\'heading-2\\'>MEMBER EXCLUSIVE</div></div><div><span class=\"usernameText\">Hi, </span><span class=\\'saveMsg element_v1\\'> save</span><div class=\\'saveMsg element_v2\\'>your cart looks great!</div></div>' + domstr_val +'<div class=\\'treatText element_v1\\'>in the next <span id=\\'offerDuration\\'></span> minutes.</div><div class=\\'saveMsg element_v2\\'>the items in your cart!</div><div class=\\'treatTextNew\\'>Valid until <span id=\\'uptillTime\\' class=\\'uptillTime\\'></span></div><div class=\\'treatTextLatest element_v1\\'>(Go ahead, treat yourself!)</div><div class=\\'element_v2\\'><div class=\\'treatText\\'>Check out in the next</div><div class=\\'offerDuration\\'><span id=\\'offerDurationv2\\'></span> minutes.</div></div><div class=\"cupontext\">PROMO CODE: <span id=\\'rtoOfferCode\\'></span></div><div class=\"btn_offer_container\"><a class=\"btn_addoffer\"><span id=\\'btn_addoffer\\'></span></a></div><div class=\"bottom_link\"><a id=\\'discliamer_href\\' href=\"#\" target=\\'_default\\'>details & exclusions</a></div><input type=\"text\" id=\"textCopy\" style=\\'opacity:0;pointer-events:none\\' /></div></div>';\n\n var t = document.createRange().createContextualFragment(domstr);\n\n console.log('Before RTO Z1 Widget');\n\n document.getElementById('z1widget').appendChild(t);\n\n\n /*document.getElementById('rtoOfferValue').append(e.offerValue);\n document.getElementById('rtoOfferCode').append(e.offerCode);\n document.getElementById('textCopy').value = e.offerCode; \n\n document.getElementById('offerDuration').append(e.offerDuration);\n\n document.getElementById('offerDurationv2').append(e.offerDuration);\n\n document.getElementById('discliamer_href').href = e.disclaimer;*/\n document.getElementById('rtoOfferValue').innerHTML=e.offerValue;\n document.getElementById('rtoOfferCode').innerHTML=e.offerCode;\n document.getElementById('textCopy').value = e.offerCode; \n\n document.getElementById('offerDuration').innerHTML=e.offerDuration;\n\n document.getElementById('offerDurationv2').innerHTML=e.offerDuration;\n\n document.getElementById('discliamer_href').href = e.disclaimer;\n\n var uptillTime = new Date();\n uptillTime.setMinutes(uptillTime.getMinutes() + Number(e.offerDuration));\n\n var uptillTimeStr = formatAMPM(uptillTime);\n\n //document.getElementById('uptillTime').append(uptillTimeStr + '.');\n document.getElementById('uptillTime').innerHTML=uptillTimeStr + '.';\n\n\n\n if(document.getElementsByClassName('first-name')[0] && document.getElementsByClassName('first-name')[0].innerText.toLowerCase()!=\"account\")\n {\n document.getElementsByClassName('usernameText')[0].innerText = document.getElementsByClassName('first-name')[0].innerText + ','; \n }\n else\n {\n document.getElementsByClassName('saveMsg')[0].innerText = \"Save\";\n }\n\n if(e.loyaltyCx == true)\n {\n document.getElementById('z1-rto-div').classList.add('loyalty');\n }\n\n\n if(e.ui_version && e.ui_version == 2)\n {\n document.getElementById('z1-rto-div').classList.add('ui_v2');\n document.getElementById('z1-rto-div').classList.add(e.offType.toLowerCase());\n }\n\n\n if(e.cta == \"COPY\")\n {\n document.getElementById('btn_addoffer').innerText = \"COPY OFFER\";\n document.getElementsByClassName('btn_addoffer')[0].classList.add('copy');\n }\n\n if(e.cta == \"ADD\" || e.cta == 'WALLET')\n {\n document.getElementById('btn_addoffer').innerText = \"ADD OFFER\";\n }\n\n\n document.getElementsByClassName('btn_addoffer')[0].onclick = function(){\n\n console.log('btn_addoffer Click ');\n\n\n if(e.cta == 'WALLET')\n {\n if(pageData && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue)\n {\n var cartValue = parseInt(pageData.cartDetails.cartSubTotalValue);\n\n //alert('Got Cart Value '+cartValue);\n if(cartValue == 0)\n {\n urlToGo = '/wallet/my_wallet.jsp#offers';\n\n location.href=urlToGo;\n\n return;\n }\n\n } \n }\n\n\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function(){\n\n\n if(e.cta == 'COPY')\n {\n\n var copyTextField = document.getElementById('textCopy');\n copyTextField.select();\n\n var copied = document.execCommand (\"copy\");\n\n console.log('Got Copied Status '+copied);\n \n document.getElementsByClassName('btn_addoffer')[0].classList.add('copied');\n document.getElementById('btn_addoffer').innerText = \"\";\n \n e.is_copied = 'true';\n localStorage.setItem('z1_supc',JSON.stringify(e));\n\n } \n \n\n console.log(\"kohlscashapply Click \"); \n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function(){ \n\n console.log(\"Checking for Redemption Popup \"+timeCounter); \n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n console.log('Got Popup Div '+popupDiv);\n\n if(popupDiv != undefined && popupDiv != null)\n {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv,e.offerCode);\n\n return;\n }\n\n if(timeCounter > maxCounter)\n {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n \n\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n\n document.getElementById('z1widget').innerHTML='';\n\n };\n\n \n\n sendRTOOmniture(1);\n\n\n document.getElementById(\"z1-rto-div\").onclick = function(e){\n //console.log(\"Event...\",e)\n e.stopPropagation();\n\n //console.log('Elemtn Id ',e.toElement.id);\n\n if(e.toElement.id == 'discliamer_href')\n {\n window.open(\n document.getElementById(\"discliamer_href\").href,\n '_blank' // <- This is what makes it open in a new window.\n );\n }\n //e.preventDefault();\n return false;\n };\n\n\n\n\n }\n\n\n function getDayLightOffset()\n {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth()+1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow; \n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n \n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n\n function checkForLocalRTO()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n var e = JSON.parse(existingSupc);\n\n var offerExpiry = e.offerExpiry;\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n console.log(e.offerExpiry+\" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n console.log(endTime+\" timeCheck Main: \" + currentTime);\n\n var timeCheck = endTime-currentTime;\n\n if(timeCheck > 0)\n {\n if(e.is_redeemed != true)\n {\n var expiryInMinutes = Math.ceil((timeCheck)/(60));\n\n e.offerDuration = expiryInMinutes;\n\n showRTOBanner(e); \n\n\n if(getUrlParameter('redeemCoupon') == 'true')\n {\n document.getElementById(\"btn_addoffer\").click(); \n }\n }\n \n\n\n }\n else\n {\n return false;\n }\n \n\n \n console.log(\" timeCheck: \" + timeCheck);\n\n return true;\n\n\n }\n\n return false;\n }\n\n\n\nfunction fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n}\n\n\nisSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n\nif (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n}\n\n\n\n if(checkForLocalRTO() == true)\n {\n return;\n }\n\n localStorage.setItem('z1_supc',null);\n\n console.log(\"RTO Shopping cart END\");\n\n}\ncatch(err)\n{\n console.log(\"[Zineone] Error in RTO Offers Tag: WebStore Z1 tag. \", err);\n}\n\n","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"shopping_cart"}},{"tagName":"RTO Offers","actionType":"z1script","script":"/*Changes done for IE\nA. function declaration like, var abc = function() won't work in IE if function is used first and then declared and defined. Please take below precaution before using it:\n 1. If you want to use function declaration like, var abc = function(), first declare it and then use it\n 2. Use normal function declaration like, function abc(). you can declare function anywhere in the page and use it before or after declaration. It will work on all the browsers.\nB. Do not use multiline strings, also call as 'Template String'. Template Strings are demarked by a backtick(`).\n Example. var abc = `This is multiline\n comment`; //multiline comments won't work in IE\n Use simple concatenation to achieve the same like,\n var abc = \"\";\n abc += 'This is multiline';\n abc += 'comment';\nC. You can not set defalut parameter values for function in IE.\n for e.g. function abc(num = 0,str=\"hello\") //Won't work in IE\nD. You can not use arguments object ([...args] or (...args) in function) in IE.\n For e.g function abc(...args){\n console.log(\"received paramenters \", args)\n } // Won't work in IE\nE. 'append' function won't work in IE. You can use 'appendChild' function to achieve the same functionality.\nF. 'prepend' function won't work IE. Try to use 'insertBefore' function to achieve the same functionality.\nG. new Event() function won't work in IE. You can use new CustomEvent() function to achieve the same functionality.\nH. Arrow functions (=>) won't work in IE\n*/\n\nvar debugScr = true;\ntry {\n\n /*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if ( !(cust_id == \"3000000030411692\" || cust_id == \"3000000126553504\") ) return;*/\n // var localVariable = localStorage.getItem('z1_rto_ui_v2');\n\n // if(!localVariable || localVariable == null || localVariable == 'null' || localVariable == undefined || localVariable == \"undefined\")\n // {\n // return;\n // }\n\n console.log(\"RTO offers START\");\n console.log('This is on the page load');\n\n\n function fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n }\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n \n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n console.log('Final HTML '+InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function(){\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n\n sendRTOOmniture(2);\n\n }\n\n };\n\n\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n\n function sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\n //Case 1: Display Omniture \n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|HP|';\n sendDisEventToC3(\"HP\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n }\n\n \n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n function formatAMPM(date) {\n var hours = date.getHours();\n var minutes = date.getMinutes();\n var ampm = hours >= 12 ? 'pm' : 'am';\n hours = hours % 12;\n hours = hours ? hours : 12; // the hour '0' should be '12'\n minutes = minutes < 10 ? '0'+minutes : minutes;\n var strTime = hours + ':' + minutes + ' ' + ampm;\n return strTime;\n }\n\n function showRTOBanner(e)\n {\n console.log(\"[ZineOne] RTO Offers tag running\");\n if (e.is_copied == 'true') return;\n // Style string for RTO\n var style = '.popupPromoText {font-size: 1.85em;margin-bottom: 5px;}.z1_b_container_kohlsbannertoparrow_rto {font-family: \\'Gotham 5r\\';position: fixed;padding: 0px;z-index: 1000;background: transperant;transition: all 1s ease-in;-webkit-animation: fadein 2s;/* Safari, Chrome and Opera > 12.1 */-moz-animation: fadein 2s;/* Firefox < 16 */-ms-animation: fadein 2s;/* Internet Explorer */-o-animation: fadein 2s;/* Opera < 12.1 */animation: fadein 2s; { z1_position_val}}@keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Firefox < 16 */@-moz-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Safari, Chrome and Opera > 12.1 */@-webkit-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Internet Explorer */@-ms-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}/* Opera < 12.1 */@-o-keyframes fadein {from { opacity: 0;}to { opacity: 1;}}.arrow_box {position: absolute;text-align: center;left: 50%;transform: translate(-50%, 100%);bottom: -20px;background: #ffffff;border: 1px solid #bfbfbf;padding: 1rem;border-radius: 0.6rem;width: 238px;-webkit-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);-moz-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);}.arrow_box:after,.arrow_box:before {content: \" \";position: absolute;}.arrow_box:after {border-color: rgba(255, 255, 255, 0);border-bottom-color: #ffffff;border-width: 20px;margin-left: -20px;}.arrow_box:before {width: 22px;height: 22px;background: #ffffff;z-index: 100;transform: translate(-50%, -50%) rotate(45deg);top: 1px;left: 50%;box-shadow: -6px -6px 5px 1px #999;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_box_style {position: relative;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 {padding-left: 0px !important;margin-left: 0px;min-width: none;max-width: none;align-self: center;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 img {min-width: 64px;max-width: 64px;min-height: 64px;max-height: 64px;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 {padding: 0 10px;font-size: 0.9em !important;line-height: 1.5;}.z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 .titleText {background: url(\\'https://d2p4r375zfkzm8.cloudfront.net/zb-design-com/arrowdown3.png\\') no-repeat 0 2px;font-weight: bold;color: #000;font-size: 1.08em;padding: 0px 0 3px 20px;line-height: 1.4;}.z1_b_container_kohlsbannertoparrow_rto .closeBtn {cursor: pointer;position: absolute;right: 3px;top: 8px;width: 20px;height: 20px;margin: 0;padding: 0;font-size: 19px;font-family: \\'Gotham 4r\\';}.z1_b_container_kohlsbannertoparrow_rto .closeBtn img {border-bottom-left-radius: 50%;border-top-left-radius: 50%;border-bottom-right-radius: 50%;border-top-right-radius: 50%;height: 13px;width: 13px;opacity: 1;}.z1_b_container_kohlsbannertoparrow_rto .offerPrice {font-size: 1.3em;color: #e8342c;padding-right: 8px;}.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .todaytext {font-size: 1.5em;color: #3a3a3a;font-weight: 400;margin: 5px 0px;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto #offerDuration,.z1_b_container_kohlsbannertoparrow_rto .offerDuration {font-weight: bold;font-size: 24px;}.z1_b_container_kohlsbannertoparrow_rto .todaytext div#offerDurationUnits {display: flex;flex-direction: column;text-align: left;font-size: 0.8em;}.z1_b_container_kohlsbannertoparrow_rto .savetext_row {padding: 0.6rem 0;}.z1_b_container_kohlsbannertoparrow_rto .cupontext {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.07;letter-spacing: -0.4px;text-align: center;color: #000000;margin: 20px;}.z1_b_container_kohlsbannertoparrow_rto .cupontext span {font-weight: bold;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer {background: #005553;text-transform: uppercase;color: #060606;padding: 0.40rem 1.85rem;border-radius: 2.2px;text-decoration: none;margin: 12px auto;letter-spacing: 1px;font-size: 13px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.6;letter-spacing: 0.5px;text-align: center;color: #ffffff;width: 138px;height: 31px;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy {content: \"Copy Offer\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover span {display: none;}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover:before {/* background:#d2e2d3; color: #005553; */content: \"Click to Copy\";}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied:before {content: \"Copied\"}.z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied {background-color: #d2e2d3;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link {margin-top: 25px;font-size: 12px;font-weight: normal;font-style: normal;font-stretch: normal;line-height: 0.92;letter-spacing: normal;text-align: center;color: #444444;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {text-decoration: underline;color: #969696;font-size: 0.8rem;line-height: 1.2;}.z1_b_container_kohlsbannertoparrow_rto .bottom_link a:hover {color: #333;}.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.47;letter-spacing: normal;text-align: center;color: #005553;}.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 37.1px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 0.49;letter-spacing: normal;text-align: center;color: #005553;margin: 20px 0;display: flex;justify-content: center;align-items: center;}.z1_b_container_kohlsbannertoparrow_rto .treatText {font-size: 17px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.z1_b_container_kohlsbannertoparrow_rto .treatTextNew {font-size: 1.2em;margin-bottom: 10px;color: #000;display: none;}.z1_b_container_kohlsbannertoparrow_rto .saveCont.saveMsg {margin-top: 8px;}.z1_b_container_kohlsbannertoparrow_rto .uptillTime {font-weight: 900;}.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 2em;}.treatTextLatest {font-size: 14px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #222222;}.btn_offer_container {margin: 25px;}.z1-rto-dollar_reward {font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #005553;margin-bottom: 10px;}.z1-rto-dollar_reward_content {display: flex;flex-wrap: wrap;justify-content: center;}.z1-rto-dollar-text {font-size: 34.2px;margin-top: auto;width: 20px;height: 25px;margin-bottom: auto;}.z1-rto-dollar-text-amount {font-size: 68px;height: 68px;letter-spacing: -3px;}.z1-rto-dollar-text-dOff-outer {margin-top: 15px;margin-bottom: auto;height: 25px;}.z1-rto-dollar-text-dOff-off {font-size: 16px;margin-left: -26px;position: relative;top: 4px;}.z1-rto-dollar-text-dOff-off-amount {font-size: 38px;position: relative;top: -4px;left: -5px;text-shadow: -1px 1px 0 #fff, 1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;}.z1-rto-dollar-text-dOff-off-miniDollar {height: -1px;font-size: 23px;position: relative;top: -9px;}.z1-rto-dollar-text-dOff-off-miniDollarAmount {letter-spacing: -1px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty {background-color: #e9f4cc;}.loyalty .usernameText {color: #208033;}.loyalty .saveMsg {color: #208033;}.loyalty .offerText {color: #208033;}.loyalty #rtoOfferCode {color: #208033;}.loyalty .z1-rto-dollar_reward_content {color: #208033;}.loyalty .btn_addoffer {background: #208033;}.loyalty.arrow_box:after {border-bottom-color: #208033;}.loyalty.arrow_box:before {background: #208033;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .bottom_link a {color: #444444;}.loyalty-cont.disable {display: none}.loyalty-cont.enable {display: block}.loyalty-cont {background-color: #208033;position: relative;top: -17px;left: -17px;width: 272px;height: 60px;border-radius: 0.6em 0.6em 0 0;color: #fff;}.loyalty-cont .heading-1 {padding-top: 15px;font-size: 16px;}.loyalty-cont .heading-2 {padding-top: 8px;font-size: 12px;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .closeBtn {z-index: 1;color: #fff;}.z1_b_container_kohlsbannertoparrow_rto.loyalty .loyalty-cont.disable {display: block;}.element_v2 {display: none;}.ui_v2 .element_v1 {display: none;}.ui_v2 .element_v2 {display: block;}#v2-take {position: absolute;left: 42px;top: 85px;}.ui_v2 .z1-rto-dollar-text {font-size: 36.9px;height: 5px;}.ui_v2 .z1-rto-dollar-text-amount {font-size: 82px;padding: 5px;}.ui_v2 {font-family: \\'Gotham 5r\\';}.ui_v2 .z1-rto-dollar-text-dOff-off {font-size: 25.6px;margin-left: 0px;top: 45px;font-weight: bold;}.ui_v2 .z1-rto-dollar_reward {margin-top: 5px;}.ui_v2 .treatText {margin-top: 25px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .treatText {margin-top: 15px;font-size: 16px;color: #000;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .offerDuration {color: #000;font-size: 20px;margin-top: 5px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-weight: normal;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .cupontext {color: #005553;font-size: 15px;}.ui_v2.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {color: #444444;}.ui_v2.dollar_fix .z1-rto-dollar-text-dOff-off {top: 20px;}.ui_v2.dollar_fix #v2-take {top: 70px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {margin: 30px 0;margin-bottom: 25px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue {font-size: 89.7px;}.ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText {font-size: 40.4px;}';\n\n console.log('Before RTO Style');\n\n appendStyle(style);\n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n\n domstr_val = '<div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\\'offerText\\'>'+dolStr+'<span id=\\'rtoOfferValue\\' class=\\'rtoOfferValue\\'></span><span class=\"z1-rto-dollar-text-dOff-off element_v2\">off</span>'+'</div>';\n\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\"; \n\n domstr_val = '<div class=\\'offerText\\'>'+'<span id=\\'rtoOfferValue\\' class=\\'rtoOfferValue\\'></span>'+pctStr+'</div>'; \n } \n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = '<div class=\"z1-rto-dollar_reward\"><div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class=\"z1-rto-dollar_reward_content\"><div class=\"z1-rto-dollar-text\">$</div><div id=\\'rtoOfferValue\\' class=\"z1-rto-dollar-text-amount\"></div><div class=\"z1-rto-dollar-text-dOff-outer\"><span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount element_v1\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">'+e.offThres+'</span></span></div></div></div>';\n }\n\n\n var domstr = '<div data-zineone-properties=\"modal:true;container-class:z1_b_container_kohlsbannertoparrow_rto;\" id=\"z1-rto-div\" class=\"z1_b_container_kohlsbannertoparrow_rto arrow_box\"><div class=\"closeBtn\" onclick=\"var el=document.getElementById(\\'z1-rto-div\\');el.innerHTML=\\'\\';el.parentNode.removeChild(el);\">x</div><div class=\"z1_b_c1\"><div class=\\'loyalty-cont disable\\'><div class=\\'heading-1\\'>KOHL’S REWARDS®</div><div class=\\'heading-2\\'>MEMBER EXCLUSIVE</div></div><div><span class=\"usernameText\">Hi, </span><span class=\\'saveMsg element_v1\\'> save</span><div class=\\'saveMsg element_v2\\'>your cart looks great!</div></div>' + domstr_val +'<div class=\\'treatText element_v1\\'>in the next <span id=\\'offerDuration\\'></span> minutes.</div><div class=\\'saveMsg element_v2\\'>the items in your cart!</div><div class=\\'treatTextNew\\'>Valid until <span id=\\'uptillTime\\' class=\\'uptillTime\\'></span></div><div class=\\'treatTextLatest element_v1\\'>(Go ahead, treat yourself!)</div><div class=\\'element_v2\\'><div class=\\'treatText\\'>Check out in the next</div><div class=\\'offerDuration\\'><span id=\\'offerDurationv2\\'></span> minutes.</div></div><div class=\"cupontext\">PROMO CODE: <span id=\\'rtoOfferCode\\'></span></div><div class=\"btn_offer_container\"><a class=\"btn_addoffer\"><span id=\\'btn_addoffer\\'></span></a></div><div class=\"bottom_link\"><a id=\\'discliamer_href\\' href=\"#\" target=\\'_default\\'>details & exclusions</a></div><input type=\"text\" id=\"textCopy\" style=\\'opacity:0;pointer-events:none\\' /></div></div>';\n\n \n\n var t = document.createRange().createContextualFragment(domstr);\n\n console.log('Before RTO Z1 Widget');\n\n document.getElementById('z1widget').appendChild(t);\n\n\n /*document.getElementById('rtoOfferValue').append(e.offerValue);\n document.getElementById('rtoOfferCode').append(e.offerCode);\n document.getElementById('textCopy').value = e.offerCode; \n document.getElementById('offerDuration').append(e.offerDuration);\n\n document.getElementById('offerDurationv2').append(e.offerDuration);*/\n document.getElementById('rtoOfferValue').innerHTML= e.offerValue;\n document.getElementById('rtoOfferCode').innerHTML= e.offerCode;\n document.getElementById('textCopy').value = e.offerCode; \n document.getElementById('offerDuration').innerHTML= e.offerDuration;\n\n document.getElementById('offerDurationv2').innerHTML= e.offerDuration;\n\n \n\n document.getElementById('discliamer_href').href = e.disclaimer;\n\n\n var uptillTime = new Date();\n uptillTime.setMinutes(uptillTime.getMinutes() + Number(e.offerDuration));\n\n var uptillTimeStr = formatAMPM(uptillTime);\n\n //document.getElementById('uptillTime').append(uptillTimeStr + '.');\n document.getElementById('uptillTime').innerHTML = uptillTimeStr + '.';\n\n \n if(document.getElementsByClassName('first-name')[0] && document.getElementsByClassName('first-name')[0].innerText.toLowerCase()!=\"account\")\n {\n document.getElementsByClassName('usernameText')[0].innerText = document.getElementsByClassName('first-name')[0].innerText + ','; \n }\n else\n {\n document.getElementsByClassName('saveMsg')[0].innerText = \"Save\";\n }\n\n\n if(e.loyaltyCx == true)\n {\n document.getElementById('z1-rto-div').classList.add('loyalty');\n }\n\n if(e.ui_version && e.ui_version == 2)\n {\n document.getElementById('z1-rto-div').classList.add('ui_v2');\n document.getElementById('z1-rto-div').classList.add(e.offType.toLowerCase());\n }\n\n if(e.cta == \"COPY\")\n {\n document.getElementById('btn_addoffer').innerText = \"COPY OFFER\";\n document.getElementsByClassName('btn_addoffer')[0].classList.add('copy');\n }\n\n if(e.cta == \"ADD\" || e.cta == \"WALLET\")\n {\n document.getElementById('btn_addoffer').innerText = \"ADD OFFER\";\n }\n\n\n document.getElementsByClassName('btn_addoffer')[0].onclick = function() {\n if(e.cta == 'COPY')\n {\n\n var copyTextField = document.getElementById('textCopy');\n copyTextField.select();\n\n var copied = document.execCommand (\"copy\");\n\n console.log('Got Copied Status '+copied);\n \n document.getElementsByClassName('btn_addoffer')[0].classList.add('copied');\n document.getElementById('btn_addoffer').innerText = \"\";\n\n e.is_copied = 'true';\n localStorage.setItem('z1_supc',JSON.stringify(e));\n\n return;\n } \n\n var urlToGo = '/checkout/shopping_cart.jsp?redeemCoupon=true';\n\n\n if(e.cta == 'WALLET')\n {\n if(pageData && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue)\n {\n var cartValue = parseInt(pageData.cartDetails.cartSubTotalValue);\n\n //alert('Got Cart Value '+cartValue);\n if(cartValue == 0)\n {\n urlToGo = '/wallet/my_wallet.jsp#offers';\n }\n\n } \n }\n\n\n location.href=urlToGo;\n\n };\n\n\n sendRTOOmniture(1);\n\n\n document.getElementById(\"z1-rto-div\").onclick = function(e){\n //console.log(\"Event...\",e)\n e.stopPropagation();\n\n //console.log('Elemtn Id ',e.toElement.id);\n\n if(e.toElement.id == 'discliamer_href')\n {\n window.open(\n document.getElementById(\"discliamer_href\").href,\n '_blank' // <- This is what makes it open in a new window.\n );\n }\n //e.preventDefault();\n return false;\n };\n\n\n }\n\n\n\n\n function getDayLightOffset()\n {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth()+1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow; \n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n \n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n\n function checkForLocalRTO()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n var e = JSON.parse(existingSupc);\n\n var offerExpiry = e.offerExpiry;\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n console.log(e.offerExpiry+\" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n console.log(endTime+\" timeCheck Main: \" + currentTime);\n\n var timeCheck = endTime-currentTime;\n\n if(timeCheck > 0)\n {\n if(e.is_redeemed != true)\n {\n\n var expiryInMinutes = Math.ceil((timeCheck)/(60));\n\n e.offerDuration = expiryInMinutes;\n\n showRTOBanner(e); \n }\n }\n else\n {\n return false;\n }\n \n\n \n console.log(\" timeCheck: \" + timeCheck);\n\n return true;\n\n\n }\n\n return false;\n }\n\n function _handleRawRTOData(e) {\n // alert('Got raw data...' + JSON.stringify(e));\n console.log('Got Raw RTO data: ' + e);\n\n if(e)\n {\n e = JSON.parse(e);\n\n if(e.rtoOfferData)\n {\n e = e.rtoOfferData;\n\n localStorage.setItem('z1_supc',JSON.stringify(e));\n\n showRTOBanner(e);\n }\n\n\n fireOmniture(e);\n }\n \n \n }\n\n\n try {\n //var z1Widgets = ZineOne.getZ1Widget();\n //z1Widgets.registerWidgetHandler(\"raw\", _handleRawRTOData);\n } catch (e) {\n console.log('Could not register handler for Raw RTO Data.');\n }\n\n if(getUrlParameter('redeemCoupon') == 'true')\n {\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n }\n\n\n if(checkForLocalRTO() == true)\n {\n return;\n }\n\n localStorage.setItem('z1_supc',null);\n\n\n var evtName = '_ws_rto_offers';\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n if(isSoftLoggedIn == 'true' || isLoggedIn == 'true')\n {\n //ZineOne.pushEvent(evtName, {});\n }\n console.log(\"RTO offers END\");\n}\ncatch(e)\n{\n if (debugScr) console.log(\"[Zineone] Error in Rto New UI Tag: WebStore Z1 tag. \" + e);\n}\n\n","eventName":"load","pageSelector":{"type":"pgName","condition":"equals","val":"/"}},{"tagName":"RTO Order Review","actionType":"z1script","script":"/*Changes done for IE\nA. function declaration like, var abc = function() won't work in IE if function is used first and then declared and defined. Please take below precaution before using it:\n 1. If you want to use function declaration like, var abc = function(), first declare it and then use it\n 2. Use normal function declaration like, function abc(). you can declare function anywhere in the page and use it before or after declaration. It will work on all the browsers.\nB. Do not use multiline strings, also call as 'Template String'. Template Strings are demarked by a backtick(`).\n Example. var abc = `This is multiline\n comment`; //multiline comments won't work in IE\n Use simple concatenation to achieve the same like,\n var abc = \"\";\n abc += 'This is multiline';\n abc += 'comment';\nC. You can not set defalut parameter values for function in IE.\n for e.g. function abc(num = 0,str=\"hello\") //Won't work in IE\nD. You can not use arguments object ([...args] or (...args) in function) in IE.\n For e.g function abc(...args){\n console.log(\"received paramenters \", args)\n } // Won't work in IE\nE. 'append' function won't work in IE. You can use 'appendChild' function to achieve the same functionality.\nF. 'prepend' function won't work IE. Try to use 'insertBefore' function to achieve the same functionality.\nG. new Event() function won't work in IE. You can use new CustomEvent() function to achieve the same functionality.\nH. Arrow functions (=>) won't work in IE\n*/\n\nvar debugScr = true;\ntry {\n\n /*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if ( !(cust_id == \"3000000030411692\" || cust_id == \"3000000126553504\") ) return;*/\n\n // var localVariable = localStorage.getItem('z1_rto_ui_v2');\n\n // if(!localVariable || localVariable == null || localVariable == 'null' || localVariable == undefined || localVariable == \"undefined\")\n // {\n // return;\n // }\n console.log(\"RTO Order Review START\");\n\n var evtName = null;\n\n var isLoggedIn = \"\";\n\n var isSoftLoggedIn = \"\";\n\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n };\n\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n\n function getPresentVector(isRto, rtoEventType) {\n try {\n\n if (debugScr) console.log('getPresentVector');\n\n var itemsInBag = 0;\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = pageData.cartDetails.cartItems;\n if(isValid(cartData))\n {\n var cartInfo = (cartData);\n\n for (var i = 0; i < cartInfo.length; i++) {\n itemsInBag = itemsInBag + Number(cartInfo[i].quantity);\n\n cartValue = cartValue + Number(cartInfo[i].quantity)*Number(cartInfo[i].finalPrice);\n\n }\n }\n else\n {\n if(getCookie('VisitorBagTotals').toString().length != 0)\n {\n cartValue = -1;\n\n isJsonNull = true;\n\n }\n }\n\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n console.log(cartValue + ' Before Present Vector ', evtName);\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n console.log('Present Vector 1', presentVector);\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n\n if(isRto == true)\n {\n presentVector.event = eventCodes[\"_ws_rto\"];\n\n presentVector.rto_data = 'A';\n\n }\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ', ie);\n }\n }\n\n\n\n function updateUserVectors(isRto, rtoEventType) {\n try {\n\n evtName = '_ws_rto';\n if (debugScr) console.log('Into updateUserVectors');\n var presentVector = getPresentVector(isRto, rtoEventType);\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n if (debugScr) console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try {\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n var cartDump = fetchCartDump();\n\n if (validateForNotNull(cartDump)) {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for (var k = 0; k < cartKeys.length; k++) {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n if (validateForNotNull(newUserVectors)) {\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n } catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'webstoresendevent ' + evtName;\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n if (debugScr) console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n if (debugScr) console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue = cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge)) {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n } else {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if (isJsonNull) {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = pgName;\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n if (debugScr) console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ', ie);\n }\n }\n\n function updateFeatures() {\n\n if (debugScr) console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n var rtoTimeRemaining = 0;\n\n console.log('This is on RTO Review Page');\n\n\n function fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n }\n\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n function appendJs(jsStr)\n {\n var jsElement = document.createElement('script');\n\n var t = document.createTextNode(jsStr);\n jsElement.appendChild(t);\n\n document.getElementsByTagName(\"head\")[0].appendChild(jsElement);\n \n }\n\n\n function getDayLightOffset()\n {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth()+1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow; \n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n \n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n\n\n function updateSupcDetails()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n if(existingSupc.is_redeemed == true)\n {\n if(document.getElementById(\"show_offer_status\"))\n {\n document.getElementById(\"show_offer_status\").innerHTML = \"\";\n document.getElementById(\"link_applynow\").style.display = \"none\";\n document.getElementById(\"link_applynow2\").style.display = \"none\";\n }\n \n //document.getElementById('reviewApplyNow').innerHTML = 'Applied';\n //document.getElementById('reviewApplyNow').href='javascript:void(0)';\n }\n else\n {\n console.log(\"document.getElementById('reviewApplyNow')\",document.getElementById('reviewApplyNow'));\n\n if(document.getElementById('reviewApplyNow'))\n {\n document.getElementById('reviewApplyNow').text ='APPLY NOW'; \n }\n \n }\n }\n\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n \n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n console.log('Final HTML '+InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function(){\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n\n updateSupcDetails();\n\n sendRTOOmniture(2);\n\n updateUserVectors(true, null);\n\n }\n\n };\n\n }\n\n\n function populateUsername()\n {\n\n\n var usernameText = document.getElementById('usernameText');\n\n console.log(trJsonData.userData.firstName+' populateUsername '+usernameText);\n\n if(trJsonData.userData.firstName)\n {\n document.getElementById('usernameText').innerHTML = trJsonData.userData.firstName +', save';\n\t\t\tdocument.getElementById('usernameText2').innerHTML = trJsonData.userData.firstName+' '+trJsonData.userData.lastName+',';\n \t\n }\n else\n {\n document.getElementById('usernameText').innerHTML = 'Save';\n }\n \n\n console.log('usernameText '+document.getElementById('usernameText').innerHTML);\n \n }\n\n\n\n function showRTOReviewSection(e)\n {\n // Style string for RTO\n var style = '.popupPromoText {font-size: 1.85em;margin-bottom: 5px;}.z1_orderreview_container {background-color: #d5e1d4;/*display: flex;align-content: space-between;align-items: center;*/height: 85px;}.z1_orderreview_container {font-family: \\'Gotham 5r\\';border: 1px solid #717171;padding: 0.5rem 0.2rem;margin-bottom: 0.6rem;/*display: -webkit-flex;display: flex;justify-content: space-between;*/color: #454545;/*align-content: space-between;align-items: center;*/}#username-container {font-size: 17px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: 1.06;letter-spacing: normal;color: #005553;text-align: center;}.z1_orderreview_container #price-container {flex-shrink: 0;display: flex;align-items: center;}.z1_orderreview_container #price-container .priceTag {margin-top: 8px;font-size: 28.4px;font-weight: bold;line-height: 0.49;color: #005553;text-align: center;font-style: normal;font-stretch: normal;}.z1_orderreview_container #price-container #rtoOfferValue {font-size: 63.2px;font-weight: 700;letter-spacing: -4.4px;color: #005553;display: block;}#message-container {font-size: 13px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1;letter-spacing: normal;color: #222222;width: 76px;margin: auto;}#time-container {display: flex;text-align: center;font-size: 9.7px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;color: #222222;margin: auto;}#show_min,#show_sec {width: 61px;height: 39px;background-color: #005553;border: 1px solid #e3e3e3;margin: 0.3rem;font-size: 29.9px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;color: #d2e2d3;text-align: center;box-sizing: border-box;}#show_min,#show_sec {width: 61px;height: 39px;background-color: #005553;border: 1px solid #e3e3e3;margin: 0.3rem;font-size: 29.9px;font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;color: #d2e2d3;text-align: center;box-sizing: border-box;}#promo-container {width: 60%;}/*.z1_orderreview_container #link_applynow {text-transform: uppercase;text-align: center;padding-top: 0.3rem;font-family: \\'Gotham 5r\\';font-size: 13px;font-weight: normal;}.z1_orderreview_container #link_applynow a {text-decoration: underline;color: #000;font-weight: 700;}*/.z1_orderreview_container #show_offer_status {font-family: \\'Gotham 5r\\';font-size: 13px;text-transform: uppercase;text-decoration: none;color: #000;font-weight: normal;text-align: center;}.z1_orderreview_container .promocodecontainer {text-transform: uppercase;/*padding: 0.7rem 0;*/text-align: center;margin: 15px auto;}.z1_orderreview_container .promocodecontainer h4 {font-family: \\'Gotham 5r\\';font-size: 13px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.08;letter-spacing: -0.4px;text-align: center;color: #000000;}#rtoOfferCode {font-weight: bold;color: #005553;}.z1_orderreview_container .promocodecontainer h5 {font-family: \\'Gotham 5r\\';font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.08;letter-spacing: -0.4px;text-align: center;color: #005553;font-size: 13px;}.z1_orderreview_container>* {/*margin: 10px;*/}#z1-rto-new-outerDiv {display: flex;flex-direction: row;justify-content: space-evenly;}.z1-rto-dollar_reward {font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: normal;text-align: center;color: #005553;position: relative;top: -8px;}.z1-rto-dollar_reward_content {display: flex;flex-wrap: wrap;}.z1-rto-dollar-text {font-size: 25.2px;width: 14px;height: 36px;position: relative;top: 27px;}.z1-rto-dollar-text-amount {font-size: 60px;height: 68px;letter-spacing: -3px;}.z1-rto-dollar-text-dOff-outer {margin-top: 21px;margin-bottom: auto;height: 20px;}.z1-rto-dollar-text-dOff-off {font-size: 15px;margin-left: -26px;position: relative;top: 1px;}.z1-rto-dollar-text-dOff-off-amount {font-size: 32px;position: relative;top: -4px;left: -6px;text-shadow: -1px 1px 0 #d5e1d4, 1px 1px 0 #d5e1d4, 1px -1px 0 #d5e1d4, -1px -1px 0 #d5e1d4;}.z1-rto-dollar-text-dOff-off-miniDollar {height: -1px;font-size: 20px;position: relative;top: -9px;}.z1-rto-dollar-text-dOff-off-miniDollarAmount {letter-spacing: -1px;top: -2px;left: -1px;position: relative;}#z1-tro-new-promoCodeText {font-size: 13px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1.08;letter-spacing: -0.4px;text-align: center;color: #005553;font-weight: bold;}#z1-rto-new-addOfferContainer {text-align: center;margin: auto;}.btn_offer_container {margin: 25px;}#z1-rto-new-addOfferContainer .bottom_link {text-align: center;margin-top: 3px;}#z1-rto-new-addOfferContainer .bottom_link a {font-size: 11px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1;letter-spacing: normal;text-align: center;color: #000000;}#link_applynow,#link_applynow2 {background: #005553;text-transform: uppercase;border-radius: 2.2px;text-decoration: none;letter-spacing: 1px;font-size: 13px;font-weight: bold;font-style: normal;font-stretch: normal;text-align: center;width: 104px;height: 31px;color: white;display: flex;align-items: center;justify-content: center;margin: 0 auto;}/* start old */.tag_min,.tag_sec {font-family: \\'Gotham 5r\\';font-size: 11px;text-transform: uppercase;text-align: center;color: #454545;margin-top: 0.3rem;font-weight: 700;}.loyalty #username-container {text-align: left;color: #208033;}.loyalty #show_min,.loyalty #show_sec {background-color: #208033;}.loyalty #price-container .priceTag {color: #208033;}.loyalty #price-container #rtoOfferValue {color: #208033;}.loyalty .promocodecontainer #z1-tro-new-promoCodeText {color: #208033;}.loyalty .promocodecontainer #rtoOfferCode {color: #208033;}.loyalty .btn_addoffer {background: #208033;}.loyalty #link_applynow {background: #208033;}.loyalty #link_applynow2 {background: #208033;}.loyalty .z1-rto-dollar_reward {color: #1f8033;}.loyalty-cont.disable {display: none}.loyalty-cont.enable {display: block}.loyalty-cont {text-align: center;background-color: #208033;height: 20px;position: relative;top: -8px;left: -3px;width: 598px;padding-top: 7px;color: #fff;font-size: 14px;}.z1_orderreview_container.loyalty {height: 115px;}.loyalty .heading-2 {font-weight: lighter;font-family: \\'Gotham 4r\\';}.z1_orderreview_container.loyalty .loyalty-cont.disable {display: block;}.z1_orderreview_container_2 {background-color: #d5e1d4;display: flex;justify-content: space-between;align-items: center;height: 85px;}.z1_orderreview_container_2 {font-family: \\'Gotham 5r\\';border: 1px solid #717171;padding: 10px 10px;margin-bottom: 0.6rem;color: #454545;}#first-div {display: flex;flex-direction: column;justify-content: space-around;}#second-div {display: flex;flex-direction: column;justify-content: space-around;text-align: center;}#third-div {display: flex;flex-direction: column;justify-content: space-around;}.usernameText2 {width: 200px;height: 15px;font-size: 14px;font-weight: 500;font-stretch: normal;font-style: normal;line-height: 1.14;letter-spacing: normal;text-align: center;color: #005553;}.price-container-2 {width: 200px;height: 38px;font-size: 28px;font-weight: bold;font-stretch: normal;font-style: normal;line-height: 1.36;letter-spacing: normal;color: #005553;text-align: center;margin-top: 5px;}.price-container-2-msg {width: 200px;height: 34px;font-size: 14px;font-weight: bold;font-stretch: normal;font-style: normal;letter-spacing: normal;color: #005553;text-align: center;}.show_min_msg {width: 206px;height: 17px;font-size: 15px;font-weight: 500;font-stretch: normal;font-style: normal;letter-spacing: normal;color: #222222;}.show_min_2 {font-size: 19px;font-weight: bold;color: #222222;}.promocodecontainer-2 {height: 30px;font-size: 13px;font-weight: bold;font-stretch: normal;font-style: normal;line-height: 1.31;letter-spacing: -0.4px;text-align: center;color: #000000;margin-top: 15px;}.element_v2 {display: none;}.ui_v2 .element_v1 {display: none;}.ui_v2 .element_v2 {display: block;}#username-container-2 {margin-top: 20px;}.ui_v2 .bottom_link {margin-top: 10px;}#z1-rto-new-addOfferContainer-2 .bottom_link a {font-size: 11px;font-weight: 500;font-style: normal;font-stretch: normal;line-height: 1;letter-spacing: normal;text-align: center;color: #000000;}#rtoOfferValue2 {margin-left: -8px;}.ui_v2 .show_min_msg {height: 20px;}';\n\n console.log('Before RTO Style');\n\n appendStyle(style);\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n console.log(e.offerExpiry+\" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n console.log(endTime+\" timeCheck Main: \" + currentTime);\n\n rtoTimeRemaining = (endTime-currentTime);\n\n if(rtoTimeRemaining <= 0)\n {\n return;\n }\n\n rtoTimeRemaining = rtoTimeRemaining*1000;\n\n var expiryInMinutes = Math.ceil((endTime-currentTime)/(60));\n\n e.offerDuration = expiryInMinutes;\n\n\n console.log(\" rtoTimeRemaining: \" + rtoTimeRemaining);\n\n var rtoTimejsStr = 'var rtoTimeRemaining = '+rtoTimeRemaining;\n\n appendJs(rtoTimejsStr);\n\n\n /*var javscriptStr = `\n // Set the TIME we're counting down from\n //var distance = 1*30*1000; //12min\n\n // Update the count down every 1 second\n var x = setInterval(function() {\n\n // Time calculations for days, hours, minutes and seconds\n var days = Math.floor(rtoTimeRemaining / (1000 * 60 * 60 * 24));\n var hours = Math.floor((rtoTimeRemaining % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\n var minutes = Math.floor((rtoTimeRemaining % (1000 * 60 * 60)) / (1000 * 60));\n var seconds = Math.floor((rtoTimeRemaining % (1000 * 60)) / 1000);\n seconds = (\"0\" + seconds).slice(-2);\n minutes = (\"0\" + minutes).slice(-2);\n\n // Output the result in an element with id=\"show_min and show_sec\"\n\n if(document.getElementById(\"show_min\"))\n {\n document.getElementById(\"show_min\").innerHTML = minutes;\n document.getElementById(\"show_sec\").innerHTML = seconds;\n }\n \n\n // If the count down is over, write some text \n if (rtoTimeRemaining <= 0) {\n clearInterval(x);\n //document.getElementById(\"timercontainer\").style.display = \"none\";\n document.getElementById(\"link_applynow\").style.display = \"none\"; \n document.getElementById(\"show_offer_status\").innerHTML = \"EXPIRED\";\n\n return;\n }\n rtoTimeRemaining = rtoTimeRemaining - 1000;\n }, 1000);\n `;*/\n var javscriptStr ='var x = setInterval(function() { var days = Math.floor(rtoTimeRemaining / (1000 * 60 * 60 * 24)); var hours = Math.floor((rtoTimeRemaining % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); var minutes = Math.floor((rtoTimeRemaining % (1000 * 60 * 60)) / (1000 * 60)); var seconds = Math.floor((rtoTimeRemaining % (1000 * 60)) / 1000); seconds = (\"0\" + seconds).slice(-2); minutes = (\"0\" + minutes).slice(-2); if (document.getElementById(\"show_min\")) { document.getElementById(\"show_min\").innerHTML = minutes; document.getElementById(\"show_sec\").innerHTML = seconds; } if (rtoTimeRemaining <= 0) { clearInterval(x); document.getElementById(\"link_applynow\").style.display = \"none\"; document.getElementById(\"show_offer_status\").innerHTML = \"EXPIRED\"; return; } rtoTimeRemaining = rtoTimeRemaining - 1000;}, 1000);';\n\n appendJs(javscriptStr);\n \n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n var domstr_val_2=\"\";\n\n domstr_val = '<div id=\"price-container\"><span class=\"priceTag\">'+dolStr+'</span><span id=\"rtoOfferValue\"></span></div>';\n domstr_val_2 = '<div id=\"price-container\"><span class=\"priceTag\">Take '+dolStr+' off</span><span id=\"rtoOfferValue\"></span></div>';\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\"; \n\n domstr_val = '<div id=\"price-container\"><span id=\"rtoOfferValue\"></span><span class=\"priceTag\" style=\"margin:5px\">'+pctStr+'</span></div>'; \n } \n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = '<div class=\"z1-rto-dollar_reward\"><div class=\"z1-rto-dollar_reward_content\"><div class=\"z1-rto-dollar-text\">$</div><div class=\"z1-rto-dollar-text-amount\" id=\"rtoOfferValue\"></div><div class=\"z1-rto-dollar-text-dOff-outer\"><span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">'+e.offThres+'</span></span></div></div></div>';\n }\n\n\n var domstr = '<div class=\\'main-cont\\'><div class=\\'element_v1\\'><div class=\"z1_orderreview_container\"><div class=\\'loyalty-cont disable\\'><span class=\\'heading-1\\'>KOHL’S REWARDS®</span><span class=\\'heading-2\\'>MEMBER EXCLUSIVE</span></div><div id=\"username-container\"><div id=\"usernameText\">Hi, take</div></div><div id=\"z1-rto-new-outerDiv\">'+domstr_val+'<div id=\"message-container\">when you<br> place your<br> order in<br> the next..</div><div id=\"time-container\"><div id=\"min-container\"> <div id=\"show_min\">45</div> <div class=\"tag_min\">MINUTES</div></div><div id=\"sec-container\"> <div id=\"show_sec\">39</div> <div class=\"tag_sec\">SECONDS</div></div></div><div class=\"promocodecontainer\"><div id=\"z1-tro-new-promoCodeText\">Promo Code:</div><div id=\"rtoOfferCode\"></div></div><div id=\"z1-rto-new-addOfferContainer\"><div id=\"link_applynow\"><a id=\"reviewApplyNow\" style=\"color:white;text-decoration: none;\" href=\"#\">ADD OFFER</a></div><div id=\"show_offer_status\"></div><div class=\"bottom_link\"><a id=\"discliamer_href\" href=\"'+e.disclaimer+'\" target=\"_default\">details &amp; exclusions</a></div></div></div></div></div><div class=\\'element_v2\\'><div class=\"z1_orderreview_container_2\"><div id=\"first-div\"><div id=\"username-container-2\"><div id=\"usernameText2\" class=\"usernameText2\">Hi, take</div><div class=\\'usernameText2\\'>your cart looks great!</div></div><div id=\"price-container-2\" class=\"price-container-2\"><span class=\"priceTag\">Take '+dolStr+'</span><span id=\"rtoOfferValue2\"></span><span>off</span></div><div id=\"price-container-2-msg\" class=\"price-container-2-msg\">the items in your cart!</div></div><div id=\"second-div\"><div id=\"min-container-2\"><div id=\"show_min_msg\" class=\"show_min_msg\">Checkout in the next</div><div id=\"show_min_2\" class=\"show_min_2\"><span id=\\'offerDuration\\' class=\\'offerDuration\\'> </span> minutes.</div></div><div class=\"promocodecontainer-2\"><div id=\"z1-tro-new-promoCodeText_2\">PROMO CODE:</div><div id=\"rtoOfferCode2\"></div></div></div><div id=\"third-div\"><div id=\"z1-rto-new-addOfferContainer-2\"><div id=\"link_applynow2\"><a id=\"reviewApplyNow2\" style=\"color:white;text-decoration: none;\" href=\"#\">ADD OFFER</a></div><div id=\"show_offer_status\"></div><div class=\"bottom_link\"><a id=\"discliamer_href\" href=\"'+e.disclaimer+'\" target=\"_default\">details &amp; exclusions</a></div></div></div></div></div></div>';\n \n \n \n\n console.log('Before RTO Reiview Widget');\n\n //document.querySelector('#checkoutreview #shopping_Bag_Lpanel').insertAdjacentHTML(\"afterbegin\", domstr);\n\tdocument.querySelector('#checkoutreview #shopping_Bag_Lpanel').insertAdjacentHTML(\"afterbegin\", domstr);\n\n document.getElementById('rtoOfferValue').innerHTML =e.offerValue;\n document.getElementById('rtoOfferValue2').innerHTML =e.offerValue;\n\n document.getElementById('rtoOfferCode').innerHTML =e.offerCode;\n document.getElementById('rtoOfferCode2').innerHTML =e.offerCode;\n \n document.getElementById('offerDuration').innerHTML =e.offerDuration;\n\n if(e.loyaltyCx == true)\n {\n document.getElementsByClassName('z1_orderreview_container')[0].classList.add('loyalty');\n }\n\n if(e.ui_version && e.ui_version == 2)\n {\n document.getElementsByClassName('main-cont')[0].classList.add('ui_v2');\n document.getElementsByClassName('main-cont')[0].classList.add(e.offType.toLowerCase());\n }\n\n document.getElementById('reviewApplyNow').onclick = function(){\n\n\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function(){\n\n\n console.log(\"kohlscashapply Click \"); \n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function(){ \n\n console.log(\"Checking for Redemption Popup \"+timeCounter); \n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n console.log('Got Popup Div '+popupDiv);\n\n if(popupDiv != undefined && popupDiv != null)\n {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv,e.offerCode);\n\n return;\n }\n\n if(timeCounter > maxCounter)\n {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n };\n\n\n\n document.getElementById('reviewApplyNow2').onclick = function(){\n\n\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function(){\n\n\n console.log(\"kohlscashapply Click \"); \n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function(){ \n\n console.log(\"Checking for Redemption Popup \"+timeCounter); \n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n console.log('Got Popup Div '+popupDiv);\n\n if(popupDiv != undefined && popupDiv != null)\n {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv,e.offerCode);\n\n return;\n }\n\n if(timeCounter > maxCounter)\n {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n };\n\n\n \n\n\n \n populateUsername();\n\n updateSupcDetails();\n\n sendRTOOmniture(1);\n\n\n \n\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n\n function sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\n //Case 1: Display Omniture \n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|OR|';\n sendDisEventToC3(\"OR\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n }\n\n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n\n\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n var e = JSON.parse(existingSupc);\n showRTOReviewSection(e);\n\n return;\n }\n\n\n localStorage.setItem('z1_supc',null);\n\n\n isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n\n\n console.log(\"RTO Order Review END\");\n \n}\ncatch(e)\n{\n if (debugScr) console.log(\"[Zineone] Error in RTO Order Review Tag: WebStore Z1 tag. \" + e);\n}\n ","eventName":"load","pageSelector":{"type":"pgName","condition":"ends","val":"checkout/V2/checkout.jsp"}},{"tagName":"ws_show_stars_if_rating_above_4","actionType":"z1script","script":"try {\n var isDebugScr = false;\n var sendevt = true;\n var evtName = \"ws_products_stars\";\n var evtData = {\n \"page\": \"Cart\"\n };\n var shoppingBagItems = document.getElementsByClassName(\"shoppingBagItem\");\n var commerce_ids = \"\";\n var product_ids = \"\";\n for (let i = 0; i < shoppingBagItems.length; i++) {\n if (i == 0) {\n commerce_ids = commerce_ids + shoppingBagItems[i].getAttribute('data-commerceid');\n product_ids = product_ids + shoppingBagItems[i].getAttribute('data-skuid');\n } else {\n commerce_ids = commerce_ids + \",\" + shoppingBagItems[i].getAttribute('data-commerceid');\n product_ids = product_ids + \",\" + shoppingBagItems[i].getAttribute('data-skuid');\n }\n var parent_div = shoppingBagItems[i].getElementsByClassName(\"z1PostItem\")[0];\n if (isDebugScr) console.log(\"[zineone] parent_div...\", parent_div);\n var star_div = document.createElement(\"div\");\n star_div.setAttribute(\"id\", \"z1-star-\" + shoppingBagItems[i].getAttribute('data-skuid'));\n parent_div.append(star_div);\n }\n evtData.commerce_ids = commerce_ids;\n evtData.product_ids = product_ids;\n if (sendevt) {\n if (isDebugScr) console.log(\"[zineone] IF send event \", evtData);\n if (isDebugScr) console.log(\"[zineone] IF send event name \", evtName);\n ZineOne.pushEvent(evtName, evtData);\n if (isDebugScr) console.log(\"[zineone] ws_products_stars event pushed\");\n } else {\n if (isDebugScr) console.log(\"[zineone] ws_products_stars disabled\");\n }\n\n} catch (e) {\n console.log(\"[zineone] exception in ws_products_stars Tag=\" + e);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"checkout/shopping_cart"}},{"tagName":"ws_pdp_recommendations","actionType":"z1script","script":"var debug = false;\nvar sendevt = true;\nvar evtName = \"ws_pdp_recommendations\";\nvar evtData = {\n \"page\":\"Shopping Cart\"\n};\ntry{\n \tvar product_ids = \"\";\n //var freeShipQualificationDelta = JSON.parse(localStorage.getItem(\"persistent_bar_components_json_v1\")).shipmentInfo[0].shipmentPriceInfo.freeShipQualificationDelta;\n var freeShipQualificationDelta = trJsonData.shipmentInfo[0].shipmentPriceInfo.freeShipQualificationDelta;\n if (debug) console.log(\"[Zineone] freeShipQualificationDelta = \",freeShipQualificationDelta);\n var shoppingBagItems = document.getElementsByClassName(\"shoppingBagItem\" );\n for(let i=0;i<shoppingBagItems.length;i++){\n if (i==0){\n product_ids = product_ids + shoppingBagItems[i].getAttribute('data-productid');\n }\n else{\n \tproduct_ids = product_ids + \",\" +shoppingBagItems[i].getAttribute('data-productid');\n }\n \t}\n evtData.product_ids = product_ids;\n evtData.freeShipQualificationDelta = freeShipQualificationDelta;\n if (sendevt){\n if (debug) console.log(\"[Zineone] IF send event \", evtData);\n if (debug) console.log(\"[Zineone] IF send event name \", evtName);\n ZineOne.pushEvent(evtName, evtData);\n if (debug) console.log(\"[Zineone] ws_pdp_recommendations event pushed\");\n }\n else{\n console.log(\"[Zineone] ws_pdp_recommendations Event disabled\"); \n }\n}\ncatch (e) {\n console.log(\"[zineone] exception in ws_pdp_recommendations Tag=\" + e);\n}\n\n","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"checkout/shopping_cart"}},{"tagName":"SetMCMSecondaryKey","actionType":"z1script","script":"\nvar mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\nId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n//console.log (\" MCID - \" + Id );\n\nvar limitCustomerIds = [\"2254009728812139\",\"3000000015001846\"];\n\n\nvar localMcm = localStorage.getItem('mcm_id');\n\nif(localMcm == null)\n{\n\tZineOne.setCustomKey(\"mcid\", Id);\n\tlocalStorage.setItem('mcm_id',Id);\n}\n\n","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"RTO Wallet Apply","actionType":"z1script","script":"try {\n \t\n\tvar debugScr = true;\n \n \tconsole.log('RTO WAllet Start');\n\n \tfunction fireOmniture(z1Response) {\n\n\t //////***** whats the s.tl(this) ??? */\n\n\t if (z1Response && z1Response.prop75) {\n\t var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n\t s.tl(this, 'o', 'ZineOne Impression', {\n\t linkTrackVars: 'prop75,eVar39',\n\t prop75: z1Response.prop75,\n\t eVar39: eVar39\n\t });\n\n\t }\n\n\n\t}\n\n \tfunction getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n \tfunction sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\tfunction sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75+'C:'+existingSupc.offerCampaign+'|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|CP|';\n\n sendDisEventToC3(\"CP\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n }\n\n \n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]); \n\n var initPopupContent = document.querySelector('#fancybox-content .kas-promo_code'); \n\n var div = document.getElementById('wallet-promoText');\n\n if(div)\n {\n \tdiv.parentNode.removeChild(div);\t\n }\n\t\t\n\n var promoTextContent = '<div id=\"wallet-promoText\" style=\"font-size: 14px;text-align: left;\" class=\"popupPromoText\">Your promo code is already entered</div>';\n\n\n\n initPopupContent.parentNode.insertAdjacentHTML(\"afterend\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n initPopupContent.value = promoCode;\n\n\n var applyButton = document.querySelector('#fancybox-content .addto_wallet_btn'); \n\n\n applyButton.onclick = function(){\n\n var currentPromoCode = initPopupContent.value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n sendRTOOmniture(2);\n\n }\n\n };\n\n\n }\n\n function getDayLightOffset()\n\t {\n\t //Automatically adjust for GMT to Central Timediff based on Daylight savings\n\t //Returns number of hours Central is behind GMT\n\t //\n\t var now = new Date();\n\t //test data\n\t var test = now.getTime(); //238*24*3600000;\n\t var nowUtc = new Date(test);\n\t var month = nowUtc.getMonth()+1; //make jan=1\n\n\t if (month < 3 || month > 11) return 6; // savings=F\n\t if (month > 3 && month < 11) return 5; // savings=T\n\n\t // switch if >2nd sun in march or >1st sun in nov\n\t // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n\t var tzDiffInHours; //UTC vs Central diff in hours\n\t var day = nowUtc.getDate(); //already 1 based\n\t var dow = nowUtc.getDay(); //already sun=0\n\t var previousSunday = day - dow; \n\t if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n\t if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n\t \n\t //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n\t //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n\t return tzDiffInHours;\n\t }\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n \n function checkForLocalRTO()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n var e = JSON.parse(existingSupc);\n\n var offerExpiry = e.offerExpiry;\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n\n var timeCheck = endTime-currentTime;\n\n //console.log(\" timeCheck: \" + timeCheck);\n\n if(timeCheck > 0)\n {\n\n if(e.is_redeemed != true)\n {\n\n document.getElementsByClassName('open-addtowallet')[0].onclick = function(){\n\n \tvar timeCounter = 0;\n\t\t var maxCounter = 10;\n\t\t var timeDelay = 500;\n\n\t\t var popupCheck = setInterval(function(){ \n\n\n\t\t var popupDiv = document.querySelector('#fancybox-content .kas-promo_code');\n\n\t\t //var popupDiv = document.getElementById('promo-kcInput');\n\n\t\t console.log('Got Popup Div '+popupDiv);\n\n\t\t if(popupDiv != undefined && popupDiv != null)\n\t\t {\n\t\t clearInterval(popupCheck);\n\n\n\t\t //setTimeout(function(){ }, 500);\n\n\t\t addDataToRedemptionPopup(popupDiv,e.offerCode);\n\n\t\t return;\n\t\t }\n\n\t\t if(timeCounter > maxCounter)\n\t\t {\n\t\t clearInterval(popupCheck);\n\t\t }\n\n\t\t timeCounter++;\n\n\t\t }, timeDelay);\n\n };\n\n document.getElementsByClassName('open-addtowallet')[0].click();\n }\n }\n else\n {\n return false;\n }\n \n\n \n return true;\n\n\n }\n\n return false;\n }\n\n console.log('RTO WAllet Before Check');\n\n if(checkForLocalRTO() == true)\n {\n return;\n }\n\n localStorage.setItem('z1_supc',null);\n\n\n}\ncatch(e)\n{\n if (debugScr) console.log(\"[Zineone] Error in RTO Wallet Apply Tag: WebStore Z1 tag. \" + e);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"my_wallet.jsp"}},{"tagName":"perk_perf_tag","actionType":"z1script","script":"/*Changes done for IE\nA. function declaration like, var abc = function() won't work in IE if function is used first and then declared and defined. Please take below precaution before using it:\n 1. If you want to use function declaration like, var abc = function(), first declare it and then use it\n 2. Use normal function declaration like, function abc(). you can declare function anywhere in the page and use it before or after declaration. It will work on all the browsers.\nB. Do not use multiline strings, also call as 'Template String'. Template Strings are demarked by a backtick(`).\n Example. var abc = `This is multiline\n comment`; //multiline comments won't work in IE\n Use simple concatenation to achieve the same like,\n var abc = \"\";\n abc += 'This is multiline';\n abc += 'comment';\nC. You can not set defalut parameter values for function in IE.\n for e.g. function abc(num = 0,str=\"hello\") //Won't work in IE\nD. You can not use arguments object ([...args] or (...args) in function) in IE.\n For e.g function abc(...args){\n console.log(\"received paramenters \", args)\n } // Won't work in IE\nE. 'append' function won't work in IE. You can use 'appendChild' function to achieve the same functionality.\nF. 'prepend' function won't work IE. Try to use 'insertBefore' function to achieve the same functionality.\nG. new Event() function won't work in IE. You can use new CustomEvent() function to achieve the same functionality.\nH. Arrow functions (=>) won't work in IE\nI. while creating div do not put all the css in style attribute. For e.g.\n<new div>.style=\"margin:24px;display:flex;float:right\" \nchange to \n\n\n<new div>.style.margin=\"24px\";\n<new div>.style.display=\"flex\";\n<new div>.style.float=\"right\"; \n*/\n/*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if (cust_id != \"3000000030411692\") return;*/\n console.log(\"[Zineone-I] Perk Perf Tag\");\n/*try {\n if (debug) console.log(\" [Z1] perk_perf_tag_test\");\n\n var birthday_perk_perfCodeHandler = function(e) {\n if (debug) console.log(\"birthday_perk_perfCodeHandler...\", e);\n if (debug) console.log(\"e.detail...\", e.detail);\n localStorage.setItem(\"z1_ws_birthday_perk_perf_tag_data\",JSON.stringify(e.detail));\n // handleEmailOptIn(e.detail);\n }\n document.addEventListener(\"ws_birthday_perk_perf\", birthday_perk_perfCodeHandler, false);\n}\ncatch(e)\n{if (debug) console.log(\"perk_perf_tag_test\");}*/\n\nvar debug = false;\n\nfunction isValid(datapoint) {\n if (!datapoint || typeof datapoint == 'undefined' || datapoint == undefined || datapoint === undefined || String(datapoint) === 'undefined' || datapoint == \"null\" || datapoint == null) {\n\n return false;\n } else {\n return true;\n }\n}\n\nfunction appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n}\n\nfunction perkPerfBannersCouponPage() {\n\n var pg_url = window.location.href;\n if (pg_url.includes(\"qa02\")) {\n //QA02 start\n var perkPerfBannersDiv3 = document.getElementById('bottom-right');\n if (debug) console.log(\"perkPerfBannersCouponPage>>>\", perkPerfBannersDiv3);\n var perkPerfBannersCouponPage = \".perk_notify_coupon{display:flex;flex-direction:row;width:417px;height:147px;background-color:#238341}.perk_notify_coupon_content{display:flex;flex-direction:column}#PICK-YOUR-PERK_btn{padding-bottom:9px;margin-left:34px;margin-right:99px;margin-top:14px;width:128px}.clk-btn{display:block;height:30.4px;background-color:#fff;cursor:pointer;font-family:'Gotham 7r',GothamBold,Helvetica,Arial,sans-serif;font-size:12px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#238341;border:solid transparent;width:100%}.gift{text-align:center;font-size:70px;color:#fff;margin-top:auto;margin-right:39.2px;margin-bottom:auto}.Your-birthdays-comi{width:228px;height:50px;font-family:'Gotham 5r',GothamBold,Helvetica,Arial,sans-serif;font-size:25px;font-style:normal;font-stretch:normal;line-height:1.08;letter-spacing:.44px;color:#fff;margin-right:53px;margin-left:33px;margin-top:25px}\";\n appendStyle(perkPerfBannersCouponPage);\n\n var inHTMLperkPerfBannersCouponPage = \"\";\n inHTMLperkPerfBanners = \"<div class='perk_notify_coupon'> <div class='perk_notify_coupon_content'> <div class='Your-birthdays-comi'>Your birthday’s<br>coming up… </div><div id='PICK-YOUR-PERK_btn'><a href='/myaccount/kohls_rewards.jsp' > <input type='button' style='font-weight: bold;font-family: 'Gotham 4r', GothamBold, Helvetica, Arial, sans-serif;' class='clk-btn' value='PICK YOUR PERK'></a> </div></div><div class='gift'> <img src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group3.png' class='Group-3'></div></div>\";\n var child = document.createElement(\"div\");\n child.innerHTML = inHTMLperkPerfBanners;\n // child.style = \"margin:24px;display:flex;float:right\";\n\n child.style.margin=\"24px\";\n child.style.display=\"flex\";\n child.style.float=\"right\"; \n\n\n perkPerfBannersDiv3.appendChild(child);\n // perkPerfBannersDiv3.innerHTML =appendChild(inHTMLperkPerfBannersCouponPage);\n // perkPerfBannersDiv3.style.display = \"block\";\n //QA02 end\n }\n\n\n //if (pg_url.includes(\"rel02\")) {\n //REL02 start\n /* var perkPerfBannersDiv3 = document.getElementsByClassName('tdeals_lot -tcs');\n perkPerfBannersDiv3[0].style = \"margin-bottom: 66px;\";\n var clearanceDiv = document.getElementsByClassName(\"tdeals_box -half -major -clearance\")[0];\n clearanceDiv.style = \"display: none;\"*/\n\n var rel2_cpn = document.getElementsByClassName('tdeals_box -half -major -clearance');\n rel2_cpn[0].innerHTML = \"\";\n rel2_cpn[0].onclick=\"\";\n //rel2_cpn[0].style = \"background-color:#238341; padding: 25px;\";\n rel2_cpn[0].style.backgroundColor = \"#238341\";\n rel2_cpn[0].style.padding = \"25px\";\n\n var perkPerfBannersDiv3 = rel2_cpn;\n var perkPerfBannersCouponPage = \".perk_notify_coupon_rel{display:flex;flex-direction:row;width:372 px;height:134 px;background-color:#238341}.perk_notify_coupon_content_rel{display:flex;flex-direction:column}#PICK-YOUR-PERK_btn_rel{margin-top:14px;width:128px}.clk-btn_rel{display:block;height:30.4px;background-color:#fff;cursor:pointer;font-family:'Gotham 4r',GothamMedium,Helvetica,Arial,sans-serif;font-size:12px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#238341;border:solid transparent;width:100%}.gift_rel{text-align:center;font-size:70px;color:#fff;margin:auto;position:relative;left:45px}.Your-birthdays-comi_rel{width:228px;height:50px;font-family:'Gotham 5r',GothamBold,Helvetica,Arial,sans-serif;font-size:25px;font-style:normal;font-stretch:normal;line-height:1.08;letter-spacing:.44px;color:#fff}\";\n appendStyle(perkPerfBannersCouponPage);\n var inHTMLperkPerfBannersCouponPage = \"\";\n inHTMLperkPerfBanners = \"<div class='new2' > <div class='perk_notify_coupon_rel'> <div class='perk_notify_coupon_content_rel'> <div class='Your-birthdays-comi_rel'>Your birthday’s<br>coming up… </div><div id='PICK-YOUR-PERK_btn_rel'><a href='/myaccount/kohls_rewards.jsp' > <input type='button' style='font-weight: bold;font-family: 'Gotham 4r', GothamBold, Helvetica, Arial, sans-serif;' class='clk-btn_rel' value='PICK YOUR PERK'></a> </div></div><div class='gift_rel'> <img src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group3.png' class='Group-3'></div></div></div>\";\n /* var child = document.createElement(\"div\");\n child.style = \"display: flex;flex-direction: row-reverse;position: absolute;margin: -124px 223px;\";\n child.class = \"tdeals_box -half -major -clearance\";\n //child.style = \"display: flex;flex-direction: row-reverse;margin-left:19px;\";\n child.innerHTML = inHTMLperkPerfBanners;\n perkPerfBannersDiv3[0].appendChild(child);*/\n\n var child = document.createElement(\"div\");\n child.innerHTML = inHTMLperkPerfBanners;\n /* child.style = \"margin:24px;display:flex;float:right\";*/\n perkPerfBannersDiv3[0].appendChild(child);\n\n\n //REL02 end\n //}\n}\n\n\nfunction perkPerfBannersCouponPage2() {\n\n\n //var perkPerfBannersDiv3 = document.getElementById('monetizationElements');\n var perkPerfBannersDiv3 = document.getElementsByClassName('tdeals_box -half -major -clearance')[0];\n \n perkPerfBannersDiv3.onclick=\"\";\n perkPerfBannersDiv3.innerHTML=\"\";\n //perkPerfBannersDiv3.style = \"background-color:#e6f0ca; padding: 20px;\";\n\n perkPerfBannersDiv3.style.backgroundColor=\"#e6f0ca\";\n perkPerfBannersDiv3.style.padding=\"20px\";\n \n\n\n\n\n\n\n\n\n if (debug) console.log(\"perkPerfBannersCouponPage>>>\", perkPerfBannersDiv3);\n var perkPerfBannersCouponPage = \".perf_notify_rewards{display:flex;flex-direction:row}.Want-more-of-what-yo{font-family:GothamBold,Helvetica,Arial,sans-serif!important;font-size:25px;font-style:normal;font-stretch:normal;font-weight:700;line-height:1;letter-spacing:.44px;color:#238341}.Take-a-moment-to-tel{font-family:GothamMedium,Helvetica,Arial,sans-serif!important;font-size:12px;font-weight:500;font-style:normal;font-stretch:normal;line-height:1.25;letter-spacing:-.07px;color:#238341;padding:5px}#SET-PREFERENCES_btn{margin:auto;margin-left:35px;font-family:GothamMedium,Helvetica,Arial,sans-serif;font-size:12px;font-weight:500;font-style:normal;font-stretch:normal;line-height:1.25;letter-spacing:-.07px;text-align:center;color:#fff}.clk-btn{display:block;border-radius:2.2px;height:30.4px;background-color:#238341;cursor:pointer;font-family:'Gotham 4r',GothamMedium,Helvetica,Arial,sans-serif;font-size:13px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#fff;border:solid transparent;width:100%;padding:5px}\";\n\n appendStyle(perkPerfBannersCouponPage);\n\n var inHTMLperkPerfBannersCouponPage = \"\";\n inHTMLperkPerfBannersCouponPage = \"<div class='perf_notify_rewards'> <div class='perf_notify_rewards_content'> <div class='Want-more-of-what-yo'>Want more of <br>what you love?</div><div class='Take-a-moment-to-tel'>Take a moment to tell us who<br>and what you like to shop for.</div></div><div id='SET-PREFERENCES_btn'> <a href='/myaccount/v2/myinfo.jsp' > <input type='button' class='clk-btn' value='SET PREFERENCES'> </a> </div></div>\";\n var child = document.createElement(\"div\");\n child.innerHTML = inHTMLperkPerfBannersCouponPage;\n // child.style = \"display:flex;float:right\";\n\n\n child.style.display=\"flex\";\n child.style.float=\"right\"; \n\n perkPerfBannersDiv3.appendChild(child);\n\n // perkPerfBannersDiv3.innerHTML =appendChild(inHTMLperkPerfBannersCouponPage);\n // perkPerfBannersDiv3.style.display = \"block\";\n}\n\n\nfunction perkPerfBanners() {\n\n //var perkPerfBannersDiv2 = document.getElementById(\"enrollment_wrapper\");\n\n\n var perkPerfBannersDiv2 = document.getElementsByClassName(\"birthday-perk-container\");\n\n if (debug) console.log(\"perkPerfBannersRewardsPage>>>\", perkPerfBannersDiv2);\n\n var perkPerfBanners = \".perk_notify_coupon{display:flex;flex-direction:row;height:110px;background-color:#238341}.perk_notify_coupon_content{display:flex;flex-direction:column}#PICK-YOUR-PERK_btn{padding-bottom:9px;margin-left:34px;margin-right:99px;margin-top:14px;width:128px}.clk-btn{display:block;border-radius:2.2px;height:30.4px;background-color:#fff;cursor:pointer;font-family:'gotham 4r';font-size:12px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#238341;border:solid transparent;width:100%}.gift{text-align:center;font-size:70px;color:#fff;margin-top:auto;margin-right:39.2px;margin-bottom:auto}.Your-birthdays-comi{width:228px;height:50px;font-family:Gotham;font-size:25px;font-weight:700;font-style:normal;font-stretch:normal;line-height:1.08;letter-spacing:.44px;color:#fff;margin-right:53px;margin-left:33px;margin-top:25px}\";\n appendStyle(perkPerfBanners);\n\n var inHTMLperkPerfBannersRewardsPage = \"\";\n inHTMLperkPerfBannersRewardsPage = \"<div class='perk_notify_coupon'> <div class='perk_notify_coupon_content'> <div class='Your-birthdays-comi'>Your birthday’s<br>coming up… </div><div id='PICK-YOUR-PERK_btn'> <input type='button' class='clk-btn' value='PICK YOUR PERK'> </div></div><div class='gift'> <img src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group3.png' class='Group-3'></div></div>\";\n\n var child = document.createElement(\"div\");\n child.innerHTML = inHTMLperkPerfBannersRewardsPage;\n\n //child.style = \"margin-top: 25px;\";\n child.style.marginTop=\"25px\";\n\n\n perkPerfBannersDiv2[0].appendChild(child);\n\n // perkPerfBannersDiv2.innerHTML = inHTMLperkPerfBannersRewardsPage;\n // perkPerfBannersDiv2.style.display = \"block\";\n\n\n}\n\nfunction showPerf(args) {\n\n var perfParentDiv2 = document.getElementById(\"z1widget\");\n var stylesPERF = \".z1_b_container_kohlsbannertoparrow{background-color:transparent;padding:0!important;background-color:#238341}.arrow_box{position:relative;background:#238341;border:none;width:198px;border-radius:.3rem .3rem 0 0;left:-50px;top:0;-webkit-box-shadow:0 0 2px 0 rgba(0,0,0,.08);-moz-box-shadow:0 0 2px 0 rgba(0,0,0,.08);box-shadow:0 0 2px 0 rgba(0,0,0,.08)}.arrow_box:after,.arrow_box:before{bottom:100%;left:45%;border:solid transparent;content:'';height:0;width:0;position:absolute;pointer-events:none}.arrow_box:after{border-color:rgba(255,255,255,0);border-bottom-color:#238341;border-width:8px;margin-left:auto}.arrow_box:before{border-color:rgba(191,191,191,0);border-bottom-color:#238341;border-width:8px;margin-left:auto}#detailsContentId{display:block;width:198px}.box{display:flex;flex-direction:column;height:200px}.cross{display:flex;flex-direction:row;height:13px}.Kohls-Rewards-HZ-R{background:url(https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/kohlsrewardshzr.png) center no-repeat;height:15.3px;color:#fff;margin-left:15%;margin-bottom:9px;height:30px}.Want-more-of-what-yo{width:143px;height:55.5px;font-family:'Gotham 7r',GothamBold,Helvetica,Arial,sans-serif;font-size:19px;font-style:normal;font-stretch:normal;line-height:1;letter-spacing:-.07px;text-align:center;color:#238341;margin-right:auto;margin-left:auto;margin-top:24px}.Take-a-moment-to-tel{width:143px;height:55.5px;margin-bottom:7.5px;font-family:'Gotham 5r',GothamMedium,Helvetica,Arial,sans-serif;font-size:12px;font-weight:500;font-style:normal;font-stretch:normal;line-height:1.17;letter-spacing:-.07px;text-align:center;color:#238341;margin-right:auto;margin-left:auto}#SET-PREFERENCES_btn{padding-bottom:18.6px;padding-right:20px;padding-left:20px;margin:auto}.clk-btn{display:block;border-radius:2.2px;height:30.4px;background-color:#238341;cursor:pointer;font-family:'Gotham 4r',GothamBold,Helvetica,Arial,sans-serif;font-size:13px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#fff;border:solid transparent;width:100%}.close{height:29px;width:17px;font-size:28px;cursor:pointer;color:#fff;font-weight:500;margin:2px}.div2_content{background-color:#e6f0ca;border-radius:0 0 .3rem .3rem}#z1-pd-yp-close{float:right;position:relative;right:8px;top:5px;width:15px;height:15px}#z1-pd-yp-close:before{transform:rotate(45deg);position:absolute;left:9px;content:' ';height:18px;width:1.5px;background-color:#fff}#z1-pd-yp-close:after{transform:rotate(-45deg);position:absolute;left:9px;content:' ';height:18px;width:1.5px;background-color:#fff}\";\n appendStyle(stylesPERF);\n var inHTMLStringPERF = \"\";\n inHTMLStringPERF = \"<div data-zineone-properties='modal:true;container-class:z1_b_container_kohlsbannertoparrow;' class='arrow_box'> <div id='detailsContentId'> <div class='box'> <div> <div class='cross'> <div style='width: 88%;'></div><div class='close' data-zineone-close='z1://close'><a data-zineone-close='z1://close' href='javascript:void(0);' id='z1-pd-yp-close'></a></div></div><div class='Kohls-Rewards-HZ-R '></div></div><div class='div2_content'> <div class='Want-more-of-what-yo'>Want more of what you love?</div><div class='Take-a-moment-to-tel'>Take a moment to tell<br>us who and what you<br>like to shop for.</div><div id='SET-PREFERENCES_btn'> <a href='/myaccount/v2/myinfo.jsp?z1_pref=1' > <input type='button' class='clk-btn' value='SET PREFERENCES'> </a> </div></div></div></div></div>\";\n perfParentDiv2.innerHTML = inHTMLStringPERF;\n perfParentDiv2.style.display = \"block\";\n\n /*let setPrefBtn = document.getElementById(\"SET-PREFERENCES_btn\");\n function setPrefBtnClick(){\n if (debug) console.log(\"setPreferenceBtnClicked..\");\n // alert('setPreferenceBtnClicked');\n setTimeout(function(){\n if (debug) console.log(\"TIMEOUT FUNCTION\");\n let setPrefEvent = new CustomEvent('setPreferenceBtnClicked', { detail: {} });\n document.dispatchEvent(setPrefEvent);\n },5000);\n\n }\n setPrefBtn.addEventListener(\"click\",setPrefBtnClick,false);*/\n let setPrefBtn = document.getElementById(\"SET-PREFERENCES_btn\");\n\n function setPrefBtnClick() {\n if (debug) console.log(\"setPreferenceBtnClicked..\");\n localStorage.setItem(\"z1_pref_clicked\", \"true\");\n\n }\n setPrefBtn.addEventListener(\"click\", setPrefBtnClick, false);\n\n var eventdata = {\n usecase: \"perk\",\n onPage: pgName\n };\n\n ZineOne.pushEvent(\"_ws_updatePerkPerfLastseen\", eventdata);\n sessionStorage.setItem(\"showPerfOnCouponPage\", \"true\");\n\n\n}\n\nfunction showPerk(argument) {\n // body...\n var perkParentDiv2 = document.getElementById(\"z1widget\");\n var stylesPERK = \".z1_b_container_kohlsbannertoparrow{background-color:transparent;padding:0!important;background-color:#238341}.arrow_box{position:relative;border:none;width:198px;border-radius:.3rem;left:-50px;top:0;height:262.3px;-webkit-box-shadow:0 0 2px 0 rgba(0,0,0,.08);-moz-box-shadow:0 0 2px 0 rgba(0,0,0,.08);box-shadow:0 0 2px 0 rgba(0,0,0,.08);background-size:75px,31px,57px;background-color:#238341}.arrow_box:after,.arrow_box:before{bottom:100%;left:45%;border:solid transparent;content:'';height:0;width:0;position:absolute;pointer-events:none}.arrow_box:after{border-color:rgba(255,255,255,0);border-bottom-color:#238341;border-width:8px;margin-left:auto}.arrow_box:before{border-color:rgba(191,191,191,0);border-bottom-color:#238341;border-width:8px;margin-left:auto}#detailsContentId{display:block;width:198px;padding:5px 0}.box{display:flex;flex-direction:column}.cross{display:flex;flex-direction:row;height:13px}.Kohls-Rewards-HZ-R{height:15.3px;color:#fff;margin-left:15%;margin-top:10px}.MEMBER-EXCLUSIVE{font-family:'Gotham 4r',GothamMedium,Helvetica,Arial,sans-serif;font-size:11px;font-weight:500;font-style:normal;font-stretch:normal;line-height:1.27;letter-spacing:-.1px;text-align:center;color:#fff;margin-right:auto;margin-left:auto;height:17.5px;width:143px}.gift{text-align:center;font-size:78px;color:#fff;margin:12.5px auto}.Your-birthdays-comi-outer-div{height:55.5px;width:143px;margin:auto}.Your-birthdays-comi{font-family:'Gotham 5r',GothamBold,Helvetica,Arial,sans-serif;font-size:18px;font-style:normal;font-stretch:normal;font-weight:500;line-height:1.06;letter-spacing:-.1px;text-align:center;color:#fff;margin-right:auto;margin-left:auto;height:55.5px;width:143px}#TREAT-YOURSELF_btn{padding-bottom:9px;margin:auto;width:158px}.clk-btn{display:block;border-radius:2.2px;height:30.4px;background-color:#fff;cursor:pointer;font-family:'gotham 4r';font-size:13px;font-weight:700;font-style:normal;font-stretch:normal;line-height:.6px;letter-spacing:.5px;text-align:center;color:#238341;border:solid transparent;width:100%}.close{padding-right:13px}.pick_ur_perk_btn{width:158.5px}.star1{position:absolute;top:17%;left:-1.9%;width:77px;height:89px;object-fit:contain}.star2{position:absolute;top:60.4%;left:-5%;width:40px;height:50px;object-fit:contain}.star3{position:absolute;top:35.8%;left:78.1%;width:57px;height:89px;object-fit:contain}#z1-pd-yp-close{float:right;position:relative;right:0;top:5px;width:15px;height:15px}#z1-pd-yp-close:before{transform:rotate(45deg);position:absolute;left:9px;content:' ';height:18px;width:1.5px;background-color:#fff}#z1-pd-yp-close:after{transform:rotate(-45deg);position:absolute;left:9px;content:' ';height:18px;width:1.5px;background-color:#fff}\";\n appendStyle(stylesPERK);\n var inHTMLStringPERK = \"\";\n inHTMLStringPERK = \"<div data-zineone-properties='modal:true;container-class:z1_b_container_kohlsbannertoparrow;' class='arrow_box'> <div id='detailsContentId'> <div class='box'> <div class='cross'> <div style='width: 89%;'></div><div class='close' data-zineone-close='z1://close'><a data-zineone-close='z1://close' href='javascript:void(0);' id='z1-pd-yp-close'></a></div></div><div class='Kohls-Rewards-HZ-R'><img src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/kohlsrewardshzr.png'></div><div class='MEMBER-EXCLUSIVE'>MEMBER EXCLUSIVE</div><div> <img class='star1' src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group2x.png'> <img class='star2' src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group3.3.png'> <img class='star3' src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group2.3.png'> </div><div class='gift'><img src='https://d2p4r375zfkzm8.cloudfront.net/sandbox-kohlswebqa02-com/group3.png' class='Group-3'></div><div class='Your-birthdays-comi-outer-div'> <div class='Your-birthdays-comi'>Your birthday’s<br>coming up… </div></div><div id='TREAT-YOURSELF_btn'> <a href='/myaccount/kohls_rewards.jsp' > <input type='button' class='clk-btn' value='PICK YOUR PERK' class='pick_ur_perk_btn'> </a> </div><div class='Fill-20'></div></div></div></div>\";\n perkParentDiv2.innerHTML = inHTMLStringPERK;\n perkParentDiv2.style.display = \"block\";\n\n\n var eventdata = {\n usecase: \"perk\",\n onPage: pgName\n };\n\n ZineOne.pushEvent(\"_ws_updatePerkPerfLastseen\", eventdata);\n sessionStorage.setItem(\"showPerkOnCouponPage\", \"true\");\n\n}\n\nfunction handlePerkPerf(received_data) {\n\n if (debug) console.log('[Z1]SetCookie. ' + received_data.SetCookie);\n\n if (debug) console.log('[Z1]TTLperf. ' + received_data.perf_ttl);\n if (debug) console.log('[Z1]TTLperk. ' + received_data.perk_ttl);\n if (debug) console.log('[Z1]perk. ' + received_data.perk);\n if (debug) console.log('[Z1]perf. ' + received_data.perf);\n /*\n function setCookie(cname, cvalue, exdays) {\n if (debug) console.log('[Z1]cname. ' + cname);\n if (debug) console.log('[Z1]cvalue. ' + cvalue);\n if (debug) console.log('[Z1]exdays. ' + exdays);\n\n var d = new Date();\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\n\n\n var expires = \"expires=\" + d.toGMTString();\n document.cookie = cname + \"=\" + cvalue + \";\" + expires + \";path=/\";\n }\n\n function getUTCTimeInMILLIS() {\n var now = new Date();\n var millis = now.getTime() + (now.getTimezoneOffset() * 60000);\n // var millis = now.getTime() + ((now.getTimezoneOffset() * 60000)+(5*86400000));\n return millis;\n }\n\n if (String(received_data.SetCookie) == \"true\") {\n var cvalue, cookie_expiry;\n\n var today = getUTCTimeInMILLIS();\n if (String(received_data.perf) == \"true\") {\n // cvalue=JSON.stringify({ \"perf\": \"true\", \"ttl\":String(received_data.perf_ttl)});\n cvalue = JSON.stringify({ \"perf\": \"false\", \"ttl_perf\": String(today) });\n\n cookie_expiry = Number(received_data.perf_ttl);\n }\n\n if (String(received_data.perk) == \"true\") {\n // cvalue=JSON.stringify({ \"perk\":\"true\", \"ttl\":String(received_data.perk_ttl)});\n cvalue = JSON.stringify({ \"perk\": \"false\", \"ttl_perk\": String(today) });\n cookie_expiry = Number(received_data.perk_ttl);\n }\n\n // cvalue=JSON.stringify({ \"perf\": received_data.perf, \"perk\": received_data.perk, \"ttl\":received_data.perk_ttl});\n //document.cookie = \"z1_perk_perf=\" + cvalue + \";\" + expires + \";path=/\";\n var cookie_name = \"z1_perk_perf\";\n var cookie_value = cvalue;\n\n\n if (debug) console.log('[Z1]cookie_name.B ' + cookie_name);\n if (debug) console.log('[Z1]cookie_value. ' + cookie_value);\n if (debug) console.log('[Z1]cookie_expiry. ' + cookie_expiry);\n\n //setCookie(cookie_name,cookie_value,4);\n setCookie(cookie_name, cookie_value, cookie_expiry);\n\n }*/\n\n\n}\n\n\nfunction getUTCTimeInMILLIS() {\n var now = new Date();\n // var millis = now.getTime() + (now.getTimezoneOffset() * 60000);\n // var millis = now.getTime() + ((now.getTimezoneOffset() * 60000)+(5*86400000));\n var millis = now.getTime();\n return millis;\n}\n\n\nfunction setCookie(cname, cvalue, exdays) {\n if (debug) console.log('[Z1]perkPerfCodeHandle cname. ' + cname);\n if (debug) console.log('[Z1]perkPerfCodeHandle cvalue. ' + cvalue);\n if (debug) console.log('[Z1]perkPerfCodeHandle exdays. ' + exdays);\n\n var d = new Date();\n d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));\n\n\n var expires = \"expires=\" + d.toGMTString();\n if (debug) console.log('[Z1]perkPerf################ ' + cname + \"=\" + JSON.stringify(cvalue) + \";\" + expires + \";path=/\");\n document.cookie = cname + \"=\" + JSON.stringify(cvalue) + \";\" + expires + \";path=/\";\n}\n\n\nfunction perkPerfCodeHandle(received_data) {\n var showPerkBanner = received_data.notification_ds.showPerk;\n var showPerfBanner = received_data.notification_ds.showPerf;\n var displayBannerTimer = received_data.notification_ds.bannerDisplay;\n\n if (debug) console.log('[Z1]perkPerfCodeHandle>>>>>>>>>>> received_data ' + received_data);\n if (debug) console.log('[Z1]perkPerfCodeHandle>>>>>>>>>>> notification_ds ' + received_data.notification_ds);\n if (debug) console.log('[Z1]perkPerfCodeHandle>>>>>>>>>>> cookie_ds ' + received_data.cookie_ds);\n\n if (debug) console.log('\\n\\n[Z1]perkPerfCodeHandle>>>>>>>>>>> notification_ds.showPerf ' + ((received_data.notification_ds.showPerf) == \"true\"));\n if (debug) console.log('[Z1]perkPerfCodeHandle>>>>>>>>>>> notification_ds.showPerk ' + ((received_data.notification_ds.showPerk) == \"true\"));\n if (debug) console.log('[Z1]perkPerfCodeHandle>>>>>>>>>>> notification_ds.bannerDisplay ' + received_data.notification_ds.bannerDisplay);\n if (debug) console.log('[Z1]################perkPerfCodeHandle############################ ');\n\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? received_data isCookieSet' + received_data.cookie_ds.isCookieSet);\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? received_data do we have to SetCookie?' + received_data.cookie_ds.SetCookie);\n\n\n if (String(received_data.cookie_ds.SetCookie) == \"true\") {\n\n var cvalue, cookie_expiry;\n var today = getUTCTimeInMILLIS();\n\n if ((String(received_data.cookie_ds.uc) == \"perk\") && (String(received_data.cookie_ds.usecase) == \"perk\")) {\n if (debug) console.log('[Z1] ONE PERK ');\n\n\n cvalue = {\n perk: \"false\",\n ttl_perk: Number(today)\n };\n\n cookie_expiry = Number(received_data.cookie_ds.ttl_perk);\n }\n\n\n if ((String(received_data.cookie_ds.uc) == \"perf\") && (String(received_data.cookie_ds.usecase) == \"perf\")) {\n if (debug) console.log('[Z1] ONE PERF ');\n\n\n cvalue = {\n perf: \"false\",\n ttl_perf: Number(today)\n };\n\n cookie_expiry = Number(received_data.cookie_ds.ttl_perf);\n }\n\n if (String(received_data.cookie_ds.uc) == \"both\") {\n\n if (debug) console.log('[Z1] BOTH ');\n\n\n\n\n if (received_data.cookie_ds.onBothList == \"true\") {\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? onBothList? Double COOKIE value ');\n //if (debug) console.log('[Z1]perkPerfCodeHandle?????? onBothList? Double COOKIE value uc '+uc);\n //if (debug) console.log('[Z1]perkPerfCodeHandle?????? onBothList? Double COOKIE value usecase '+usecase);\n if ((String(received_data.cookie_ds.usecase) == \"perk\")) {\n cvalue = {\n perf: \"false\",\n ttl_perf: Number(today),\n perk: \"false\",\n ttl_perk: Number(today)\n };\n cookie_expiry = Number(received_data.cookie_ds.ttl_perk);\n\n }\n\n if ((String(received_data.cookie_ds.usecase) == \"perf\")) {\n cvalue = {\n perf: \"false\",\n ttl_perf: Number(today),\n perk: \"true\",\n ttl_perk: Number(today)\n };\n cookie_expiry = Number(received_data.cookie_ds.ttl_perf);\n\n }\n\n } else {\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? onBothList? Double COOKIE value false ');\n if ((String(received_data.cookie_ds.uc) == \"both\") && (String(received_data.cookie_ds.usecase) == \"perk\")) {\n if (debug) console.log('[Z1] ONE PERK ');\n\n\n cvalue = {\n perk: \"false\",\n ttl_perk: Number(today)\n };\n\n cookie_expiry = Number(received_data.cookie_ds.ttl_perk);\n }\n\n\n\n if ((String(received_data.cookie_ds.uc) == \"both\") && (String(received_data.cookie_ds.usecase) == \"perf\")) {\n if (debug) console.log('[Z1] ONE PERF ');\n\n\n cvalue = {\n perf: \"false\",\n ttl_perf: Number(today)\n };\n\n cookie_expiry = Number(received_data.cookie_ds.ttl_perf);\n }\n }\n }\n\n\n\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? COOKIE value to set ' + cvalue);\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? COOKIE value to set cookie_expiry:' + cookie_expiry);\n\n\n var cookie_name = \"z1_perk_perf\";\n var cookie_value = cvalue;\n\n\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? cookie_name.B ' + cookie_name);\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? cookie_value. ' + cookie_value);\n if (debug) console.log('[Z1]perkPerfCodeHandle?????? cookie_expiry. ' + cookie_expiry);\n\n //setCookie(cookie_name,cookie_value,4);\n setCookie(cookie_name, cookie_value, cookie_expiry);\n\n\n\n }\n\n\n\n\n\n\n\n\n if (debug) console.log('[Z1]################perkPerfCodeHandle############################ ');\n\n\n\n\n\tvar cust_id_non_numeric=localStorage.getItem('dataLayerCustomerDetails');\n\tvar isGuestUser_id = false;\n if(isValid(cust_id_non_numeric)){\n isGuestUser_id=isNaN(JSON.parse(cust_id_non_numeric).customerID);\n\n }\n if (!isGuestUser_id && showPerkBanner == \"true\" && displayBannerTimer == \"false\" ) {\n if (pgName == \"Home\") {\n showPerk();\n }\n }\n\n if (!isGuestUser_id && showPerfBanner == \"true\" && displayBannerTimer == \"false\") {\n if (pgName == \"Home\") {\n showPerf();\n }\n }\n\n\n}\n\nfunction getBirthdayCookie(cname) {\n var name = cname + \"=\";\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return;\n}\nvar delete_cookie = function(name) {\n document.cookie = name + '=;expires=Thu, 01 Jan 1970 00:00:01 GMT;';\n};\n\n\ntry {\n\n //if (debug) console.log(\" [Z1] Pagedata*****************************\"+pagedata);\n\n if (debug) console.log(\" [Z1] perk_perf_tag_test*****************************\");\n\n if (isValid(pageData.customerDetails)) {\n if (pageData.customerDetails.isLoggedIn == \"false\") {\n if (debug) console.log(\"[Z1]delete cookie for logged out user1\");\n try {\n if (debug) console.log(\"[Z1]delete cookie for logged out user2\");\n delete_cookie('z1_perk_perf');\n\n\n var perkOnCouponPage = sessionStorage.getItem(\"showPerkOnCouponPage\");\n if(isValid(perkOnCouponPage)){\n sessionStorage.removeItem(\"showPerkOnCouponPage\");\n }\n\n var perfOnCouponPage = sessionStorage.getItem(\"showPerfOnCouponPage\");\n if(isValid(perfOnCouponPage)){\n sessionStorage.removeItem(\"showPerfOnCouponPage\");\n }\n\n\n\n } catch (del) {\n if (debug) console.log(\"[Z1] no cookie for logged out user\");\n }\n }\n }\n\n var pg = Z1.window.browserInfo.pagePath;\n var pgName = \"unknownPage\";\n // if (isDebug) if (debug) console.log(\"[ZineOne] Page Name ==>\" + pg);\n if (pg == \"/\") {\n pgName = \"Home\";\n } else if (pg.startsWith(\"/product\")) {\n pgName = \"PDP\";\n } else if (pg.startsWith(\"/catalog\")) {\n pgName = \"PMP\";\n } else if (pg.startsWith(\"/search\")) {\n pgName = \"Search\";\n } else if (pg.startsWith(\"/myaccount/kohls_rewards.jsp\")) {\n pgName = \"Rewards\";\n // ZineOne.pushEvent(\"Perk_Perf_Event\", {});\n\n } else if (pg.startsWith(\"/myaccount/v2/myinfo.jsp\")) {\n\n pgName = \"myInfo\";\n // ZineOne.pushEvent(\"Perk_Perf_Event\", {});\n\n } else if (pg.startsWith(\"/wallet/my_wallet.jsp\")) {\n pgName = \"Wallet\";\n\n\n } else if (pg.startsWith(\"/upgrade/giftinglisting/wishlist.jsp\")) {\n pgName = \"Wishlist\";\n\n } else if (pg.startsWith(\"/myaccount/v2/order-history.jsp\")) {\n pgName = \"OrderHistory\";\n\n\n } else if (pg.startsWith(\"/sale-event/coupons-deals.jsp\")) {\n pgName = \"Coupons\";\n }\n if (pg.startsWith(\"/?DPSLogout=true\")) {\n pgName = \"Logout\";\n } else if (pg.startsWith(\"/checkout\")) {\n pgName = \"Cart\";\n if (pg.endsWith(\"shopping_cart.jsp\")) {\n pgName = \"Cart\";\n } else if (pg.endsWith(\"v2/checkout.jsp\")) {\n pgName = \"Checkout\";\n }\n }\n\n //if logged out unset seeion variable\n var loggedout = document.URL;\n\n function getBirthdayCookie(cname) {\n var name = cname + \"=\";\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i++) {\n var c = ca[i];\n while (c.charAt(0) == ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) == 0) {\n return c.substring(name.length, c.length);\n }\n }\n return;\n }\n var birthday_cookie_flag = '';\n var cookie_title = \"z1_perk_perf\";\n var birthday_cookie = getBirthdayCookie(cookie_title);\n if (isValid(birthday_cookie)) {\n birthday_cookie_flag = birthday_cookie;\n } else {\n birthday_cookie_flag = '';\n }\n var isPerkSelected=false;\n var isPerfSelected=false;\n if(birthday_cookie_flag != ''){\n var parsedBirthCookie = JSON.parse(birthday_cookie_flag);\n if(parsedBirthCookie && parsedBirthCookie.perk){\n isPerkSelected= String(parsedBirthCookie.perk) == \"true\" ? true : false;\n }\n if(parsedBirthCookie && parsedBirthCookie.perf){\n isPerfSelected= String(parsedBirthCookie.perf) == \"true\" ? true : false;\n }\n }\n if (isPerkSelected) {\n sessionStorage.removeItem('showPerkOnCouponPage');\n }\n if (isPerfSelected) {\n sessionStorage.removeItem('showPerfOnCouponPage');\n }\n if ((loggedout.endsWith(\"/?DPSLogout=true\")) ) {\n\n // var customer=JSON.parse(localStorage.getItem(z1_cust_id));\n var cookie_title = \"z1_perk_perf\";\n // if (debug) console.log(\"[Z1]This user logged out>>>$$$$\",customer);\n delete_cookie('z1_perk_perf');\n // var birthday_cookie = getBirthdayCookie(cookie_title);\n //if (debug) console.log(\"[Z1] READ birthday_cookie on Logout page\" + birthday_cookie);\n\n var sess1 = sessionStorage.getItem(\"showPerkOnCouponPage\");\n if (sess1 == \"true\") {\n sessionStorage.removeItem('showPerkOnCouponPage');\n }\n\n\n\n var sess2 = sessionStorage.getItem(\"showPerfOnCouponPage\");\n if (sess2 == \"true\") {\n sessionStorage.removeItem('showPerfOnCouponPage');\n }\n }\n\n\n\n\n if (debug) console.log(\"perk_perfCodeHandler...pgName:::\" + pgName);\n\n\n /*var birthday_perk_perfCodeHandler = function(e) {\n if (debug) console.log(\"birthday_perk_perfCodeHandler...\", e);\n if (debug) console.log(\"e.detail...\", e.detail);\n // localStorage.setItem(\"z1_ws_birthday_perk_perf_tag_data\", JSON.stringify(e.detail));\n handlePerkPerf(e.detail);\n\n };\n\n\n document.addEventListener(\"ws_birthday_perk_perf\", birthday_perk_perfCodeHandler, false);*/\n\n\n if (pgName == \"myInfo\") {\n // alert('setPreferenceBtnClicked...myInfo 2');\n if (debug) console.log(\"setPreferenceBtnClicked...myInfo 2\");\n // alert('setPreferenceBtnClickedHandler...myInfo 3');\n /* let locn=window.location.href;\n if(locn.includes(\"/myaccount/v2/myinfo.jsp?z1_pref=1\")){\n var element = document.getElementById(\"leftInfoItem\");\n element.getElementsByTagName(\"li\")[0].classList.remove(\"selected\");\n element.getElementsByTagName(\"li\")[3].classList.add(\"selected\");\n var t = document.getElementsByClassName(\"shoppingPref\");\n t[0].children[0].click();\n\n }*/\n\n let ls_z1_pref_clicked = localStorage.getItem('z1_pref_clicked');\n\n if (isValid(ls_z1_pref_clicked) && String(ls_z1_pref_clicked) == \"true\") {\n\n if (debug) console.log(\"z1_pref_clicked val from ls\" + ls_z1_pref_clicked);\n var element = document.getElementById(\"leftInfoItem\");\n element.getElementsByTagName(\"li\")[0].classList.remove(\"selected\");\n element.getElementsByTagName(\"li\")[3].classList.add(\"selected\");\n var t = document.getElementsByClassName(\"shoppingPref\");\n t[0].children[0].click();\n localStorage.removeItem('z1_pref_clicked');\n if (debug) console.log(\"z1_pref_clicked val from ls removed\");\n }\n\n }\n\n if (pgName == \"Rewards\") {\n\n /* var showdivs = String(sessionStorage.getItem(\"showPerkOnCouponPage\"));\n isValid(showdivs);\n if (debug) console.log(\"showdivs\", showdivs);\n\n if (isValid(showdivs)) {\n if (showdivs) {\n if (debug) console.log(\"showdivs\", showdivs);\n perkPerfBanners();\n }\n }*/\n }\n\n if (pgName == \"Coupons\") {\n\n /* var showdivs1 = String(sessionStorage.getItem(\"showPerkOnCouponPage\"));\n // isValid(showdivs1);\n if (debug) console.log(\"Coupons pages showdivs>>>>\",showdivs1);\n\n if (isValid(showdivs1)) {\n if (showdivs1) {\n if (debug) console.log(\"showdivs1\",showdivs1);\n perkPerfBannersCouponPage();\n }\n }*/\n\n\n\n var showdivs1 = String(sessionStorage.getItem(\"showPerkOnCouponPage\"));\n\n if (debug) console.log(\"Coupons pages showdivs>>>>\", showdivs1);\n\n if (showdivs1 == \"true\") {\n\n if (debug) console.log(\"showdivs1\", showdivs1);\n perkPerfBannersCouponPage();\n var cusId = pageData.customerDetails.customerID;\n\n //if (debug) console.log('Before Condition Check',prop75Obj.prop75,cusId);\n\n if (cusId) {\n //if (debug) console.log('Inside s.tl Omniture ',prop75Obj.prop75);\n\n var eVar39 = cusId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: \"w>z1bdayperk>b|cp\",\n eVar39: eVar39\n });\n\n }\n\n }\n\n\n\n var showdivs2 = sessionStorage.getItem(\"showPerfOnCouponPage\");\n // isValid(showdivs2);\n if (debug) console.log(\"Coupons pages showdivs2>>>>\", showdivs2);\n\n if (showdivs2 == \"true\") {\n\n if (debug) console.log(\"showdivs2\", showdivs2);\n\n perkPerfBannersCouponPage2();\n var cusId = pageData.customerDetails.customerID;\n if (cusId) {\n //if (debug) console.log('Inside s.tl Omniture ',prop75Obj.prop75);\n\n var eVar39 = cusId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: \"w>z1completeprof>b|cp\",\n eVar39: eVar39\n });\n\n }\n\n\n\n }\n\n\n }\n\n\n\n /* var perkPerfCodeHandler = function(f) {\n if (debug) console.log(\"birthday_perk_perfCodeHandler...New\", f);\n if (debug) console.log(\"f.detail...\", f.detail);\n localStorage.setItem(\"z1_ws_birthday_perk_perf_tag_data NEW\", JSON.stringify(f.detail));\n // handlePerkPerf(e.detail);\n perkPerfCodeHandle(f.detail);\n\n };\n document.addEventListener(\"ws_PerkPerfdata\", perkPerfCodeHandler, false);*/\n\n var z1ResponseHandler = function(e) {\n if (debug) console.log(\"birthday_perk_perfCodeHandler..\");\n if (e.detail && e.detail.PerkPerfdata) {\n if (debug) console.log(\"birthday_perk_perfCodeHandler...New\", e);\n if (debug) console.log(\"e.detail...\", e.detail.PerkPerfdata);\n localStorage.setItem(\"z1_ws_birthday_perk_perf_tag_data NEW\", JSON.stringify(e.detail.PerkPerfdata));\n perkPerfCodeHandle(e.detail.PerkPerfdata);\n // localStorage.setItem(\"z1_emailOptIn_data\", JSON.stringify(e.detail.emailOptInOfferCode));\n // handleEmailOptIn(e.detail.emailOptInOfferCode);\n }\n };\n document.addEventListener(\"onZ1RawData\", z1ResponseHandler, false);\n\n\n\n} catch (e) {\n console.log(\"Error in perk_perf_tag = \", e);\n}\n","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"shopToRoundUpV2","actionType":"z1script","script":"var isDebug = false;\nvar __debug = false;\n\nfunction isValid(datapoint) {\n if (!datapoint || typeof datapoint == 'undefined' || datapoint == undefined || datapoint === undefined || String(datapoint) === 'undefined' || datapoint == \"null\" || datapoint == null) {\n returnObj.reason = \"invalid input\";\n return false;\n } else {\n return true;\n }\n}\n\n/*\nvar debug_log = function(msg) {\n if (__debug) {\n console.log(\"debug_ShopToRoundUpDataV2::\" + msg);\n \n }\n};*/\n\nfunction debug_log(...args) {\n if (isDebug) {\n console.log(\"debug_ShopToRoundUpDataV2::\");\n console.log.apply(this, args);\n }\n}\n\nfunction appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n}\n\n\nfunction showShopRoundUpV2OnCoupon(cpn) {\n\n\n var shopRoundUpV2CouponBannersDiv = document.getElementById('monetizationElements');\n console.log(\"shopRoundUpV2CouponBannersDiv>>>\", shopRoundUpV2CouponBannersDiv)\n\n console.log(\"cpn date:\" + cpn.ends_in);\n var cpn_ends_in = cpn.ends_in;\n\n var styleShowShopRoundUpV2OnCouponPage = ` #strup-container{padding: 10px; background-color: #eef7e6; font-family: 'Gotham 4r', 'GothamMedium', Helvetica, Arial, sans-serif; font-size: 11px; position: relative}\n #strup-container #strup_header {margin-bottom: 5px}\n #strup-container #strup-coupon-Rewards-Lockup-Horizontal {position: absolute; right: 0px; top: 0px}\n #strup-container #strup-coupon-Cant-wait-to-hit-yo{font-size: 15px;font-family: 'Gotham 7r', 'GothamBold', Helvetica, Arial, sans-serif;}\n #strup-container .green-text {color: #208033;}\n #strup-container .bold-text {font-family: 'Gotham 7r', 'GothamBold', Helvetica, Arial, sans-serif;}\n \n #strup-container .strup-coupon-dollar_reward_content {display: flex; font-size: 26px; align-items: flex-start;}\n #strup-container .strup-coupon-dollar_reward_content .offer_currency {margin-right: 48px}\n #strup-container .strup-coupon-dollar_reward_content .offer_value {font-size: 68px; transform: translateY(-25%); position: absolute; left: 30px;}\n #strup-container .strup-coupon-Spend-25-or-more-in {margin-bottom: 10px;}\n #strup-container .strup-coupon-footer {margin: 0px 0px 0px 65px;font-weight: bold;}`;\n appendStyle(styleShowShopRoundUpV2OnCouponPage);\n\n\n\n var innerHTMLshowShopRoundUpV2OnCouponPage = \"\";\n innerHTMLshowShopRoundUpV2OnCouponPage = `<div class=\"strup-coupon-Rectangle\" id=\"strup-container\">\n <div id=\"strup_header\">\n <div id=\"inboxHeader_1\">\n <div id=\"strup-coupon-Rewards-Lockup-Horizontal\" class=\"strup-coupon-Rewards-Lockup-Horizontal\"><img style=\"height: 25px;\" src=\"/account/media/images/loyaltyV2/kohls-rewards.png\"></div>\n </div>\n <div id=\"inboxHeader_2\">\n <div id=\"strup-coupon-Cant-wait-to-hit-yo\" class=\"strup-coupon-Cant-wait-to-hit-yo\">Can't wait to hit your next</div>\n </div>\n </div>\n <div class=\"strup-coupon-dollar_reward\">\n <div class=\"strup-coupon-dollar_reward_content green-text bold-text\">\n \n <div class=\"offer_currency\">$</div>\n <div class=\"offer_value\">5</div>\n <div class=\"offer_text\">reward?</div>\n </div>\n <div class=\"strup-coupon-footer\">\n <div class=\"strup-coupon-Spend-25-or-more-in\">Spend $25 or more in-store or online. We'll add $2.50<br> to your Kohl's Rewards balance to get you there.</div>\n <div class=\"strup-coupon-Ends-August-20\">Ends ${cpn_ends_in}</div>\n <div class=\"strup-coupon-details-exclusions\"><u>details & exclusions</u></div>\n </div>\n </div>\n </div> `;\n\n\n\n var child = document.createElement(\"div\");\n child.innerHTML = innerHTMLshowShopRoundUpV2OnCouponPage;\n child.style = \"margin:24px;display:flex;float:right\";\n shopRoundUpV2CouponBannersDiv.appendChild(child);\n\n\n\n}\n\nfunction showShopRoundUpV2OnHome(hm) {\n var hm_ends_in = hm.ends_in;\n\n var showShopRoundUpV2OnHomeDiv = document.getElementById(\"z1widget\");\n var stylesShopRoundUpV2OnHomePage = `.z1_b_container_kohlsbannertoparrow {\n background-color: transparent;\n padding: 0px !important;\n \n }\n\n\n .arrow_box {\n position: relative;\n padding: 0px;\n \n border: none;\n width: 265px;\n border-radius: 0.3rem;\n left: -173px;\n top: 0px;\n height: 312px;\n\n -webkit-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.08);\n -moz-box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.08);\n box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.08);\n background-size: 75px, 31px, 57px;\n background-color: #eef7e6;\n }\n\n .arrow_box:after,\n .arrow_box:before {\n bottom: 100%;\n left: 45%;\n border: solid transparent;\n content: \" \";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none;\n }\n\n .arrow_box:after {\n border-color: rgba(255, 255, 255, 0);\n border-bottom-color: #eef7e6;\n border-width: 8px;\n margin-left: auto;\n }\n\n .arrow_box:before {\n border-color: rgba(191, 191, 191, 0);\n border-bottom-color: #eef7e6;\n border-width: 8px;\n margin-left: auto;\n }\n\n \n\n .box {\n display: flex;\n flex-direction: column;\n }\n\n .cross {\n display: flex;\n flex-direction: row;\n }\n\n #z1-pd-yp-close {\n float: right;\n position: relative;\n right: 0px;\n top: 10px;\n width: 15px;\n height: 15px;\n }\n #z1-pd-yp-close:before{\n transform: rotate(45deg);\n position: absolute;\n left: 9px;\n content: ' ';\n height: 18px;\n width: 1.5px;\n background-color: #474747;\n }\n\n #z1-pd-yp-close:after {\n transform: rotate(-45deg);\n position: absolute;\n left: 9px;\n content: ' ';\n height: 18px;\n width: 1.5px;\n background-color: #474747;\n }\n \n .Rewards-Lockup-Horizontal {\n width: 239px;\n height: 44px;\n object-fit: contain;\n margin-left: auto;\n margin-right: auto;\n \n \n }\n .Rewards-Lockup-Horizontal-image {\n width: 239px;\n height: 44px;\n object-fit: contain;\n \n \n }\n \n\n .MEMBER-EXCLUSIVE {\n width: 149px;\n height: 17px;\n font-family: 'Gotham 4r', 'GothamMedium', Helvetica, Arial, sans-serif;\n font-size: 11px;\n font-weight: normal;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: 2px;\n margin-right: auto;\n margin-left: auto;\n color: #444444;\n\t position: relative;\n top: -12px;\n }\n .Cant-wait-to-hit-yo {\n width: 203px;\n height: 16px;\n font-family: 'Gotham 7r', 'GothamBold', Helvetica, Arial, sans-serif;\n font-size: 15px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin: 0px 30px 0px 30px;\n }\n\n .dollar_reward {\n font-family: 'Gotham 7r', 'GothamBold', Helvetica, Arial, sans-serif;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #208033;\n margin-bottom: 10px;\n margin-top: 5px;\n \n}\n\n.dollar_reward_content {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n margin-top: -12px;\n margin-bottom: -12px;\n}\n.Spend-25-or-more-in {\n width: 174px;\n height: 36px;\n font-family: 'Gotham 5r', 'GothamMedium', Helvetica, Arial, sans-serif;\n font-size: 15px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.2;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin-right: auto;\n margin-left: auto;\n}\n\n.Well-add-250-to-y {\n width: 240px;\n height: 26px;\n font-family: 'Gotham 5r', 'GothamMedium', Helvetica, Arial, sans-serif;\n font-size: 11px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.18;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin-top: 15px;\n margin-left: auto;\n margin-right: auto;\n margin-bottom: 15px; \n}\n.Ends-August-20 {\n width: 96px;\n \n font-family: 'Gotham 5r', 'GothamMedium', Helvetica, Arial, sans-serif;\n font-size: 9px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.78;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin: auto;\n}\n.details-exclusions {\n width: 89px;\n height: 9px;\n font-family: 'Gotham 5r', 'GothamMedium', Helvetica, Arial, sans-serif;\n font-size: 9px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin: auto;\n}`;\n appendStyle(stylesShopRoundUpV2OnHomePage);\n var inHTMLShopRoundUpV2OnHomePage = \"\";\n inHTMLShopRoundUpV2OnHomePage = `<div data-zineone-properties=\"modal:true;container-class:z1_b_container_kohlsbannertoparrow;\" class=\"arrow_box\">\n \n \n <div class=\"box\">\n <div class=\"cross\">\n <div style=\"width: 89%;\"></div>\n \n <div class=\"close\" data-zineone-close=\"z1://close\"><a data-zineone-close=\"z1://close\" href=\"javascript:void(0);\" id=\"z1-pd-yp-close\"></a></div>\n </div>\n <div class=\"Rewards-Lockup-Horizontal\"><img class=\"Rewards-Lockup-Horizontal-image\" src=\"/account/media/images/loyaltyV2/kohls-rewards.png\"><!--<span class=\"kr\">KOHL'S REWARDS</span>--></div>\n <div class=\"MEMBER-EXCLUSIVE\">MEMBER EXCLUSIVE</div>\n <div class=\"Cant-wait-to-hit-yo\">Can’t wait to hit your next</div>\n <div class=\"dollar_reward\">\n <div class=\"dollar_reward_content\">\n <div style=\"font-size: 28px;margin-top: auto; margin-bottom: auto;font-weight: initial;\">$</div>\n <div style=\"font-size: 75.5px;font-weight: initial; margin-right: 3px;\">5</div>\n <div style=\"font-size: 28px;margin-top: auto; margin-bottom: auto;font-weight: initial;\"> reward?</div>\n \n </div>\n \n </div>\n <div class=\"Spend-25-or-more-in\">Spend $25 or more<br>in-store or online.</div>\n <div class=\"Well-add-250-to-y\">We’ll add $2.50 to your Kohl’s Rewards<br>balance to get you there. </div>\n\n <div class=\"Ends-August-20\">Ends ${hm_ends_in}.</div>\n <div class=\"details-exclusions\"><a style=\"color: #222222;font-weight: 500;\" target=\"_blank\" href=\"/ecom/OnlineOnly/BONUSPOINTS.html\"><u>details & exclusions</u></a></div>\n\n \n </div>\n </div>`;\n\n showShopRoundUpV2OnHomeDiv.innerHTML = inHTMLShopRoundUpV2OnHomePage;\n showShopRoundUpV2OnHomeDiv.style.display = \"block\";\n\n var cusId = pageData.customerDetails.customerID;\n\n if (cusId) {\n //console.log('Inside s.tl Omniture ',prop75Obj.prop75);\n var eVar39 = cusId;\n if(hm.pageName==\"Home\"){\n \n \ts.tl(this, 'o', 'ZineOne Impression', {\n \tlinkTrackVars: 'prop75,eVar39',\n \tprop75: \"w>z1rewardsrndup|b|hp\",\n \teVar39: eVar39\n });\n }\n if(hm.pageName==\"PMP\"){\n \n \ts.tl(this, 'o', 'ZineOne Impression', {\n \tlinkTrackVars: 'prop75,eVar39',\n \tprop75: \"w>z1rewardsrndup|b|pmp\",\n \teVar39: eVar39\n });\n }\n if(hm.pageName==\"PDP\"){\n \n \ts.tl(this, 'o', 'ZineOne Impression', {\n \tlinkTrackVars: 'prop75,eVar39',\n \tprop75: \"w>z1rewardsrndup|b|pdp\",\n \teVar39: eVar39\n });\n }\n\n \n\n }\n\n\n\n}\n\nfunction showShopRoundUpV2OnRewards(rwd) {\n\n var shopRoundUpV2OnRewards_replacer = document.getElementsByClassName('background-square-invite-friend kas-background-square-invite-friend');\n shopRoundUpV2OnRewards_replacer[0].style.display = 'none';\n\n\n (\"background-square-invite-friend kas-background-square-invite-friend\");\n\n var showShopRoundUpV2OnRewardsBannersDiv = document.getElementById('inviteFriendAndShopPrefContainer');\n console.log(\"showShopRoundUpV2OnRewards>>>\", showShopRoundUpV2OnRewards);\n\n console.log(\"rwd date:\" + rwd.ends_in);\n var rwd_ends_in = rwd.ends_in;\n\n\n var styleShowShopRoundUpV2OnRewardsPage = `.stru-rewards-Rectangle {\n width: 341px;\n height: 244px;\n border: solid 1px #d3e6d7;\n background-color: #eef7e6;\n}\n.stru-rewards-Cant-wait-to-hit-yo {\n /* width: 203px;\n height: 15px;*/\n font-family:'GothamBold', Helvetica, Arial, sans-serif;\n font-size: 15px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin-left: auto;\n margin-right: auto; \n margin-top: 6px;\n\n}\n.stru-rewards-Rewards-Lockup-Horizontal {\n width: 239px;\n height: 44px;\n object-fit: contain;\n margin:auto;\n }\n .stru-rewards-dollar_reward {\n font-family:'GothamBold', Helvetica, Arial, sans-serif;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #208033;\n margin-bottom: 10px;\n margin-top: 10px;\n \n}\n\n.stru-rewards-dollar_reward_content {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n margin-top: -12px;\n margin-bottom: -12px;\n}\n.stru-rewards-Spend-25-or-more-in {\n width: 280px;\n height: 48px;\n font-family: Gotham-Medium, Helvetica, Arial, sans-serif;\n font-size: 13px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.23;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n margin-top: 18px;\n margin-bottom: 12px;\n margin-left: auto;\n margin-right: auto;\n}\n.stru-rewards-Shop-Now {\n width: 68px;\n height: 13px;\n font-family: Gotham-Medium, Helvetica, Arial, sans-serif;\n font-size: 13px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n color: #222222;\n margin-left: auto;\n margin-right: auto;\n}\n.stru-rewards-Ends-August-20 {\n width: 96px;\n height: 16px;\n font-family: Gotham-Medium, Helvetica, Arial, sans-serif;\n font-size: 9px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.78;\n letter-spacing: normal;\n color: #222222;\n position: relative;\n left: -85px;\n}\n.stru-rewards-details-exclusions {\n width: 89px;\n height: 9px;\n font-family: Gotham-Medium, Helvetica, Arial, sans-serif;\n font-size: 9px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n color: #222222;\n position: relative;\n left: 72px;\n cursor: pointer;\n}\n.stru-rewards-footer\n{\n display: inline-flex;\n margin-bottom: 12px;\n margin-top: 12px;\n}\n.stru-rewards-kr-img{\n width: 250px;\n\n}\n`;\n appendStyle(styleShowShopRoundUpV2OnRewardsPage);\n\n //inviteFriendAndShopPrefContainer\n\n var innerHTMLshowShopRoundUpV2OnRewardsPage = \"\";\n innerHTMLshowShopRoundUpV2OnRewardsPage = `<div class=\"stru-rewards-Rectangle\">\n <div>\n <div class=\"stru-rewards-Rewards-Lockup-Horizontal\"><img class=\"stru-rewards-kr-img\" src=\"/account/media/images/loyaltyV2/kohls-rewards.png\"></div>\n <div class=\"stru-rewards-Cant-wait-to-hit-yo\">Can’t wait to hit your next</div>\n <div class=\"stru-rewards-dollar_reward\">\n <div class=\"stru-rewards-dollar_reward_content\">\n <div style=\"font-size: 25.2px;margin-top: auto;width: 17px;height: 25px;margin-bottom: auto;\">$</div>\n <div style=\"font-size: 68px;width: 43px;height: 68px;\">5</div>\n <div style=\"font-size: 25.2px;margin-top: auto;margin-bottom: auto;width: 103px;height: 25px;\"> reward?</div>\n \n \n \n </div>\n <div class=\"stru-rewards-Spend-25-or-more-in\">\n Spend $25 or more in-store or online.<br> We’ll add $2.50 to your Kohl’s Rewards<br> balance to get you there. \n </div>\n <div class=\"stru-rewards-Shop-Now\"><u>Shop Now</u></div>\n <div class=\"stru-rewards-footer\">\n <div class=\"stru-rewards-Ends-August-20\">Ends `;\n innerHTMLshowShopRoundUpV2OnRewardsPage += rwd_ends_in + `</div>\n <div class=\"stru-rewards-details-exclusions\" onclick=\"location.href='/ecom/OnlineOnly/BONUSPOINTS.html';\" ><u>details & exclusions</u></div>\n </div>\n </div>\n\n \n </div>\n </div> `;\n\n\n var child = document.createElement(\"div\");\n child.innerHTML = innerHTMLshowShopRoundUpV2OnRewardsPage;\n child.style = \"margin-right: 26px\";\n showShopRoundUpV2OnRewardsBannersDiv.appendChild(child);\n\n var cusId = pageData.customerDetails.customerID;\n\n if (cusId) {\n //console.log('Inside s.tl Omniture ',prop75Obj.prop75);\n\n var eVar39 = cusId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: \"w>z1rewardsrndup|b|rwd\",\n eVar39: eVar39\n });\n\n }\n}\n\n\ntry {\n //wsShopToRoundUpDataV2Code\n\n try {\n function handleShopToRoundUpDataV2Code(data) {\n debug_log(\"z1ResponsehandleShopToRoundUpDataV2Code::::\", data);\n /*if (data.pageName == \"Coupon\" && data.display_banner == \"true\") {\n showShopRoundUpV2OnCoupon(data);\n }*/\n if (data.pageName == \"Home\" && data.display_banner == \"true\") {\n showShopRoundUpV2OnHome(data);\n }\n if (data.pageName == \"PDP\" && data.display_banner == \"true\") {\n showShopRoundUpV2OnHome(data);\n }\n \tif (data.pageName == \"PMP\" && data.display_banner == \"true\") {\n showShopRoundUpV2OnHome(data);\n }\n if (data.pageName == \"Rewards\" && data.display_banner == \"true\") {\n showShopRoundUpV2OnRewards(data);\n }\n }\n } catch (resErr) {\n debug_log(\"z1ResponsehandleShopToRoundUpDataV2Code Error::::\", resErr);\n }\n\n\n var z1ResponseHandler = function(e) {\n console.log(\"stru???..\" + JSON.stringify(e));\n console.log(\"stru???..\" + e.detail);\n\n if (e.detail && e.detail.ws_shop_to_round_up_dataV2) {\n debug_log(\"e.detail...\", e.detail.ws_shop_to_round_up_dataV2);\n localStorage.setItem(\"z1_wsShopToRoundUpDataV2\", JSON.stringify(e.detail.ws_shop_to_round_up_dataV2));\n handleShopToRoundUpDataV2Code(e.detail.ws_shop_to_round_up_dataV2);\n }\n };\n document.addEventListener(\"onZ1RawData\", z1ResponseHandler, false);\n} catch (err) {\n console.log(\"Error :: Tag:: shopToRoundUpV2\" + err);\n\n}","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"Rto New UI","actionType":"z1script","script":"var debugScr = true;\ntry {\n\n var localVariable = localStorage.getItem('z1_rto_ui_v2');\n\n if(!localVariable || localVariable == null || localVariable == 'null' || localVariable == undefined || localVariable == \"undefined\")\n {\n return;\n }\n\n\n console.log('This is on the page load');\n\n\n function fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n }\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n \n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n console.log('Final HTML '+InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function(){\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n\n sendRTOOmniture(2);\n\n }\n\n };\n\n\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n\n function sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\n //Case 1: Display Omniture \n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|HP|';\n sendDisEventToC3(\"HP\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n }\n\n \n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n function formatAMPM(date) {\n var hours = date.getHours();\n var minutes = date.getMinutes();\n var ampm = hours >= 12 ? 'pm' : 'am';\n hours = hours % 12;\n hours = hours ? hours : 12; // the hour '0' should be '12'\n minutes = minutes < 10 ? '0'+minutes : minutes;\n var strTime = hours + ':' + minutes + ' ' + ampm;\n return strTime;\n }\n\n function showRTOBanner(e)\n {\n console.log(\"[ZineOne] RTO Offers tag running\");\n if (e.is_copied == 'true') return;\n // Style string for RTO\n var style = `\n\n .popupPromoText {\n\n font-size: 1.85em;\n margin-bottom: 5px;\n\n }\n\n .z1_b_container_kohlsbannertoparrow_rto {\n font-family: 'Gotham 5r';\n position: fixed;\n padding: 0px;\n z-index: 1000;\n background: transperant;\n transition: all 1s ease-in;\n -webkit-animation: fadein 2s;\n /* Safari, Chrome and Opera > 12.1 */\n -moz-animation: fadein 2s;\n /* Firefox < 16 */\n -ms-animation: fadein 2s;\n /* Internet Explorer */\n -o-animation: fadein 2s;\n /* Opera < 12.1 */\n animation: fadein 2s;\n {\n z1_position_val\n }\n }\n\n @keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n /* Firefox < 16 */\n\n @-moz-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n /* Safari, Chrome and Opera > 12.1 */\n\n @-webkit-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n /* Internet Explorer */\n\n @-ms-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n /* Opera < 12.1 */\n\n @-o-keyframes fadein {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n\n\n .arrow_box {\n position: absolute;\n text-align:center;\n left: 50%;\n transform: translate(-50%,100%);\n bottom: -20px;\n background: #ffffff;\n border: 1px solid #bfbfbf;\n padding: 1rem;\n border-radius: 0.6rem;\n width: 238px;\n -webkit-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);\n -moz-box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);\n box-shadow: 0px 2px 10px 7px rgba(70, 70, 70, 0.8);\n }\n .arrow_box:after,.arrow_box:before {\n \n content: \" \";\n \n position: absolute;\n }\n .arrow_box:after {\n border-color: rgba(255, 255, 255, 0);\n border-bottom-color: #ffffff;\n border-width: 20px;\n margin-left: -20px;\n }\n .arrow_box:before {\n width: 22px;\n height: 22px;\n background: #ffffff;\n z-index: 100;\n transform: translate(-50%, -50%) rotate(45deg);\n top: 1px;\n left: 50%;\n box-shadow: -6px -6px 5px 1px #999;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .z1_b_box_style {\n position: relative;\n \n }\n .z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 {\n padding-left: 0px !important;\n margin-left: 0px;\n min-width: none;\n max-width: none;\n align-self: center;\n }\n .z1_b_container_kohlsbannertoparrow_rto .z1_b_c1 img {\n min-width: 64px;\n max-width: 64px;\n min-height: 64px;\n max-height: 64px;\n }\n .z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 {\n padding: 0 10px;\n font-size: 0.9em !important;\n line-height: 1.5;\n }\n .z1_b_container_kohlsbannertoparrow_rto .z1_b_c2 .titleText {\n background: url('https://d2p4r375zfkzm8.cloudfront.net/zb-design-com/arrowdown3.png') no-repeat 0 2px;\n font-weight: bold;\n color: #000;\n \n font-size: 1.08em;\n padding: 0px 0 3px 20px;\n line-height: 1.4;\n }\n .z1_b_container_kohlsbannertoparrow_rto .closeBtn {\n cursor: pointer;\n position: absolute;\n right: 3px;\n top: 8px;\n width: 20px;\n height: 20px;\n margin: 0;\n padding: 0;\n font-size: 19px;\n font-family: 'Gotham 4r';\n }\n .z1_b_container_kohlsbannertoparrow_rto .closeBtn img {\n border-bottom-left-radius: 50%;\n border-top-left-radius: 50%;\n border-bottom-right-radius: 50%;\n border-top-right-radius: 50%;\n height: 13px;\n width: 13px;\n opacity: 1;\n }\n .z1_b_container_kohlsbannertoparrow_rto .offerPrice {\n font-size: 1.3em;\n color: #e8342c;\n padding-right: 8px;\n \n }\n .z1_b_container_kohlsbannertoparrow_rto .usernameText {\n font-size: 17px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.47;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n }\n .z1_b_container_kohlsbannertoparrow_rto .todaytext {\n font-size: 1.5em;\n color: #3a3a3a;\n font-weight: 400;\n \n margin: 5px 0px;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto #offerDuration, .z1_b_container_kohlsbannertoparrow_rto .offerDuration {\n font-weight: bold;\n font-size: 24px;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .todaytext div#offerDurationUnits {\n display: flex;\n flex-direction: column;\n text-align: left;\n font-size: 0.8em;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .savetext_row {\n padding: 0.6rem 0;\n }\n .z1_b_container_kohlsbannertoparrow_rto .cupontext {\n font-size: 14px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.07;\n letter-spacing: -0.4px;\n text-align: center;\n color: #000000;\n margin: 20px;\n \n }\n .z1_b_container_kohlsbannertoparrow_rto .cupontext span {\n font-weight: bold;\n color: #005553;\n }\n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer {\n background: #005553;\n text-transform: uppercase;\n color: #060606;\n padding: 0.40rem 1.85rem;\n border-radius: 2.2px;\n text-decoration: none;\n margin: 12px auto;\n letter-spacing: 1px;\n font-size: 13px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 0.6;\n letter-spacing: 0.5px;\n text-align: center;\n color: #ffffff;\n width: 138px;\n height: 31px;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy{content: \"Copy Offer\"} \n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover span {\n display: none;\n }\n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copy:hover:before {\n /* background:#d2e2d3;\n color: #005553; */\n content: \"Click to Copy\";\n }\n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied:before{content: \"Copied\"}\n .z1_b_container_kohlsbannertoparrow_rto .btn_addoffer.copied{background-color: #d2e2d3;color: #005553;}\n\n.z1_b_container_kohlsbannertoparrow_rto .bottom_link {\n margin-top: 25px;\n font-size: 12px;\n font-weight: normal;\n font-style: normal;\n font-stretch: normal;\n line-height: 0.92;\n letter-spacing: normal;\n text-align: center;\n color: #444444;\n }\n .z1_b_container_kohlsbannertoparrow_rto .bottom_link a{\n text-decoration:underline;\n color:#969696;\n font-size:0.8rem;\n line-height:1.2;\n }\n .z1_b_container_kohlsbannertoparrow_rto .bottom_link a:hover{\n color:#333;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .saveMsg{\n font-size: 17px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.47;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .offerText{\n font-size: 37.1px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 0.49;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n margin: 20px 0;\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n \n\n .z1_b_container_kohlsbannertoparrow_rto .treatText{\n font-size: 17px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .treatTextNew{\n font-size: 1.2em;\n margin-bottom: 10px;\n color: #000;\n display:none;\n }\n\n\n\n\n .z1_b_container_kohlsbannertoparrow_rto .saveCont.saveMsg {\n margin-top: 8px;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .uptillTime{\n font-weight:900;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue{\n font-size: 2em;\n }\n\n .treatTextLatest{\n font-size: 14px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #222222;\n\n }\n\n .btn_offer_container{\n margin: 25px;\n }\n\n .z1-rto-dollar_reward {\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n margin-bottom: 10px;\n } \n .z1-rto-dollar_reward_content {\n display: flex;\n flex-wrap: wrap;\n justify-content: center;\n } \n .z1-rto-dollar-text {\n font-size: 34.2px;\n margin-top: auto;\n width: 20px;\n height: 25px;\n margin-bottom: auto;\n } \n .z1-rto-dollar-text-amount {\n font-size: 68px;\n height: 68px;\n letter-spacing: -3px;\n } \n .z1-rto-dollar-text-dOff-outer {\n margin-top: 15px;\n margin-bottom: auto;\n height: 25px;\n } \n .z1-rto-dollar-text-dOff-off {\n font-size: 16px;\n margin-left: -26px;\n position: relative;\n top: 4px;\n } \n .z1-rto-dollar-text-dOff-off-amount {\n font-size: 38px;\n position: relative;\n top: -4px;\n left: -5px;\n text-shadow: -1px 1px 0 #fff, 1px 1px 0 #fff, 1px -1px 0 #fff, -1px -1px 0 #fff;\n } \n .z1-rto-dollar-text-dOff-off-miniDollar {\n height: -1px;\n font-size: 23px;\n position: relative;\n top: -9px;\n } \n .z1-rto-dollar-text-dOff-off-miniDollarAmount {\n letter-spacing: -1px;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto.loyalty {\n background-color: #e9f4cc;\n }\n\n .loyalty .usernameText {color: #208033;}\n .loyalty .saveMsg {color: #208033;}\n .loyalty .offerText {color: #208033;}\n .loyalty #rtoOfferCode {color: #208033;}\n .loyalty .z1-rto-dollar_reward_content {color: #208033;}\n .loyalty .btn_addoffer {background: #208033;}\n .loyalty.arrow_box:after{border-bottom-color: #208033;}\n .loyalty.arrow_box:before {\n background: #208033;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto.loyalty .bottom_link a{\n color: #444444;\n }\n\n .loyalty-cont.disable {display:none}\n .loyalty-cont.enable {display:block}\n\n .loyalty-cont{\n background-color: #208033;\n position: relative;\n top: -17px;\n left: -17px;\n width: 272px;\n height: 60px;\n border-radius: 0.6em 0.6em 0 0;\n color: #fff;\n }\n\n .loyalty-cont .heading-1 {\n padding-top: 15px;\n font-size: 16px;\n }\n\n .loyalty-cont .heading-2 {\n padding-top: 8px;\n font-size: 12px;\n }\n\n \n .z1_b_container_kohlsbannertoparrow_rto.loyalty .closeBtn{\n z-index: 1;\n color: #fff;\n }\n\n .z1_b_container_kohlsbannertoparrow_rto.loyalty .loyalty-cont.disable{\n\n display:block;\n\n }\n\n\n .element_v2 {display:none;}\n\n .ui_v2 .element_v1 {display:none;}\n .ui_v2 .element_v2 {display:block;}\n\n #v2-take {position: absolute;left: 42px;top: 85px;}\n\n .ui_v2 .z1-rto-dollar-text {font-size: 36.9px;height: 5px;}\n .ui_v2 .z1-rto-dollar-text-amount{font-size: 82px;padding: 5px;}\n\n .ui_v2 {font-family: 'Gotham 5r';}\n\n .ui_v2 .z1-rto-dollar-text-dOff-off{ \n font-size: 25.6px;\n margin-left: 0px;\n top: 45px;\n font-weight: bold;\n }\n\n .ui_v2 .z1-rto-dollar_reward {margin-top: 5px;}\n\n .ui_v2 .treatText {margin-top: 25px;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .treatText {margin-top: 15px;font-size: 16px;color: #000;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .offerDuration {color: #000;font-size:20px;margin-top: 5px;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .saveMsg {font-weight: normal;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .usernameText {font-weight: normal;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .cupontext {color: #005553;font-size: 15px;}\n\n .ui_v2.z1_b_container_kohlsbannertoparrow_rto .bottom_link a {color: #444444;}\n\n\n\n .ui_v2.dollar_fix .z1-rto-dollar-text-dOff-off{\n\n top: 20px;\n\n }\n\n\n .ui_v2.dollar_fix #v2-take {\n\n top: 70px;\n\n }\n\n .ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText{\n margin: 30px 0;\n margin-bottom: 25px;\n }\n\n .ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .rtoOfferValue{\n font-size: 89.7px;\n }\n\n .ui_v2.dollar_fix.z1_b_container_kohlsbannertoparrow_rto .offerText{\n font-size:40.4px;\n }\n\n\n `;\n\n console.log('Before RTO Style');\n\n appendStyle(style);\n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n\n domstr_val = `<div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div><div class='offerText'>`+dolStr+`<span id='rtoOfferValue' class='rtoOfferValue'></span><span class=\"z1-rto-dollar-text-dOff-off element_v2\">off</span>`+`</div>`;\n\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\"; \n\n domstr_val = `<div class='offerText'>`+`<span id='rtoOfferValue' class='rtoOfferValue'></span>`+pctStr+`</div>`; \n } \n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = `<div class=\"z1-rto-dollar_reward\">\n\n <div id=\"v2-take\" class=\"saveMsg element_v2\">Take</div>\n\n\n <div class=\"z1-rto-dollar_reward_content\">\n <div class=\"z1-rto-dollar-text\">$</div>\n <div id='rtoOfferValue' class=\"z1-rto-dollar-text-amount\"></div>\n <div class=\"z1-rto-dollar-text-dOff-outer\">\n <span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount element_v1\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">`+e.offThres+`</span></span>\n </div>\n </div>\n </div>`;\n }\n\n\n var domstr = `<div data-zineone-properties=\"modal:true;container-class:z1_b_container_kohlsbannertoparrow_rto;\" id=\"z1-rto-div\" class=\"z1_b_container_kohlsbannertoparrow_rto arrow_box\">\n <div class=\"closeBtn\" onclick=\"var el=document.getElementById('z1-rto-div');el.innerHTML='';el.parentNode.removeChild(el);\">x</div>\n <div class=\"z1_b_c1\">\n <div class='loyalty-cont disable'>\n <div class='heading-1'>KOHL’S REWARDS®</div>\n <div class='heading-2'>MEMBER EXCLUSIVE</div>\n </div>\n <div><span class=\"usernameText\">Hi, </span><span class='saveMsg element_v1'> save</span>\n\n <div class='saveMsg element_v2'>your cart looks great!</div>\n\n </div>` + domstr_val +\n `<div class='treatText element_v1'>in the next <span id='offerDuration'></span> minutes.</div>\n <div class='saveMsg element_v2'>the items in your cart!</div>\n\n <div class='treatTextNew'>Valid until <span id='uptillTime' class='uptillTime'></span></div>\n <div class='treatTextLatest element_v1'>(Go ahead, treat yourself!)</div>\n\n <div class='element_v2'>\n <div class='treatText'>Check out in the next</div>\n <div class='offerDuration'><span id='offerDurationv2'></span> minutes.</div>\n </div>\n\n <div class=\"cupontext\">PROMO CODE: <span id='rtoOfferCode'></span></div>\n <div class=\"btn_offer_container\"><a class=\"btn_addoffer\"><span id='btn_addoffer'></span></a></div>\n <div class=\"bottom_link\"><a id='discliamer_href' href=\"#\" target='_default'>details & exclusions</a></div>\n <input type=\"text\" id=\"textCopy\" style='opacity:0;pointer-events:none'/> \n </div>\n </div>`;\n\n \n\n var t = document.createRange().createContextualFragment(domstr);\n\n console.log('Before RTO Z1 Widget');\n\n document.getElementById('z1widget').append(t);\n\n\n document.getElementById('rtoOfferValue').append(e.offerValue);\n document.getElementById('rtoOfferCode').append(e.offerCode);\n document.getElementById('textCopy').value = e.offerCode; \n document.getElementById('offerDuration').append(e.offerDuration);\n\n document.getElementById('offerDurationv2').append(e.offerDuration);\n\n \n\n document.getElementById('discliamer_href').href = e.disclaimer;\n\n\n var uptillTime = new Date();\n uptillTime.setMinutes(uptillTime.getMinutes() + Number(e.offerDuration));\n\n var uptillTimeStr = formatAMPM(uptillTime);\n\n document.getElementById('uptillTime').append(uptillTimeStr + '.');\n\n \n if(document.getElementsByClassName('first-name')[0] && document.getElementsByClassName('first-name')[0].innerText.toLowerCase()!=\"account\")\n {\n document.getElementsByClassName('usernameText')[0].innerText = document.getElementsByClassName('first-name')[0].innerText + ','; \n }\n else\n {\n document.getElementsByClassName('saveMsg')[0].innerText = \"Save\";\n }\n\n\n if(e.loyaltyCx == true)\n {\n document.getElementById('z1-rto-div').classList.add('loyalty');\n }\n\n if(e.cta == \"COPY\")\n {\n document.getElementById('btn_addoffer').innerText = \"COPY OFFER\";\n document.getElementsByClassName('btn_addoffer')[0].classList.add('copy');\n }\n\n if(e.cta == \"ADD\" || e.cta == \"WALLET\")\n {\n document.getElementById('btn_addoffer').innerText = \"ADD OFFER\";\n }\n\n\n document.getElementsByClassName('btn_addoffer')[0].onclick = function() {\n if(e.cta == 'COPY')\n {\n\n var copyTextField = document.getElementById('textCopy');\n copyTextField.select();\n\n var copied = document.execCommand (\"copy\");\n\n console.log('Got Copied Status '+copied);\n \n document.getElementsByClassName('btn_addoffer')[0].classList.add('copied');\n e.is_copied = 'true';\n localStorage.setItem('z1_supc',JSON.stringify(e));\n\n return;\n } \n\n var urlToGo = '/checkout/shopping_cart.jsp?redeemCoupon=true';\n\n\n if(e.cta == 'WALLET')\n {\n if(pageData && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue)\n {\n var cartValue = parseInt(pageData.cartDetails.cartSubTotalValue);\n\n //alert('Got Cart Value '+cartValue);\n if(cartValue == 0)\n {\n urlToGo = '/wallet/my_wallet.jsp#offers';\n }\n\n } \n }\n\n\n location.href=urlToGo;\n\n };\n\n\n sendRTOOmniture(1);\n\n\n }\n\n\n\n\n function getDayLightOffset()\n {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth()+1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow; \n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n \n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n\n function checkForLocalRTO()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n var e = JSON.parse(existingSupc);\n\n var offerExpiry = e.offerExpiry;\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n console.log(e.offerExpiry+\" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n console.log(endTime+\" timeCheck Main: \" + currentTime);\n\n var timeCheck = endTime-currentTime;\n\n if(timeCheck > 0)\n {\n if(e.is_redeemed != true)\n {\n\n var expiryInMinutes = Math.ceil((timeCheck)/(60));\n\n e.offerDuration = expiryInMinutes;\n\n showRTOBanner(e); \n }\n }\n else\n {\n return false;\n }\n \n\n \n console.log(\" timeCheck: \" + timeCheck);\n\n return true;\n\n\n }\n\n return false;\n }\n\n function _handleRawRTOData(e) {\n // alert('Got raw data...' + JSON.stringify(e));\n console.log('Got Raw RTO data: ' + e);\n\n if(e)\n {\n e = JSON.parse(e);\n\n if(e.rtoOfferData)\n {\n e = e.rtoOfferData;\n\n localStorage.setItem('z1_supc',JSON.stringify(e));\n\n showRTOBanner(e);\n }\n\n\n fireOmniture(e);\n }\n \n \n }\n\n\n try {\n //var z1Widgets = ZineOne.getZ1Widget();\n //z1Widgets.registerWidgetHandler(\"raw\", _handleRawRTOData);\n } catch (e) {\n console.log('Could not register handler for Raw RTO Data.');\n }\n\n if(getUrlParameter('redeemCoupon') == 'true')\n {\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n }\n\n\n if(checkForLocalRTO() == true)\n {\n return;\n }\n\n localStorage.setItem('z1_supc',null);\n\n\n var evtName = '_ws_rto_offers';\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n if(isSoftLoggedIn == 'true' || isLoggedIn == 'true')\n {\n //ZineOne.pushEvent(evtName, {});\n }\n}\ncatch(e)\n{\n if (debugScr) console.log(\"[Zineone] Error in Rto New UI Tag: WebStore Z1 tag. \" + e);\n}\n\n","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"bedding-bed-bath"}},{"tagName":"RTO Order Review New","actionType":"z1script","script":"var debugScr = true;\ntry {\n\n var localVariable = localStorage.getItem('z1_rto_ui_v2');\n\n if(!localVariable || localVariable == null || localVariable == 'null' || localVariable == undefined || localVariable == \"undefined\")\n {\n return;\n }\n\n\n var rtoTimeRemaining = 0;\n\n console.log('This is on RTO Review Page');\n\n\n function fireOmniture(z1Response) {\n\n //////***** whats the s.tl(this) ??? */\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n\n }\n\n\n // Appends style tag\n function appendStyle(styles) {\n var css = document.createElement('style');\n css.type = 'text/css';\n\n if (css.styleSheet) css.styleSheet.cssText = styles;\n else css.appendChild(document.createTextNode(styles));\n\n document.getElementsByTagName(\"head\")[0].appendChild(css);\n }\n\n function appendJs(jsStr)\n {\n var jsElement = document.createElement('script');\n\n var t = document.createTextNode(jsStr);\n jsElement.appendChild(t);\n\n document.getElementsByTagName(\"head\")[0].appendChild(jsElement);\n \n }\n\n\n function getDayLightOffset()\n {\n //Automatically adjust for GMT to Central Timediff based on Daylight savings\n //Returns number of hours Central is behind GMT\n //\n var now = new Date();\n //test data\n var test = now.getTime(); //238*24*3600000;\n var nowUtc = new Date(test);\n var month = nowUtc.getMonth()+1; //make jan=1\n\n if (month < 3 || month > 11) return 6; // savings=F\n if (month > 3 && month < 11) return 5; // savings=T\n\n // switch if >2nd sun in march or >1st sun in nov\n // switches at midnight UTC, so 5 or 6 hrs away from 2AM Central\n\n var tzDiffInHours; //UTC vs Central diff in hours\n var day = nowUtc.getDate(); //already 1 based\n var dow = nowUtc.getDay(); //already sun=0\n var previousSunday = day - dow; \n if (month == 3) tzDiffInHours = (previousSunday >= 8) ? 5 : 6;\n if (month == 11) tzDiffInHours = (previousSunday < 0) ? 5 : 6;\n \n //java.lang.System.out.println(\"@@@@@@ Daylight savings computed variable=\"+tzDiff);\n //var tzDiffInHours = 5; //Change on sunday nov 4, 2018, to 6hrs\n\n return tzDiffInHours;\n }\n\n\n function convertUTCtoCST(dateObj)\n {\n var dayLightOffset = getDayLightOffset();\n return new Date(dateObj.getTime() - ((1 * 60 * 60 * 1000) * dayLightOffset));\n }\n\n\n function getTimeFromApiFormat(dateStr)\n {\n var dateStrSplit = dateStr.split(' ');\n\n var dateSplit = dateStrSplit[0].split('-');\n var timeSplit = dateStrSplit[1].split(':');\n\n var dateObj = new Date();\n dateObj.setYear(dateSplit[0]);\n dateObj.setMonth(dateSplit[1]-1);\n dateObj.setDate(dateSplit[2]);\n\n dateObj.setHours(timeSplit[0]);\n dateObj.setMinutes(timeSplit[1]-1);\n dateObj.setSeconds(timeSplit[2]);\n\n var dateObj = new Date((dateObj.getTime() - dateObj.getTimezoneOffset()*60*1000)/1000);\n\n console.log(dateObj.getTime()+' getTimeFromApiFormat '+dateObj);\n\n return dateObj.valueOf();\n\n }\n\n\n function updateSupcDetails()\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n if(existingSupc.is_redeemed == true)\n {\n if(document.getElementById(\"show_offer_status\"))\n {\n document.getElementById(\"show_offer_status\").innerHTML = \"\";\n document.getElementById(\"link_applynow\").style.display = \"none\";\n document.getElementById(\"link_applynow2\").style.display = \"none\";\n }\n \n //document.getElementById('reviewApplyNow').innerHTML = 'Applied';\n //document.getElementById('reviewApplyNow').href='javascript:void(0)';\n }\n else\n {\n console.log(\"document.getElementById('reviewApplyNow')\",document.getElementById('reviewApplyNow'));\n\n if(document.getElementById('reviewApplyNow'))\n {\n document.getElementById('reviewApplyNow').text ='APPLY NOW'; \n }\n \n }\n }\n\n\n function addDataToRedemptionPopup(popupDiv,promoCode)\n {\n //console.log(' addDataToRedemptionPopup '+document.getElementsByClassName('kc-applyContainer')[0]);\n\n var InitPopupContent = document.getElementsByClassName('kc-applyContainer')[0];\n \n\n var promoTextContent = '<div class=\"popupPromoText\">Your promo code is already entered, click Apply to redeem.</div>';\n\n\n console.log('Final HTML '+InitPopupContent);\n\n InitPopupContent.insertAdjacentHTML(\"afterbegin\", promoTextContent);\n\n //document.getElementsByClassName('kc-applyContainer')[0].innerHTML = InitPopupContent;\n\n document.getElementById('promo-kcInput').value = promoCode;\n\n document.getElementById('applyInputButton').onclick = function(){\n\n var currentPromoCode = document.getElementById('promo-kcInput').value;\n\n if(currentPromoCode == promoCode)\n {\n var existingSupc = localStorage.getItem('z1_supc');\n\n existingSupc = JSON.parse(existingSupc);\n\n existingSupc.is_redeemed = true;\n\n localStorage.setItem('z1_supc',JSON.stringify(existingSupc));\n\n\n updateSupcDetails();\n\n sendRTOOmniture(2);\n\n }\n\n };\n\n }\n\n\n function populateUsername()\n {\n\n\n var usernameText = document.getElementById('usernameText');\n\n console.log(trJsonData.userData.firstName+' populateUsername '+usernameText);\n\n if(trJsonData.userData.firstName)\n {\n document.getElementById('usernameText').innerHTML = trJsonData.userData.firstName +', save';\n\t\t\tdocument.getElementById('usernameText2').innerHTML = trJsonData.userData.firstName+' '+trJsonData.userData.lastName+',';\n \t\n }\n else\n {\n document.getElementById('usernameText').innerHTML = 'Save';\n }\n \n\n console.log('usernameText '+document.getElementById('usernameText').innerHTML);\n \n }\n\n\n\n function showRTOReviewSection(e)\n {\n // Style string for RTO\n var style = `\n\n .popupPromoText {\n\n font-size: 1.85em;\n margin-bottom: 5px;\n\n }\n\n .z1_orderreview_container {\n background-color: #d5e1d4;\n /*display: flex;\n align-content: space-between;\n align-items: center;*/\n height: 85px;\n }\n \n .z1_orderreview_container {\n font-family: 'Gotham 5r';\n border: 1px solid #717171;\n padding: 0.5rem 0.2rem;\n margin-bottom: 0.6rem;\n /*display: -webkit-flex;\n display: flex;\n justify-content: space-between;*/\n color: #454545;\n /*align-content: space-between;\n align-items: center;*/\n }\n \n #username-container {\n font-size: 17px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.06;\n letter-spacing: normal;\n color: #005553;\n text-align: center;\n }\n \n .z1_orderreview_container #price-container {\n flex-shrink: 0;\n display: flex;\n align-items: center;\n }\n \n .z1_orderreview_container #price-container .priceTag {\n margin-top: 8px;\n font-size: 28.4px;\n font-weight: bold;\n line-height: 0.49;\n color: #005553;\n text-align: center;\n font-style: normal;\n font-stretch: normal;\n }\n \n .z1_orderreview_container #price-container #rtoOfferValue {\n font-size: 63.2px;\n font-weight: 700;\n letter-spacing: -4.4px;\n color: #005553;\n display: block;\n }\n \n #message-container {\n font-size: 13px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1;\n letter-spacing: normal;\n color: #222222;\n width: 76px;\n margin: auto;\n }\n \n #time-container {\n display: flex;\n text-align: center;\n font-size: 9.7px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n color: #222222;\n margin: auto;\n }\n \n #show_min,\n #show_sec {\n width: 61px;\n height: 39px;\n background-color: #005553;\n border: 1px solid #e3e3e3;\n margin: 0.3rem;\n font-size: 29.9px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n color: #d2e2d3;\n text-align: center;\n box-sizing: border-box;\n }\n \n #show_min,\n #show_sec {\n width: 61px;\n height: 39px;\n background-color: #005553;\n border: 1px solid #e3e3e3;\n margin: 0.3rem;\n font-size: 29.9px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n color: #d2e2d3;\n text-align: center;\n box-sizing: border-box;\n }\n \n #promo-container {\n width: 60%;\n }\n \n /*.z1_orderreview_container #link_applynow {\n text-transform: uppercase;\n text-align: center;\n padding-top: 0.3rem;\n font-family: 'Gotham 5r';\n font-size: 13px;\n font-weight: normal;\n }\n \n .z1_orderreview_container #link_applynow a {\n text-decoration: underline;\n color: #000;\n font-weight: 700;\n }*/\n \n .z1_orderreview_container #show_offer_status {\n font-family: 'Gotham 5r';\n font-size: 13px;\n text-transform: uppercase;\n text-decoration: none;\n color: #000;\n font-weight: normal;\n text-align: center;\n }\n \n .z1_orderreview_container .promocodecontainer {\n text-transform: uppercase;\n /*padding: 0.7rem 0;*/\n text-align: center;\n margin: 15px auto;\n }\n \n .z1_orderreview_container .promocodecontainer h4 {\n font-family: 'Gotham 5r';\n font-size: 13px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.08;\n letter-spacing: -0.4px;\n text-align: center;\n color: #000000;\n }\n \n #rtoOfferCode {\n font-weight: bold;\n color: #005553;\n }\n \n .z1_orderreview_container .promocodecontainer h5 {\n font-family: 'Gotham 5r';\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.08;\n letter-spacing: -0.4px;\n text-align: center;\n color: #005553;\n font-size: 13px;\n }\n \n .z1_orderreview_container>* {\n /*margin: 10px;*/\n }\n \n #z1-rto-new-outerDiv {\n display: flex;\n flex-direction: row;\n justify-content: space-evenly;\n }\n \n .z1-rto-dollar_reward {\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n line-height: normal;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n position: relative;\n top: -8px;\n }\n \n .z1-rto-dollar_reward_content {\n display: flex;\n flex-wrap: wrap;\n }\n \n .z1-rto-dollar-text {\n font-size: 25.2px;\n width: 14px;\n height: 36px;\n position: relative;\n top: 27px;\n }\n \n .z1-rto-dollar-text-amount {\n font-size: 60px;\n height: 68px;\n letter-spacing: -3px;\n }\n \n .z1-rto-dollar-text-dOff-outer {\n margin-top: 21px;\n margin-bottom: auto;\n height: 20px;\n }\n \n .z1-rto-dollar-text-dOff-off {\n font-size: 15px;\n margin-left: -26px;\n position: relative;\n top: 1px;\n }\n \n .z1-rto-dollar-text-dOff-off-amount {\n font-size: 32px;\n position: relative;\n top: -4px;\n left: -6px;\n text-shadow: -1px 1px 0 #d5e1d4, 1px 1px 0 #d5e1d4, 1px -1px 0 #d5e1d4, -1px -1px 0 #d5e1d4;\n }\n \n .z1-rto-dollar-text-dOff-off-miniDollar {\n height: -1px;\n font-size: 20px;\n position: relative;\n top: -9px;\n }\n \n .z1-rto-dollar-text-dOff-off-miniDollarAmount {\n letter-spacing: -1px;\n top: -2px;\n left: -1px;\n position: relative;\n }\n \n #z1-tro-new-promoCodeText {\n font-size: 13px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1.08;\n letter-spacing: -0.4px;\n text-align: center;\n color: #005553;\n font-weight: bold;\n }\n \n #z1-rto-new-addOfferContainer {\n text-align: center;\n margin: auto;\n }\n \n .btn_offer_container {\n margin: 25px;\n }\n \n #z1-rto-new-addOfferContainer .bottom_link {\n text-align: center;\n margin-top: 3px;\n }\n \n #z1-rto-new-addOfferContainer .bottom_link a {\n font-size: 11px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1;\n letter-spacing: normal;\n text-align: center;\n color: #000000;\n }\n \n #link_applynow, #link_applynow2 {\n background: #005553;\n text-transform: uppercase;\n border-radius: 2.2px;\n text-decoration: none;\n letter-spacing: 1px;\n font-size: 13px;\n font-weight: bold;\n font-style: normal;\n font-stretch: normal;\n text-align: center;\n width: 104px;\n height: 31px;\n color: white;\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 0 auto;\n } \n /* start old */\n .tag_min, .tag_sec {\n font-family: 'Gotham 5r';\n font-size: 11px;\n text-transform: uppercase;\n text-align: center;\n color: #454545;\n margin-top: 0.3rem;\n font-weight: 700;\n }\n\n .loyalty #username-container {\n text-align: left;\n color: #208033;\n }\n\n .loyalty #show_min, .loyalty #show_sec {background-color: #208033;}\n\n .loyalty #price-container .priceTag {color: #208033;}\n .loyalty #price-container #rtoOfferValue {color: #208033;}\n\n .loyalty .promocodecontainer #z1-tro-new-promoCodeText {color: #208033;}\n .loyalty .promocodecontainer #rtoOfferCode {color: #208033;}\n .loyalty .btn_addoffer {background: #208033;}\n\n .loyalty #link_applynow {background: #208033;}\n .loyalty #link_applynow2 {background: #208033;}\n\n\n .loyalty-cont.disable {display:none}\n .loyalty-cont.enable {display:block}\n\n .loyalty-cont\n {\n text-align: center;\n background-color: #208033;\n height: 20px;\n position: relative;\n top: -8px;\n left: -3px;\n width: 598px;\n padding-top: 7px;\n color: #fff;\n font-size: 14px;\n }\n\n .z1_orderreview_container.loyalty{\n height: 115px;\n }\n\n .loyalty .heading-2 {\n font-weight: lighter;\n font-family: 'Gotham 4r';\n }\n\n .z1_orderreview_container.loyalty .loyalty-cont.disable{\n\n display:block;\n\n }\n\n\n .z1_orderreview_container_2 {\n background-color: #d5e1d4;\n display: flex;\n justify-content: space-between;\n align-items: center;\n height: 85px;\n }\n \n .z1_orderreview_container_2 {\n font-family: 'Gotham 5r';\n border: 1px solid #717171;\n padding: 10px 10px;\n margin-bottom: 0.6rem;\n color: #454545;\n \n }\n\n #first-div{\n display:flex;\n flex-direction:column;\n justify-content: space-around;\n }\n #second-div{\n display:flex;\n flex-direction:column;\n justify-content: space-around;\n text-align:center;\n }\n #third-div{\n display:flex;\n flex-direction:column;\n justify-content: space-around;\n }\n\n\n\t.usernameText2{\n\t\n width: 200px;\n height: 15px;\n font-size: 14px;\n font-weight: 500;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.14;\n letter-spacing: normal;\n text-align: center;\n color: #005553;\n\n\t}\n\n\t.price-container-2{\n\t width: 200px;\n height: 38px;\n font-size: 28px;\n font-weight: bold;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.36;\n letter-spacing: normal;\n color: #005553;\n text-align: center;\n margin-top: 5px;\n\t}\n\n .price-container-2-msg{\n width: 200px;\n height: 34px;\n font-size: 14px;\n font-weight: bold;\n font-stretch: normal;\n font-style: normal;\n letter-spacing: normal;\n color: #005553;\n text-align: center;\n }\n\n .show_min_msg{width: 206px;\n height: 17px;\n \n font-size: 15px;\n font-weight: 500;\n font-stretch: normal;\n font-style: normal;\n \n letter-spacing: normal;\n \n color: #222222;}\n\n\t.show_min_2{font-size: 19px;\n font-weight: bold;\n color: #222222;}\n\n.promocodecontainer-2{ \n height: 30px;\n \n font-size: 13px;\n font-weight: bold;\n font-stretch: normal;\n font-style: normal;\n line-height: 1.31;\n letter-spacing: -0.4px;\n text-align: center;\n color: #000000;\n margin-top: 15px;}\n\n\n\n .element_v2 {display:none;}\n\n .ui_v2 .element_v1 {display:none;}\n .ui_v2 .element_v2 {display:block;}\n\n\n #username-container-2 {margin-top: 20px;}\n\n\n .ui_v2 .bottom_link {margin-top: 10px;}\n\n #z1-rto-new-addOfferContainer-2 .bottom_link a {font-size: 11px;\n font-weight: 500;\n font-style: normal;\n font-stretch: normal;\n line-height: 1;\n letter-spacing: normal;\n text-align: center;\n color: #000000;\n }\n\n\n #rtoOfferValue2 {margin-left: -8px;}\n\n\n .ui_v2 .show_min_msg {height: 20px;}\n\n\n\n `;\n\n console.log('Before RTO Style');\n\n appendStyle(style);\n\n\n var currentDate = new Date();\n\n currentDate = convertUTCtoCST(currentDate);\n var currentTime = currentDate.valueOf();\n\n console.log(e.offerExpiry+\" Got Offer Expiry \");\n\n var endTime = getTimeFromApiFormat(e.offerExpiry);\n\n\n currentTime = Number(currentTime.toString().substring(0,currentTime.toString().length - 3));\n\n console.log(endTime+\" timeCheck Main: \" + currentTime);\n\n rtoTimeRemaining = (endTime-currentTime);\n\n if(rtoTimeRemaining <= 0)\n {\n return;\n }\n\n rtoTimeRemaining = rtoTimeRemaining*1000;\n\n var expiryInMinutes = Math.ceil((endTime-currentTime)/(60));\n\n e.offerDuration = expiryInMinutes;\n\n\n console.log(\" rtoTimeRemaining: \" + rtoTimeRemaining);\n\n var rtoTimejsStr = 'var rtoTimeRemaining = '+rtoTimeRemaining;\n\n appendJs(rtoTimejsStr);\n\n\n var javscriptStr = `\n // Set the TIME we're counting down from\n //var distance = 1*30*1000; //12min\n\n // Update the count down every 1 second\n var x = setInterval(function() {\n\n // Time calculations for days, hours, minutes and seconds\n var days = Math.floor(rtoTimeRemaining / (1000 * 60 * 60 * 24));\n var hours = Math.floor((rtoTimeRemaining % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\n var minutes = Math.floor((rtoTimeRemaining % (1000 * 60 * 60)) / (1000 * 60));\n var seconds = Math.floor((rtoTimeRemaining % (1000 * 60)) / 1000);\n seconds = (\"0\" + seconds).slice(-2);\n minutes = (\"0\" + minutes).slice(-2);\n\n // Output the result in an element with id=\"show_min and show_sec\"\n\n if(document.getElementById(\"show_min\"))\n {\n document.getElementById(\"show_min\").innerHTML = minutes;\n document.getElementById(\"show_sec\").innerHTML = seconds;\n }\n \n\n // If the count down is over, write some text \n if (rtoTimeRemaining <= 0) {\n clearInterval(x);\n //document.getElementById(\"timercontainer\").style.display = \"none\";\n document.getElementById(\"link_applynow\").style.display = \"none\"; \n document.getElementById(\"show_offer_status\").innerHTML = \"EXPIRED\";\n\n return;\n }\n rtoTimeRemaining = rtoTimeRemaining - 1000;\n }, 1000);\n `;\n\n appendJs(javscriptStr);\n \n var domstr_val = \"\";\n var dolStr = \"$\";\n var pctStr = \"\";\n var domstr_val_2=\"\";\n\n domstr_val = `<div id=\"price-container\">\n <span class=\"priceTag\">`+dolStr+`</span>\n <span id=\"rtoOfferValue\"></span>\n </div>`;\n domstr_val_2 = `<div id=\"price-container\">\n <span class=\"priceTag\">Take `+dolStr+` off</span>\n <span id=\"rtoOfferValue\"></span>\n </div>`;\n\n if (e.offType == \"PERCENT_FIX\") {\n pctStr = \"%\"; \n\n domstr_val = `<div id=\"price-container\">\n <span id=\"rtoOfferValue\"></span>\n <span class=\"priceTag\" style=\"margin:5px\">`+pctStr+`</span>\n </div>`; \n } \n\n if (e.offType == \"DOLLAR_THR\") {\n domstr_val = `<div class=\"z1-rto-dollar_reward\">\n <div class=\"z1-rto-dollar_reward_content\">\n <div class=\"z1-rto-dollar-text\">$</div>\n <div class=\"z1-rto-dollar-text-amount\" id=\"rtoOfferValue\"></div>\n <div class=\"z1-rto-dollar-text-dOff-outer\">\n <span class=\"z1-rto-dollar-text-dOff-off\">off</span> <br><span class=\"z1-rto-dollar-text-dOff-off-amount\"><span class=\"z1-rto-dollar-text-dOff-off-miniDollar\">$</span><span class=\"z1-rto-dollar-text-dOff-off-miniDollarAmount\">`+e.offThres+`</span></span>\n </div>\n </div>\n </div>`;\n }\n\n\n var domstr = `\n <div class='main-cont'>\n <div class='element_v1'>\n <div class=\"z1_orderreview_container\">\n\n <div class='loyalty-cont disable'>\n <span class='heading-1'>KOHL’S REWARDS®</span>\n <span class='heading-2'>MEMBER EXCLUSIVE</span>\n </div>\n\n <div id=\"username-container\">\n <div id=\"usernameText\">Hi, take</div>\n </div>\n <div id=\"z1-rto-new-outerDiv\">`+domstr_val+`\n <div id=\"message-container\">when you<br> place your<br> order in<br> the next..</div>\n <div id=\"time-container\">\n <div id=\"min-container\">\n <div id=\"show_min\">45</div>\n <div class=\"tag_min\">MINUTES</div>\n </div>\n <div id=\"sec-container\">\n <div id=\"show_sec\">39</div>\n <div class=\"tag_sec\">SECONDS</div>\n </div>\n </div>\n <div class=\"promocodecontainer\">\n <div id=\"z1-tro-new-promoCodeText\">Promo Code:</div>\n <div id=\"rtoOfferCode\"></div>\n </div>\n <div id=\"z1-rto-new-addOfferContainer\">\n <div id=\"link_applynow\"><a id=\"reviewApplyNow\" style=\"color:white;text-decoration: none;\" href=\"#\">ADD OFFER</a></div>\n <div id=\"show_offer_status\"></div>\n\n <div class=\"bottom_link\"><a id=\"discliamer_href\" href=\"`+e.disclaimer+`\" target=\"_default\">details &amp; exclusions</a></div>\n </div>\n </div>\n </div>\n </div>\n\n <div class='element_v2'>\n <div class=\"z1_orderreview_container_2\">\n <div id=\"first-div\">\n <div id=\"username-container-2\">\n <div id=\"usernameText2\" class=\"usernameText2\">Hi, take</div>\n <div class='usernameText2'>your cart looks great!</div>\n </div>\n\n <div id=\"price-container-2\" class=\"price-container-2\">\n <span class=\"priceTag\">Take `+dolStr+`</span>\n <span id=\"rtoOfferValue2\"></span>\n <span>off</span>\n </div>\n <div id=\"price-container-2-msg\" class=\"price-container-2-msg\">\n the items in your cart!\n </div>\n \n </div>\n <div id=\"second-div\">\n <div id=\"min-container-2\">\n <div id=\"show_min_msg\" class=\"show_min_msg\">Checkout in the next</div>\n <div id=\"show_min_2\" class=\"show_min_2\"><span id='offerDuration' class='offerDuration'> </span> minutes.</div>\n </div>\n <div class=\"promocodecontainer-2\">\n <div id=\"z1-tro-new-promoCodeText_2\">PROMO CODE:</div>\n <div id=\"rtoOfferCode2\"></div>\n </div>\n </div>\n <div id=\"third-div\">\n <div id=\"z1-rto-new-addOfferContainer-2\">\n <div id=\"link_applynow2\"><a id=\"reviewApplyNow2\" style=\"color:white;text-decoration: none;\" href=\"#\">ADD OFFER</a></div>\n <div id=\"show_offer_status\"></div>\n\n <div class=\"bottom_link\"><a id=\"discliamer_href\" href=\"`+e.disclaimer+`\" target=\"_default\">details &amp; exclusions</a></div>\n </div>\n </div>\n \n </div>\n </div>\n </div>\n`;\n \n \n \n\n console.log('Before RTO Reiview Widget');\n\n //document.querySelector('#checkoutreview #shopping_Bag_Lpanel').insertAdjacentHTML(\"afterbegin\", domstr);\n\tdocument.querySelector('#checkoutreview #shopping_Bag_Lpanel').insertAdjacentHTML(\"afterbegin\", domstr);\n\n document.getElementById('rtoOfferValue').append(e.offerValue);\n document.getElementById('rtoOfferValue2').append(e.offerValue);\n\n document.getElementById('rtoOfferCode').append(e.offerCode);\n document.getElementById('rtoOfferCode2').append(e.offerCode);\n \n document.getElementById('offerDuration').append(e.offerDuration);\n\n if(e.loyaltyCx == true)\n {\n document.getElementsByClassName('z1_orderreview_container')[0].classList.add('loyalty');\n }\n\n document.getElementById('reviewApplyNow').onclick = function(){\n\n\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function(){\n\n\n console.log(\"kohlscashapply Click \"); \n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function(){ \n\n console.log(\"Checking for Redemption Popup \"+timeCounter); \n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n console.log('Got Popup Div '+popupDiv);\n\n if(popupDiv != undefined && popupDiv != null)\n {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv,e.offerCode);\n\n return;\n }\n\n if(timeCounter > maxCounter)\n {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n };\n\n\n\n document.getElementById('reviewApplyNow2').onclick = function(){\n\n\n document.getElementsByClassName(\"kohlscashapply\")[0].onclick = function(){\n\n\n console.log(\"kohlscashapply Click \"); \n\n var timeCounter = 0;\n var maxCounter = 10;\n var timeDelay = 500;\n\n var popupCheck = setInterval(function(){ \n\n console.log(\"Checking for Redemption Popup \"+timeCounter); \n\n var popupDiv = document.getElementsByClassName('kc-applyContainer')[0];\n\n //var popupDiv = document.getElementById('promo-kcInput');\n\n console.log('Got Popup Div '+popupDiv);\n\n if(popupDiv != undefined && popupDiv != null)\n {\n clearInterval(popupCheck);\n\n\n //setTimeout(function(){ }, 500);\n\n var parentDiv = document.getElementById('tr-wallet-content-placeholder');\n\n addDataToRedemptionPopup(parentDiv,e.offerCode);\n\n return;\n }\n\n if(timeCounter > maxCounter)\n {\n clearInterval(popupCheck);\n }\n\n timeCounter++;\n\n }, timeDelay);\n\n\n\n };\n\n document.getElementsByClassName(\"kohlscashapply\")[0].click(); \n };\n\n\n \n\n\n \n populateUsername();\n\n updateSupcDetails();\n\n sendRTOOmniture(1);\n\n\n \n\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n\n function sendDisEventToC3(pageName,type,existingSupc)\n {\n var eventName = '_ws_rto_page_report';\n\n var sessionStartTime = getSessionStartTime();\n\n\n var returnObj = {};\n returnObj.pgN = pageName;\n returnObj.sessionStartTime = sessionStartTime;\n returnObj.type = type;\n returnObj.rtoName = existingSupc.rtoName;\n returnObj.identifier = existingSupc.identifier;\n\n ZineOne.pushEvent(eventName, returnObj);\n\n }\n\n\n //Case 1: Display Omniture \n //Case 2: Redemption Omniture\n function sendRTOOmniture(caseToSend)\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n if(caseToSend == 1)\n {\n prop75 = prop75+'CP|OR|';\n sendDisEventToC3(\"OR\",\"shown\",existingSupc);\n }\n\n if(caseToSend == 2)\n {\n prop75 = prop75+'OM|';\n sendDisEventToC3(\"OM\",\"redeem\",existingSupc);\n }\n\n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n\n\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n var e = JSON.parse(existingSupc);\n showRTOReviewSection(e);\n\n return;\n }\n\n\n localStorage.setItem('z1_supc',null);\n\n\n var evtName = '_ws_rto_offers';\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n\n\n \n \n}\ncatch(e)\n{\n if (debugScr) console.log(\"[Zineone] Error in RTO Order Review Tag: WebStore Z1 tag. \" + e);\n}\n ","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"checkout/v2/checkout.jsp"}},{"tagName":"Order Details","actionType":"z1script","script":"try\n{\n\t\n\n\tvar debugScr = false;\n var cartValue = 0;\n\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n if (debugScr) console.log(\"[ZineOne] Entering PlaceOrder Tag\");\n\n var evtName = \"_ws_placedorder\";\n\n var presentVector = null;\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n var isLoggedIn = \"\";\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n }\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n function fireOmniture(z1Response) {\n\n if (z1Response && z1Response.prop75) {\n var eVar39 = z1Response.evar39 ? z1Response.evar39 : z1Response.customerId;\n s.tl(this, 'o', 'ZineOne Impression', {\n linkTrackVars: 'prop75,eVar39',\n prop75: z1Response.prop75,\n eVar39: eVar39\n });\n\n }\n\n }\n\n\n\n function sendRTOOmniture()\n {\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n\n existingSupc = JSON.parse(existingSupc);\n\n var prop75 = existingSupc.omniturePrefix+'|';\n prop75 = prop75 + 'C:' + existingSupc.offerCampaign + '|';\n prop75 = prop75 + existingSupc.identifier + '|';\n\n\n prop75 = prop75+'OR|'; \n \n //prop75 = prop75+'P:'+existingSupc.pscore+'|';\n //prop75 = prop75+'O:'+existingSupc.offerValue+'|';\n //prop75 = prop75+'T:'+pageData.cartDetails.cartSubTotalValue+'|';\n //prop75 = prop75+'OC:'+existingSupc.offerCode;\n\n var prop75Obj = {};\n prop75Obj['prop75'] = prop75;\n\n console.log('Got Prop 75 ',prop75Obj);\n\n fireOmniture(prop75Obj);\n\n }\n }\n\n\n function checkForPreviousEvent(presentVector,previousVector)\n {\n if(presentVector.event == eventCodes._ws_placedorder)\n {\n if(presentVector.event == previousVector.event)\n {\n console.log('Current Event is same as previous event');\n return false;\n }\n }\n \n\n return true;\n }\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n function getSessionStartTime()\n {\n var userVector = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n var timeVector = userVector.timeVector.toString().split('|');\n\n return timeVector[0];\n }\n\n function validateForNotNull(obj)\n {\n //console.log('validateForNotNull',obj,typeof(obj));\n if(!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0)\n {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array,attribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\",attribute,array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\",mainAttribute,innerAttribute,array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ',spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr,innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array,mainAttribute,innerAttribute)\n {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if(array.length == 0)\n {\n return stringVector;\n }\n\n for(var i=0;i<array.length;i++)\n {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n \n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0,stringVector.length-1);\n\n return stringVector;\n\n }\n\n function fetchCartDump()\n {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if(validateForNotNull(cartData))\n {\n for(var i=0;i<cartData.length;i++)\n {\n if(i == 15)\n {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if(validateForNotNull(currentObj.storeClearance))\n {\n currentFinalObjToSend.sc = currentObj.storeClearance; \n }\n \n if(validateForNotNull(currentObj.itemProperties.size))\n {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n \n if(validateForNotNull(currentObj.itemProperties.color))\n {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n \n if(validateForNotNull(currentObj.itemProperties.isWebExclusive))\n {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive; \n }\n \n\n var finalInvInfo = {};\n\n if(validateForNotNull(currentObj.inventoryInfo.shipAvailable))\n {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if(validateForNotNull(currentObj.inventoryInfo.bopusAvailable))\n {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.bossAvailable))\n {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable; \n }\n \n if(validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip))\n {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip; \n }\n \n if(validateForNotNull(currentObj.finalInvInfo))\n {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo; \n }\n \n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ',currentPromoInfo);\n\n if(validateForNotNull(currentPromoInfo))\n {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for(var j=0;j<currentPromoInfo.length;j++)\n {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if(validateForNotNull(currentPromoObj.promoType))\n {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType; \n }\n \n if(validateForNotNull(currentPromoObj.promoText))\n {\n prTextArr[prTextArr.length] = currentPromoObj.promoText; \n }\n \n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n \n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ',currentOfferInfo);\n\n if(validateForNotNull(currentOfferInfo))\n {\n var finalOfferInfoArray = [];\n\n for(var j=0;j<currentOfferInfo.length;j++)\n {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if(validateForNotNull(currentOfferInfoObj.offerDiscount))\n {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount; \n }\n \n if(validateForNotNull(currentOfferInfoObj.startDate))\n {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate; \n }\n \n if(validateForNotNull(currentOfferInfoObj.endDate))\n {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate; \n }\n \n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n \n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ',shipmentInfo);\n\n if(validateForNotNull(shipmentInfo))\n {\n var finalshipmentInfoArray = [];\n\n for(var j=0;j<shipmentInfo.length;j++)\n {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {}; \n\n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges))\n {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount))\n {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta))\n {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta; \n }\n \n if(validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal))\n {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal; \n }\n \n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if(validateForNotNull(shippingOffers))\n {\n var finalshippingOfferArray = [];\n\n for(var k=0;k<shippingOffers.length;k++)\n {\n var currentshippingOffersObj = shippingOffers[k];\n\n if(validateForNotNull(currentshippingOffersObj.discountAmount))\n {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount; \n }\n \n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary; \n\n var finalOrderSummaryObj = {};\n\n if(validateForNotNull(orderSummary.merchandisePromoAmount))\n {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount; \n }\n \n if(validateForNotNull(orderSummary.discountedShippingAmount))\n {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n \n if(validateForNotNull(orderSummary.originalShippingAmount))\n {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated))\n {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate))\n {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate; \n }\n \n if(validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax))\n {\n finalOrderSummaryObj.tax = orderSummary.tax.tax; \n }\n \n if(validateForNotNull(orderSummary.totalSurcharges))\n {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges; \n }\n \n if(validateForNotNull(orderSummary.totalTaxFee))\n {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee; \n }\n \n if(validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts))\n {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts; \n }\n \n if(validateForNotNull(orderSummary.totalTax))\n {\n finalOrderSummaryObj.totTax = orderSummary.totalTax; \n }\n \n if(validateForNotNull(orderSummary.total))\n {\n finalOrderSummaryObj.total = orderSummary.total; \n }\n \n if(validateForNotNull(orderSummary.savings))\n {\n finalOrderSummaryObj.sav = orderSummary.savings; \n }\n \n if(validateForNotNull(orderSummary.taxFeeEnabled))\n {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled; \n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if(!isValid(persistLocalData)){\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n function fetchMcmId()\n {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n function getPresentVector() \n {\n try {\n\n console.log('getPresentVector');\n\n if(pageData.cartDetails)\n {\n cartValue = pageData.cartDetails.cartSubTotalValue;\n }\n\n if(presentVector != null && Object.keys(presentVector).length > 0)\n {\n return presentVector;\n }\n\n presentVector = {};\n\n var itemsInBag = Number(localStorage.getItem(\"z1_checkoutBagCount\"));\n\n \n\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() \n {\n try \n {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n\n if(!checkForPreviousEvent(presentVector,previousVector))\n {\n return;\n }\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) \n {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try {\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if(validateForNotNull(cartDump))\n {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for(var k=0;k<cartKeys.length;k++)\n {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n \n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if(validateForNotNull(newUserVectors))\n {\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n }catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = '_ws_placedorder';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) \n {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue= cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n if(validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge))\n {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n }\n else\n {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n } \n else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) \n {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for(var k=0;k<newVectorKeys.length;k++)\n {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n function init()\n {\n\n \n var edata = {};\n \n edata.productIdList = localStorage.getItem('z1_checkoutProductIdList')+\"\";\n\n\n var presVec = getPresentVector();\n var sessionStartTime = getSessionStartTime();\n\n edata.time = presVec.time;\n edata.sessionStartTime = sessionStartTime;\n\n\n var cartValue = 0;\n var cartItems = 0;\n var finalCartQuantity = 0;\n\n if(pageData.cartDetails)\n {\n cartValue = pageData.cartDetails.cartSubTotalValue;\n\n\n cartItems = pageData.cartDetails.cartItems.length;\n\n for(var i=0;i<cartItems;i++)\n {\n finalCartQuantity = finalCartQuantity + Number(pageData.cartDetails.cartItems[i].quantity);\n }\n }\n\n if(cartValue == 0 || finalCartQuantity == 0)\n {\n if(trJsonData && trJsonData.orderSummary && trJsonData.orderSummary.merchandisePromoAmount)\n {\n cartValue = Number(trJsonData.orderSummary.merchandisePromoAmount);\n\n if(trJsonData.cartItems)\n {\n cartItems = trJsonData.cartItems.length;\n\n for(var i=0;i<cartItems;i++)\n {\n finalCartQuantity = finalCartQuantity + Number(trJsonData.cartItems[i].quantity);\n }\n }\n \n\n }\n }\n\n edata.cartValue = cartValue;\n edata.cartItems = finalCartQuantity;\n\n\n if(isValid(pageData) && isValid(pageData.orderConfirmation) && isValid(pageData.orderConfirmation.orderID))\n {\n var orderId = pageData.orderConfirmation.orderID;\n var promoCodes = pageData.orderConfirmation.promoCodes;\n\n\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n\n\n var temp = {};\n temp.orderId = orderId;\n temp.eventVector = userVectors.eventVector;\n temp.promoCodes = promoCodes;\n\n edata.orderId = orderId;\n //edata.eventVector = userVectors.eventVector;\n edata.promoCodes = promoCodes;\n\n //ZineOne.pushEvent(\"_ws_confirmedOrder\", temp);\n\n }\n\n\n var existingSupc = localStorage.getItem('z1_supc');\n\n if(existingSupc != null && existingSupc != undefined && existingSupc != 'null')\n {\n existingSupc = JSON.parse(existingSupc);\n\n var currentPromoCode = existingSupc.offerCode;\n\n if(edata.promoCodes.toString().indexOf(currentPromoCode) != -1)\n {\n\n\n edata.supc_redeemed = 'true';\n\n sendRTOOmniture();\n \n localStorage.setItem('z1_supc',null);\n \n // if(existingSupc.offType == \"DOLLAR_THR\")\n // {\n // if(cartValue >= parseFloat(existingSupc.offThres))\n // {\n // edata.supc_redeemed = 'true';\n\n // sendRTOOmniture();\n \n // localStorage.setItem('z1_supc',null);\n // }\n // }\n // else\n // {\n \n // }\n }\n\n edata.rtoName = existingSupc.rtoName;\n edata.identifier = existingSupc.identifier;\n\n }\n \n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n\n var presentVectorTmp = {};\n presentVectorTmp.event = eventCodes._ws_placedorder;\n\n if(!checkForPreviousEvent(presentVectorTmp,previousVector))\n {\n return;\n }\n\n \n\n console.log(\"[ZineOne] Firing _ws_placeOrder Event...\");\n ZineOne.pushEvent(evtName, edata);\n updateUserVectors();\n\n \t\n }\n\n\n init();\n\n}\ncatch(e)\n{\n console.log('Error in order details Tag '+e);\n console.log(e);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"checkout/v2/order_confirm"}},{"tagName":"FSG new tag","actionType":"z1script","script":"try {\n\n /*function isIE() {\n var ua = window.navigator.userAgent; //Check the userAgent property of the window.navigator object\n var msie = ua.indexOf('MSIE '); // IE 10 or older\n var trident = ua.indexOf('Trident/'); //IE 11\n return (msie > 0 || trident > 0);\n };\n var isIEFlag = isIE();\n if (!isIEFlag) return;\n var cust_id = pageData.customerDetails.customerID ? pageData.customerDetails.customerID : \"\";\n if ( !(cust_id == \"3000000030411692\" || cust_id == \"3000000126553504\") ) return;*/\n console.log(\"[Zineone-I] FSG NEW TAG IE\");\n\n var debug = true;\n\n if(debug) console.log(\"ZINEONE fsg_new_tag\");\n\n var fsgKillSwitch = false;\n\n if (fsgKillSwitch) return;\n\n var TIME_TO_LIVE = 0;\n\n var isValid = function(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n return true;\n };\n\n var isNumeric = function(value) {\n return /^-{0,1}\\d+$/.test(value);\n };\n\n var getCookie = function(name) {\n var value = document.cookie.match(new RegExp('(^| )' + name + '=([^;]+)'));\n return (value != null) ? unescape(value[2]) : null;\n };\n\n var vID = localStorage.getItem(\"z1_cust_id\");\n if (!isValid(vID)) {\n vID = localStorage.getItem(\"z1_connectUserId\");\n }\n var timestamp = new Date().getTime();\n var send = false;\n var userLoginStatus = pageData.customerDetails.isLoggedIn;\n\n var pg = Z1.window.browserInfo.pagePath;\n var pgName = \"unknownPage\";\n var chkout = false;\n var elementToWatchFor = \"\";\n\n if (pg == \"/\") {\n pgName = \"Home\";\n } else if (pg.startsWith(\"/product\")) {\n pgName = \"PDP\";\n } else if (pg.startsWith(\"/catalog\")) {\n pgName = \"PMP\";\n } else if (pg.startsWith(\"/search\")) {\n pgName = \"Search\";\n } else if (pg.startsWith(\"/checkout\")) {\n pgName = \"Cart\";\n chkout = true;\n if (pg.endsWith(\"shopping_cart.jsp\")) {\n pgName = \"Cart\";\n } else if (pg.endsWith(\"v2/checkout.jsp\")) {\n pgName = \"Checkout\";\n }\n }\n\n elementToWatchFor = (document.getElementsByClassName(\"subtotal\") && document.getElementsByClassName(\"subtotal\")[0]) ? document.getElementsByClassName(\"subtotal\")[0] : \"\";\n\n\n if(debug) console.log(\"ZINEONE FSG NEW elementToWatchFor...\", elementToWatchFor);\n\n if (elementToWatchFor == \"\") return;\n\n //getFSGConfig\n var defaultFSGConfig = {\n '_d': \"0\",\n '_t': \"75\"\n };\n var guestFSGConfig = {\n '_d': \"1\",\n '_t': \"75\"\n };\n\n var paintFSG = function(cartData, fsgData){\n if(debug) console.log(\"ZINEONE FSG NEW paintFSG START\");\n var freeShippingDelta = 0;\n var thresh = fsgData._t;\n var showthreshold = \"$\" + fsgData._t;\n var cartTotal = 0;\n var subTotal = 0;\n var percentageFill = 0;\n cartTotal = cartData.orderSummary.merchandisePromoAmount;\n if(debug) console.log(\"ZINEONE FSG NEW thresh...\", thresh, \"...cartTotal...\", cartTotal);\n if ((cartData != null) && (cartData.shipmentInfo.length > 0)) {\n for (var k = 0; k < cartData.shipmentInfo.length; k++) {\n if ((cartData.shipmentInfo[k].shippingMethod == \"BOPUS\") || (cartData.shipmentInfo[k].shippingMethod == \"BOSS\")) {\n continue;\n } else if (cartData.shipmentInfo[k].shippingMethod == \"STD\") {\n freeShippingDelta = cartData.shipmentInfo[k].shipmentPriceInfo.freeShipQualificationDelta;\n break;\n }\n }\n } else {\n freeShippingDelta = (thresh - cartTotal).toFixed(2);\n }\n if(debug) console.log(\"ZINEONE FSG NEW freeShippingDelta...\", freeShippingDelta);\n subTotal = freeShippingDelta > 0 ? (thresh - freeShippingDelta).toFixed(2) : freeShippingDelta === 0 && cartTotal >= thresh ? thresh : 0; // returns total-delta\n if (subTotal == 0) return;\n if(debug) console.log(\"ZINEONE FSG NEW subTotal...\", subTotal);\n percentageFill = Math.round(100 / thresh * subTotal);\n\n if(debug) console.log(\"ZINEONE FSG NEW percentageFill...\", percentageFill);\n\n //var meterBar = '<div id=\"js-meter-summary-2\" style=\"display:block\" class=\"tce-small-ship-meter-cartDetails\"><div class=\"tce-small-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter2\" class=\"tce-small-ship-meter-cartDetails-meter\"></div><div class=\"tce-small-ship-meter-cartDetails-right\"> ' + showthreshold + '</div> </div>';\n var diffUI = ($('.freeShipMessFirst') && $('.freeShipMessFirst')[0]) ? true : false;\n var meterBar = \"\";\n if (diffUI) {\n meterBar = '<div style=\"margin:20px;\"></div><div id=\"js-meter-summary-2\" style=\"display:block\" class=\"tce-small-ship-meter-cartDetails\"><div class=\"tce-small-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter2\" class=\"tce-small-ship-meter-cartDetails-meter\"></div><div class=\"tce-small-ship-meter-cartDetails-right\"> ' + showthreshold + '</div> </div>';\n } else {\n meterBar = '<div id=\"js-meter-summary-2\" style=\"display:block\" class=\"tce-small-ship-meter-cartDetails\"><div class=\"tce-small-ship-meter-cartDetails-left\">$0</div><div id=\"js-free-shipping-meter2\" class=\"tce-small-ship-meter-cartDetails-meter\"></div><div class=\"tce-small-ship-meter-cartDetails-right\"> ' + showthreshold + '</div> </div>';\n }\n var noMeterBar = '<div id=\"js-meter-summary-2\" style=\"display: none;\" class=\"tce-small-ship-meter-freeShipDetails\">You&rsquo;ve earned free shipping!</div>';\n if(debug) console.log(\"ZINEONE FSG NEW subTotal...\", subTotal);\n if(debug) console.log(\"ZINEONE FSG NEW thresh...\", thresh);\n if(debug) console.log(\"ZINEONE FSG NEW condition1...\", (subTotal > 0));\n if(debug) console.log(\"ZINEONE FSG NEW condition2...\", (subTotal < thresh));\n if(debug) console.log(\"ZINEONE FSG NEW condition...\", (subTotal > 0 && subTotal < thresh));\n var miniCart = (Number(subTotal) > 0 && Number(subTotal) < Number(thresh)) ? meterBar : noMeterBar; // (subTotal > 0 && subTotal < thresh) ? meterBar : noMeterBar;\n\n if(debug) console.log(\"ZINEONE FSG NEW percentageFill...\", miniCart);\n if (pgName == \"Cart\") {\n if(debug) console.log(\"ZINEONE FSG NEW before appending testing...\", ($('#js-free-shipping-meter2')[0] ? \"meter shown\" : \"no meter\"));\n var isMeterExist = $('#js-free-shipping-meter2')[0] ? true : false;\n if (!isMeterExist) {\n $(\".freeShipSuggestMessage\").append(miniCart);\n }\n //$(\".freeShipSuggestMessage\").append(miniCart);\n $(\"#js-free-shipping-meter1, #js-free-shipping-meter2\").css({\n background: \"linear-gradient(to right,#167d9a 0%,#167d9a \" + percentageFill + \"%,rgb(220, 238, 240) \" + percentageFill + \"%,rgb(220, 238, 240) 100%)\",\n \"border-radius\": \"2px\"\n });\n } else if (pgName != \"Cart\") {\n if(debug) console.log(\"ZINEONE FSG NEW before appending testing...\", ($('#js-free-shipping-meter2')[0] ? \"meter shown\" : \"no meter\"));\n var isMeterExist = $('#js-free-shipping-meter2')[0] ? true : false;\n if (!isMeterExist) {\n $(\".tr_phase2_add_padding_ghr\").append(miniCart);\n }\n $(\"#js-free-shipping-meter1, #js-free-shipping-meter2\").css({\n background: \"linear-gradient(to right,#167d9a 0%,#167d9a \" + percentageFill + \"%,rgb(255, 255, 255) \" + percentageFill + \"%,rgb(255, 255, 255) 100%)\",\n \"border-radius\": \"2px\"\n });\n if(debug) console.log(\"ZINEONE FSG NEW after appending testing...\", ($('#js-free-shipping-meter2')[0] ? \"meter shown\" : \"no meter\"));\n }\n if(debug) console.log(\"ZINEONE FSG NEW paintFSG END\");\n }\n\n var miniCartBar = function(fsgData) {\n if(debug) console.log(\"ZINEONE FSG NEW miniCartBar function!\", fsgData);\n if (pgName != \"Cart\") {\n if(debug) console.log(\"ZINEONE FSG NEW Not on Cart Page\");\n let s = Kjs.PB.getPbCartStorage();\n if(!isValid(s)) return;\n if(debug) console.log(\"ZINEONE FSG NEW s...\",s);\n paintFSG(s, fsgData);\n } else {\n if(debug) console.log(\"ZINEONE FSG NEW On Cart Page\");\n let s = trJsonData;\n if (!isValid(s)) return;\n if (s != \"null\" && s.status != \"Failure\") {\n paintFSG(s, fsgData);//trJsonData is available in all browsers\n }\n }\n };\n\n var fsg = function(fsgData) {\n if(debug) console.log(\"ZINEONE FSG NEW FUNCTION CALLED!\", fsgData);\n\n //////////SAIKAT - Test////////////\n if(debug) console.log(\"ZINEONE - Landed fsg function and setting localStorage\");\n localStorage.setItem('z1_fsg_data', JSON.stringify(fsgData));\n ///////////////////////////////////\n\n //var fsgStyles = \"<style type=\\\"text/css\\\"> #tce-ship-meter {display: block;clear: both;}.tce-meter-copy {position: absolute;top: 50%;left: 8em;transform: translateY(-50%);}.tce-meter-copy p {font-size: 16px;color: #000; font-family:'Gotham 5r', Helvetica, sans-serif;text align:center;}.tce-meter-copy span {font-size: 16px;color: #108281; font-family:'Gotham 5r', Helvetica, sans-serif;}.tce-meter-bar * {all: unset;}.tce-meter-bar {position: absolute;float: left;width: 315px;left: 49em;top: 1.2em;}.tce-meter-bar p {display: block;-webkit-margin-before: 1em;-webkit-margin-after: 1em;-webkit-margin-start: 0;-webkit-margin-end: 0;}.tce-ship-meter-cartDetails {width:100%;text-align:center;max-width: 1044px;margin-left: auto;margin-right: auto;display:block;position:relative;height:39px;text-align: center;background-color:#f0f0f0;}.tce-ship-meter-cartDetails__gauge {display: block;height: auto; width:100%;}.tce-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 13px;position: absolute;left: 2.5em;}.tce-ship-meter-cartDetails-left {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;color: #000;font-weight: bold;position: absolute;left: 0;}.tce-ship-meter-cartDetails-right {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;font-weight: bold;color: #000;position: absolute;left: 112%;top: 0;}.tce-small-ship-meter-cartDetails {display:block;position:relative;width: 158px;height: 28px;top: 18px;margin-top:2px;}.tce-small-ship-meter-cartDetails-left {font-size: 11px;color:#3e3e3e;font-weight:bold;position:absolute;font-family:'Gotham 4r', Helvetica, sans-serif;}.tce-small-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 9px;position: absolute;left: 2.5em;margin-left: -8px;}.tce-small-ship-meter-cartDetails-right {font-size: 11px;font-weight: bold;color:#3e3e3e;position: absolute;left: 125%;top: 0;font-family:'Gotham 4r', Helvetica, sans-serif;margin-left: -12px;}.tce-small-ship-meter-freeShipDetails {clear:both;height: 20px;font-family: 'Gotham 5r','GothamBold',Helvetica,Arial,sans-serif;font-size: 11px; font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: -0.24px;color: #15718a;top: 5px;position: relative;}.tce-small-ship-text-z1{font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: -0.24px;text-align: center;color: #15718a;font-family: 'Gotham 5r', Helvetica, sans-serif;margin-left: 5px;}</style>\";\n \tvar fsgStyles = \"<style type=\\\"text/css\\\"> #tce-ship-meter {display: block;clear: both;}.tce-meter-copy {position: absolute;top: 50%;left: 8em;transform: translateY(-50%);}.tce-meter-copy p {font-size: 16px;color: #000; font-family:'Gotham 5r', Helvetica, sans-serif;text align:center;}.tce-meter-copy span {font-size: 16px;color: #108281; font-family:'Gotham 5r', Helvetica, sans-serif;}.tce-meter-bar * {all: unset;}.tce-meter-bar {position: absolute;float: left;width: 315px;left: 49em;top: 1.2em;}.tce-meter-bar p {display: block;-webkit-margin-before: 1em;-webkit-margin-after: 1em;-webkit-margin-start: 0;-webkit-margin-end: 0;}.tce-ship-meter-cartDetails {width:100%;text-align:center;max-width: 1044px;margin-left: auto;margin-right: auto;display:block;position:relative;height:39px;text-align: center;background-color:#f0f0f0;}.tce-ship-meter-cartDetails__gauge {display: block;height: auto; width:100%;}.tce-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 13px;position: absolute;left: 2.5em;}.tce-ship-meter-cartDetails-left {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;color: #000;font-weight: bold;position: absolute;left: 0;}.tce-ship-meter-cartDetails-right {font-size: 11px;font-family:'Gotham 4r', Helvetica, sans-serif;font-weight: bold;color: #000;position: absolute;left: 112%;top: 0;}.tce-small-ship-meter-cartDetails {display:block;position:relative;width: 158px;clear:both;height: 14px;padding-top:6px;/*top: 18px;margin-top:2px;*/}.tce-small-ship-meter-cartDetails-left {font-size: 11px;color:#3e3e3e;font-weight:bold;position:absolute;font-family:'Gotham 4r', Helvetica, sans-serif;}.tce-small-ship-meter-cartDetails-meter {margin: 0 auto;width: 100%;height: 9px;position: absolute;left: 2.5em;margin-left: -8px;}.tce-small-ship-meter-cartDetails-right {font-size: 11px;font-weight: bold;color:#3e3e3e;position: absolute;left: 125%;/*top: 0;*/font-family:'Gotham 4r', Helvetica, sans-serif;margin-left: -12px;}.tce-small-ship-meter-freeShipDetails {clear:both;height: 20px;font-family: 'Gotham 5r','GothamBold',Helvetica,Arial,sans-serif;font-size: 11px; font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: -0.24px;color: #15718a;top: 5px;position: relative;}.tce-small-ship-text-z1{font-weight: bold;font-style: normal;font-stretch: normal;line-height: normal;letter-spacing: -0.24px;text-align: center;color: #15718a;font-family: 'Gotham 5r', Helvetica, sans-serif;margin-left: 5px;}</style>\";\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n\n head.appendChild(style);\n\n style.type = 'text/css';\n if (style.styleSheet) {\n // This is required for IE8 and below.\n style.styleSheet.cssText = fsgStyles;\n } else {\n style.appendChild(document.createTextNode(fsgStyles));\n }\n miniCartBar(fsgData.fsg); //Default Call for CartPage\n var mutationObserver = new MutationObserver(function(mutations) {\n mutations.forEach(function(mutation) {\n if(debug) console.log(\"ZINEONE FSG NEW miniCartBar called!\");\n if(debug) console.log(\"ZINEONE FSG NEW mutation...\", mutation);\n miniCartBar(fsgData.fsg);\n });\n });\n mutationObserver.disconnect();\n mutationObserver.observe(elementToWatchFor, {\n attributes: true,\n characterData: true,\n childList: true,\n subtree: true,\n attributeOldValue: true,\n characterDataOldValue: true\n });\n };\n\n var fsg_data = localStorage.getItem(\"z1_fsg_data\");\n if (fsg_data != null && !chkout) {\n delT = (timestamp - JSON.parse(fsg_data).timestamp);\n if (vID != JSON.parse(fsg_data).visitorId) {\n send = true;\n } else if (delT / 60000 > TIME_TO_LIVE) {\n send = true;\n } else if ((!userLoginStatus) || String(userLoginStatus).includes(\"false\")) {\n send = true;\n } else {\n fsg(fsg_data);\n }\n } else {\n send = true;\n }\n\n if (send) {\n if (!isNumeric(vID)) {\n if(debug) console.log(\"ZINEONE [ZineOne] Anonymous user - \" + vID);\n var guest_fsg_data = {\n fsg: guestFSGConfig,\n timestamp: timestamp,\n visitorId: vID\n };\n localStorage.setItem('z1_fsg_data', JSON.stringify(guest_fsg_data));\n fsg(guest_fsg_data);\n } else {\n var dummy_data = {\n fsg: defaultFSGConfig,\n timestamp: timestamp,\n visitorId: vID\n };\n localStorage.setItem('z1_fsg_data', JSON.stringify(dummy_data));\n ZineOne.pushEvent(\"_ws_z1__sb_fsg\", {});\n }\n }\n\n var z1ResponseHandler = function(e) {\n if(debug) console.log(\"ZINEONE Reached z1ResponseHandler in FSG NEW TAG\");\n if (e.detail && e.detail.fsg) {\n fsg(e.detail);\n }\n };\n document.addEventListener(\"onZ1RawData\", z1ResponseHandler, false);\n} catch (e) {\n console.log(\"ZINEONE Error in fsg_new_tag \" + e);\n}","eventName":"load","pageSelector":{"type":"all","condition":"equals","val":""}},{"tagName":"addtobagNew","actionType":"z1script","script":"\n var debugScr = true;\ntry {\n console.log(\"In addtobagNew\");\n\n var addToBagClickHandler = function() {\n\n\n \n console.log(\"In addtobagNew clicked\");\n /*\n * Manish: Webstore instrumentation for all pages except OrderConfirmation and MyAccount\n * Varun: Added isNumeric to check if CustomerID is for Guest User\n * Manish: 05/18 Moved addEventData() to within try-catch block\n * Juzer: Checking for persistent_bar_components_json_v1 for ProductId before pushEvent\n * Juzer: Added ML Instrumentation\n * Juzer: Race condition validation check for the product count\n */\n try {\n \n var cartValue = 0;\n var currentUserCartArr = [];\n\n var isJsonNull = false;\n\n if (debugScr) console.log(\"[ZineOne] addtobag Event will be triggered\");\n\n var evtName = \"_ws_addedtobag\";\n\n //Event Codes for vectors:\n var eventCodes = {\n _ws_addedtobag: \"A\",\n breachedgeofence: \"B\",\n _ws_completeshipping: \"C\",\n exitgeofence: \"D\",\n _ws_placedorder: \"E\",\n _ws_searched: \"F\",\n _ws_startedcheckout: \"G\",\n _ws_viewedcart: \"H\",\n _ws_viewedcatalog: \"I\",\n _ws_viewedhome: \"J\",\n _ws_viewedproduct: \"K\",\n _ws_completepayment: \"L\",\n _ws_viewedsku: \"M\",\n _ws_update_hcart: \"N\",\n _ws_changedsort: \"O\",\n _ws_rto: \"R\"\n };\n\n var SESSION_GAP = 1800000; //30min = 30*60*1000 millis\n\n\n\n var evtData = {};\n\n function isNumeric(value) {\n return /^-{0,1}\\d+$/.test(value);\n }\n\n // Get cookie from user's browser/desktop\n function getCookie(name) {\n var re = new RegExp(name + \"=([^;]+)\");\n var value = re.exec(document.cookie);\n return (value != null) ? unescape(value[1]) : null;\n }\n\n function isValid(value) {\n if (value == \"null\" || value == \"undefined\" || value == null || value == undefined) {\n return false;\n }\n\n return true;\n }\n\n\n function getCurrentBagCount(cartInfo) {\n console.log('Got Cart Info ' + cartInfo);\n var itemsInBag = 0;\n\n console.log('Got Cart Items Length ' + cartInfo.cartItems.length);\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n }\n\n return itemsInBag;\n }\n\n function getSkuPriceObj(skuId)\n {\n if(pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].SKUS)\n {\n var skuArr = pageData.productDetails.pageItems[0].SKUS;\n\n for(var i=0;i<skuArr.length;i++)\n {\n var tempObj = skuArr[i]\n\n if(tempObj.skuId == skuId)\n {\n return tempObj;\n }\n }\n }\n\n return null;\n }\n\n function addEventData() {\n\n if (debugScr) {\n console.log('[Zineone] Starting to check for New Product in Cart');\n }\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n var cartInfo = JSON.parse(cartData);\n\n var prodFound = false;\n\n if (cartInfo && cartInfo.cartItems) {\n //Check if the cartInfo has the product Id\n\n var newProdId = -1;\n\n if(pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID)\n {\n newProdId = pageData.productDetails.pageItems[0].productID;\n }\n\n if (typeof productId != 'undefined') {\n\n newProdId = productId;\n }\n\n \n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var tempProdId = cartInfo.cartItems[i].productId;\n if (tempProdId == newProdId) {\n\n\n var lastBagCount = 0;\n\n if (localStorage.getItem('z1_checkoutBagCount')) {\n lastBagCount = Number(localStorage.getItem('z1_checkoutBagCount'));\n }\n\n\n var currentBagCount = getCurrentBagCount(cartInfo);\n\n if (currentBagCount > lastBagCount) {\n if (debugScr) {\n console.log('[Zineone] Found Product directly in persistent_bar_components_json_v1');\n }\n prodFound = true;\n sendEventOnSuccess();\n }\n\n }\n }\n\n }\n\n if (debugScr && prodFound == false) {\n console.log('[Zineone] Could not find product in 1st Check');\n }\n\n\n if (prodFound == false) {\n if (debugScr) {\n console.log('[Zineone] Inside prodFound == false after 1st Check');\n }\n\n var period = 500;\n var tCount = 0;\n var MAX_TCount = 10;\n\n\n\n var timer = setInterval(function() {\n try {\n tCount++;\n //if (debugScr) console.log(\"[ZineOne] timerCount=\" + tCount);\n if (prodFound == true) {\n if (debugScr) {\n console.log('[Zineone] Found Product in persistent_bar_components_json_v1 after count: ' + tCount);\n }\n\n clearInterval(timer);\n\n } else if (tCount <= MAX_TCount) {\n\n cartData = localStorage.getItem('persistent_bar_components_json_v1');\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n cartInfo = JSON.parse(cartData);\n\n // if (cartInfo == null || cartInfo.cartItems == null || cartInfo.cartItems.length <= 0)\n // return true;\n\n var newProdId = -1;\n\n if(pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID)\n {\n newProdId = pageData.productDetails.pageItems[0].productID;\n }\n\n if (typeof productId != 'undefined') {\n\n newProdId = productId;\n }\n\n console.log('CartInfo from SetInterval ', cartInfo);\n if (cartInfo.cartItems) {\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var tempProdId = cartInfo.cartItems[i].productId;\n if (tempProdId == newProdId) {\n\n\n var lastBagCount = 0;\n\n if (localStorage.getItem('z1_checkoutBagCount')) {\n lastBagCount = Number(localStorage.getItem('z1_checkoutBagCount'));\n }\n\n\n var currentBagCount = getCurrentBagCount(cartInfo);\n\n if (currentBagCount > lastBagCount) {\n if (debugScr) {\n console.log('[Zineone] Found Product in persistent_bar_components_json_v1 after count: ' + tCount);\n }\n\n prodFound = true;\n\n if (debugScr) {\n console.log('[Zineone] Before sendEventOnSuccess inside SetInterval Found After Count ' + tCount);\n }\n sendEventOnSuccess();\n\n clearInterval(timer);\n\n break;\n }\n\n }\n }\n }\n\n\n }\n } catch (ie) {\n if (debugScr) console.log(\"[Zineone] Exception in setInterval \" + ie);\n }\n }, period);\n\n\n }\n\n\n\n }\n\n\n var isSoftLoggedIn = getCookie(\"SoftLoggedInCookie\");\n if (isSoftLoggedIn && isSoftLoggedIn.includes(\"true\")) {\n if (debugScr) console.log(\"[ZineOne] Soft Logged value is:\" + isSoftLoggedIn);\n }\n // Set HardLoggedIn = true only if user is not SoftLoggedIn\n var isLoggedIn = \"\";\n\n\n if (pageData && pageData.customerDetails) {\n if (!isSoftLoggedIn || (isSoftLoggedIn && !isSoftLoggedIn.includes(\"true\"))) {\n if (pageData.customerDetails.isLoggedIn) isLoggedIn = \"true\";\n }\n }\n\n\n\n var sendevt;\n\n sendevt = addEventData();\n\n if (debugScr)\n console.log('[Zineone] AddedToBag Event Code block Complete ');\n\n\n function sendEventOnSuccess() {\n\n if (debugScr)\n console.log('[Zineone] Into SendEventOnSuccess ');\n\n var productsArr = [];\n\n var cartData = localStorage.getItem('persistent_bar_components_json_v1');\n //if (debugScr) console.log(\"[ZineOne] CartData = \" + cartData);\n var cartInfo = JSON.parse(cartData);\n\n //Send the Event even if the Cart does not have any item, so that the OpenAPI could be called\n //on the Server side\n\n var itemsInBag = 0;\n var productIdList = '';\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n var si = cartInfo.cartItems[i];\n var obj = {\n \"id\": si.cartItemId,\n \"sku\": si.skuId,\n \"webID\": si.productId,\n \"saleUnitPrice\": si.itemPriceInfo.saleUnitprice.toString(),\n \"regularUnitPrice\": si.itemPriceInfo.regularUnitPrice.toString(),\n \"quantity\": si.quantity.toString()\n };\n\n productsArr.push(obj);\n\n\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n var sku = cartInfo.cartItems[i].skuId;\n var qty = cartInfo.cartItems[i].quantity;\n\n if (i > 0) productIdList = productIdList + \"|\";\n\n productIdList = productIdList + sku + \":\" + qty;\n }\n\n\n localStorage.setItem('z1_checkoutBagCount', itemsInBag);\n localStorage.setItem('z1_checkoutProductIdList', productIdList);\n\n\n evtData[\"cartItems\"] = JSON.stringify(productsArr);\n\n evtData['page'] = \"PDP\";\n\n\n ZineOne.pushEvent(evtName, evtData);\n\n updateUserVectors();\n\n }\n\n\n function checkForPreviousEvent() {\n console.log('checkForPreviousEvent');\n\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n\n if (previousVector.event == eventCodes.viewedproduct) {\n var prevProdId = previousVector.productID;\n\n console.log('Got ProductId from previousEventVector ' + prevProdId);\n\n return prevProdId;\n }\n\n return '-';\n }\n\n\n function getUrlParameter(sParam) {\n var sPageURL = decodeURIComponent(window.location.search.substring(1)),\n sURLVariables = sPageURL.split('&'),\n sParameterName,\n i;\n\n for (i = 0; i < sURLVariables.length; i++) {\n sParameterName = sURLVariables[i].split('=');\n\n if (sParameterName[0] === sParam) {\n return sParameterName[1] === undefined ? true : sParameterName[1];\n }\n }\n }\n\n\n function validateForNotNull(obj) {\n //console.log('validateForNotNull',obj,typeof(obj));\n if (!(obj === undefined) && obj != null && obj != 'null' && obj.toString().length != 0) {\n return true;\n }\n\n return false;\n }\n\n function spltArrayObjectDataIntoVector(array, attribute) {\n var stringVector = '';\n\n console.log(\"spltArrayObjectDataIntoVector attribute\", attribute, array);\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n\n var attributeValue = '#';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[attribute])) {\n\n attributeValue = innerObj[attribute];\n\n }\n\n\n stringVector = stringVector + attributeValue + '^';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n function spltArrayObjectWithArrayObjectDataIntoVector(array, mainAttribute, innerAttribute) {\n var stringVector = '';\n\n console.log(\"spltArrayObjectWithArrayObjectDataIntoVector mainAttribute\", mainAttribute, innerAttribute, array);\n\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n var attributeValueArr = innerObj[mainAttribute];\n\n console.log('spltArrayObjectDataIntoVector ', spltArrayObjectDataIntoVector(attributeValueArr, innerAttribute));\n stringVector = stringVector + spltArrayObjectDataIntoVector(attributeValueArr, innerAttribute) + '^';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n\n function spltArrayObjectWithAttributeObjectDataIntoVector(array, mainAttribute, innerAttribute) {\n\n var stringVector = '';\n\n if (!validateForNotNull(array)) {\n\n return stringVector;\n\n }\n\n if (array.length == 0) {\n return stringVector;\n }\n\n for (var i = 0; i < array.length; i++) {\n var innerObj = array[i];\n\n var attributeValue = '-';\n if (validateForNotNull(innerObj) && validateForNotNull(innerObj[mainAttribute]) && validateForNotNull(innerObj[mainAttribute][innerAttribute])) {\n\n attributeValue = innerObj[mainAttribute][innerAttribute];\n\n }\n\n\n stringVector = stringVector + attributeValue + '~';\n }\n\n stringVector = stringVector.substring(0, stringVector.length - 1);\n\n return stringVector;\n\n }\n\n\n function checkForPreviousEvent() {\n console.log('checkForPreviousEvent');\n\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n\n if (previousVector.event == eventCodes.viewedproduct) {\n var prevProdId = previousVector.productID;\n\n console.log('Got ProductId from previousEventVector ' + prevProdId);\n\n return prevProdId;\n }\n\n return '-';\n }\n\n function fetchCartDump() {\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if (!isValid(persistLocalData)) {\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var finalCartJSON = {};\n finalCartJSON.cartItems = [];\n\n persistLocalData = JSON.parse(persistLocalData);\n\n cartData = persistLocalData.cartItems;\n\n if (validateForNotNull(cartData)) {\n for (var i = 0; i < cartData.length; i++) {\n if (i == 15) {\n break;\n }\n\n var currentFinalObjToSend = {};\n\n var currentObj = cartData[i];\n currentFinalObjToSend.sku = currentObj.skuId;\n currentFinalObjToSend.prdId = currentObj.productId;\n currentFinalObjToSend.qty = currentObj.quantity;\n\n if (validateForNotNull(currentObj.storeClearance)) {\n currentFinalObjToSend.sc = currentObj.storeClearance;\n }\n\n if (validateForNotNull(currentObj.itemProperties.size)) {\n currentFinalObjToSend.size = currentObj.itemProperties.size;\n }\n\n if (validateForNotNull(currentObj.itemProperties.color)) {\n currentFinalObjToSend.color = currentObj.itemProperties.color;\n }\n\n if (validateForNotNull(currentObj.itemProperties.isWebExclusive)) {\n currentFinalObjToSend.isWebExcl = currentObj.itemProperties.isWebExclusive;\n }\n\n\n var finalInvInfo = {};\n\n if (validateForNotNull(currentObj.inventoryInfo.shipAvailable)) {\n finalInvInfo.shpAvai = currentObj.inventoryInfo.shipAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.bopusAvailable)) {\n finalInvInfo.bopAvail = currentObj.inventoryInfo.bopusAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.bossAvailable)) {\n finalInvInfo.bosAvail = currentObj.inventoryInfo.bossAvailable;\n }\n\n if (validateForNotNull(currentObj.inventoryInfo.invOnHandQtyShip)) {\n finalInvInfo.invOHQShip = currentObj.inventoryInfo.invOnHandQtyShip;\n }\n\n if (validateForNotNull(currentObj.finalInvInfo)) {\n currentFinalObjToSend.invInfo = currentObj.finalInvInfo;\n }\n\n\n var currentPromoInfo = currentObj.promoInfo;\n\n console.log(' currentPromoInfo ', currentPromoInfo);\n\n if (validateForNotNull(currentPromoInfo)) {\n var finalPromoArray = [];\n\n var prTypeArr = [];\n var prTextArr = [];\n\n for (var j = 0; j < currentPromoInfo.length; j++) {\n var currentPromoObj = currentPromoInfo[j];\n var tempPromoObj = {};\n\n if (validateForNotNull(currentPromoObj.promoType)) {\n prTypeArr[prTypeArr.length] = currentPromoObj.promoType;\n }\n\n if (validateForNotNull(currentPromoObj.promoText)) {\n prTextArr[prTextArr.length] = currentPromoObj.promoText;\n }\n\n\n\n }\n\n currentFinalObjToSend.prType = prTypeArr.join('|');\n currentFinalObjToSend.prText = prTextArr.join('|');\n }\n\n\n\n var currentOfferInfo = currentObj.offerInfo;\n\n console.log(' currentOfferInfo ', currentOfferInfo);\n\n if (validateForNotNull(currentOfferInfo)) {\n var finalOfferInfoArray = [];\n\n for (var j = 0; j < currentOfferInfo.length; j++) {\n var currentOfferInfoObj = currentOfferInfo[j];\n var tempOfferInfoObj = {};\n\n if (validateForNotNull(currentOfferInfoObj.offerDiscount)) {\n tempOfferInfoObj.ofDis = currentOfferInfoObj.offerDiscount;\n }\n\n if (validateForNotNull(currentOfferInfoObj.startDate)) {\n tempOfferInfoObj.stDt = currentOfferInfoObj.startDate;\n }\n\n if (validateForNotNull(currentOfferInfoObj.endDate)) {\n tempOfferInfoObj.enDT = currentOfferInfoObj.endDate;\n }\n\n\n finalOfferInfoArray[finalOfferInfoArray.length] = tempOfferInfoObj;\n\n }\n\n currentFinalObjToSend.offInfo = finalOfferInfoArray;\n }\n\n\n finalCartJSON.cartItems[finalCartJSON.cartItems.length] = currentFinalObjToSend;\n }\n }\n\n\n\n\n var shipmentInfo = persistLocalData.shipmentInfo;\n\n console.log(' shipmentInfo ', shipmentInfo);\n\n if (validateForNotNull(shipmentInfo)) {\n var finalshipmentInfoArray = [];\n\n for (var j = 0; j < shipmentInfo.length; j++) {\n var currentshipmentInfoObj = shipmentInfo[j];\n var tempShipmentInfoObj = {};\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges)) {\n tempShipmentInfoObj.ogShpChrgs = currentshipmentInfoObj.shipmentPriceInfo.originalShippingCharges;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount)) {\n tempShipmentInfoObj.shpChrgsADis = currentshipmentInfoObj.shipmentPriceInfo.shippingChargesAfterDiscount;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta)) {\n tempShipmentInfoObj.freeShpQlfDelta = currentshipmentInfoObj.shipmentPriceInfo.freeShipQualificationDelta;\n }\n\n if (validateForNotNull(currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal)) {\n tempShipmentInfoObj.shpItmsTot = currentshipmentInfoObj.shipmentPriceInfo.shipmentItemsTotal;\n }\n\n\n\n var shippingOffers = currentshipmentInfoObj.shippingOffers;\n if (validateForNotNull(shippingOffers)) {\n var finalshippingOfferArray = [];\n\n for (var k = 0; k < shippingOffers.length; k++) {\n var currentshippingOffersObj = shippingOffers[k];\n\n if (validateForNotNull(currentshippingOffersObj.discountAmount)) {\n finalshippingOfferArray[finalshippingOfferArray.length] = currentshippingOffersObj.discountAmount;\n }\n\n }\n\n\n tempShipmentInfoObj.disAmnt = finalshippingOfferArray.join('|');\n\n\n }\n\n finalshipmentInfoArray[finalshipmentInfoArray.length] = tempShipmentInfoObj;\n\n\n }\n\n finalCartJSON.shipmentInfo = finalshipmentInfoArray;\n }\n\n var orderSummary = persistLocalData.orderSummary;\n\n var finalOrderSummaryObj = {};\n\n if (validateForNotNull(orderSummary.merchandisePromoAmount)) {\n finalOrderSummaryObj.merProAmnt = orderSummary.merchandisePromoAmount;\n }\n\n if (validateForNotNull(orderSummary.discountedShippingAmount)) {\n finalOrderSummaryObj.disShpAmnt = orderSummary.discountedShippingAmount;\n }\n\n if (validateForNotNull(orderSummary.originalShippingAmount)) {\n finalOrderSummaryObj.ogShpAmnt = orderSummary.originalShippingAmount;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.estimated)) {\n finalOrderSummaryObj.taxest = orderSummary.tax.estimated;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.taxRate)) {\n finalOrderSummaryObj.taxRate = orderSummary.tax.taxRate;\n }\n\n if (validateForNotNull(orderSummary.tax) && validateForNotNull(orderSummary.tax.tax)) {\n finalOrderSummaryObj.tax = orderSummary.tax.tax;\n }\n\n if (validateForNotNull(orderSummary.totalSurcharges)) {\n finalOrderSummaryObj.totSurgs = orderSummary.totalSurcharges;\n }\n\n if (validateForNotNull(orderSummary.totalTaxFee)) {\n finalOrderSummaryObj.totTaxFee = orderSummary.totalTaxFee;\n }\n\n if (validateForNotNull(orderSummary.totalKohlsCashAndPromoDiscounts)) {\n finalOrderSummaryObj.totKCAProDis = orderSummary.totalKohlsCashAndPromoDiscounts;\n }\n\n if (validateForNotNull(orderSummary.totalTax)) {\n finalOrderSummaryObj.totTax = orderSummary.totalTax;\n }\n\n if (validateForNotNull(orderSummary.total)) {\n finalOrderSummaryObj.total = orderSummary.total;\n }\n\n if (validateForNotNull(orderSummary.savings)) {\n finalOrderSummaryObj.sav = orderSummary.savings;\n }\n\n if (validateForNotNull(orderSummary.taxFeeEnabled)) {\n finalOrderSummaryObj.taxFeeE = orderSummary.taxFeeEnabled;\n }\n\n finalCartJSON.orderSummary = finalOrderSummaryObj;\n\n return JSON.stringify(finalCartJSON);\n\n }\n\n return null;\n\n\n }\n\n function fetchNewAttributesDeltaForSKU(eventData, eventName, skuCode) {\n\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if (validateForNotNull(persistLocalData)) {\n var pageDataJson = pageData;\n\n persistLocalData = JSON.parse(persistLocalData);\n\n var cartItems = persistLocalData.cartItems;\n\n console.log('Cart items ', cartItems);\n\n var skuCartObj = null;\n\n for (var i = 0; i < cartItems.length; i++) {\n var tempObj = cartItems[i];\n\n if (tempObj.skuId == skuCode) {\n skuCartObj = tempObj;\n break;\n }\n }\n\n console.log('Got skuCartObj ', skuCartObj);\n\n if (skuCartObj == null) {\n return;\n }\n\n switch (eventName) {\n\n case \"_ws_addedtobag\":\n\n console.log('Into Switch Statement');\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n\n finalReturnObj.selected_sku = skuCode;\n finalReturnObj.c_i_size = skuCartObj.itemProperties.size;\n finalReturnObj.c_i_color = skuCartObj.itemProperties.color;\n finalReturnObj.c_i_isweb = skuCartObj.itemProperties.isWebExclusive;\n finalReturnObj.c_sclearance = skuCartObj.storeClearance;\n finalReturnObj.c_i_shipavailable = skuCartObj.inventoryInfo.shipAvailable;\n finalReturnObj.c_i_bopusAval = skuCartObj.inventoryInfo.bopusAvailable;\n\n finalReturnObj.c_i_bossAval = skuCartObj.inventoryInfo.bossAvailable;\n\n var invOnHandQtyShip = skuCartObj.inventoryInfo.invOnHandQtyShip;\n if (validateForNotNull(invOnHandQtyShip)) {\n finalReturnObj.c_i_invShip = invOnHandQtyShip;\n }\n var invOnHandQtyBopus = skuCartObj.inventoryInfo.invOnHandQtyBopus;\n if (validateForNotNull(invOnHandQtyBopus)) {\n finalReturnObj.c_i_invBopus = invOnHandQtyBopus;\n }\n var invOnHandQtyBoss = skuCartObj.inventoryInfo.invOnHandQtyBoss;\n if (validateForNotNull(invOnHandQtyBoss)) {\n finalReturnObj.c_i_invBoss = invOnHandQtyBoss;\n }\n\n\n\n finalReturnObj.c_o_offDis = spltArrayObjectWithAttributeObjectDataIntoVector(skuCartObj, 'offerInfo', 'offerDiscount');\n finalReturnObj.c_o_sdate = spltArrayObjectWithAttributeObjectDataIntoVector(skuCartObj, 'offerInfo', 'startDate');\n finalReturnObj.c_o_edate = spltArrayObjectWithAttributeObjectDataIntoVector(skuCartObj, 'offerInfo', 'endDate');\n\n finalReturnObj.c_p_type = spltArrayObjectWithAttributeObjectDataIntoVector(skuCartObj, 'promoInfo', 'promoType');\n finalReturnObj.c_p_ptext = spltArrayObjectWithAttributeObjectDataIntoVector(skuCartObj, 'promoInfo', 'promoText');\n\n\n\n finalReturnObj.shpi_shpp_ogshpchrgs = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'originalShippingCharges');\n finalReturnObj.shpi_shpp_shpchrgsafdis = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'shippingChargesAfterDiscount');\n finalReturnObj.shpi_shpp_freeshpqlfdelta = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'freeShipQualificationDelta');\n finalReturnObj.shpi_shpp_shpitmstotal = spltArrayObjectWithAttributeObjectDataIntoVector(persistLocalData.shipmentInfo, 'shipmentPriceInfo', 'shipmentItemsTotal');\n\n finalReturnObj.shpi_shpo_disamnt = spltArrayObjectWithArrayObjectDataIntoVector(persistLocalData.shipmentInfo, 'shippingOffers', 'discountAmount');\n\n if (validateForNotNull(persistLocalData.orderSummary.merchandisePromoAmount)) {\n finalReturnObj.or_merpromoamnt = persistLocalData.orderSummary.merchandisePromoAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.discountedShippingAmount)) {\n finalReturnObj.or_disshpamnt = persistLocalData.orderSummary.discountedShippingAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.originalShippingAmount)) {\n finalReturnObj.or_ogshpamnt = persistLocalData.orderSummary.originalShippingAmount;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.estimated)) {\n finalReturnObj.or_tax_est = persistLocalData.orderSummary.tax.estimated;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.taxRate)) {\n finalReturnObj.or_tax_taxrt = persistLocalData.orderSummary.tax.taxRate;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.tax.tax)) {\n finalReturnObj.or_tax_tax = persistLocalData.orderSummary.tax.tax;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalSurcharges)) {\n finalReturnObj.or_totalsur = persistLocalData.orderSummary.totalSurcharges;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalTaxFee)) {\n finalReturnObj.or_totaltaxfree = persistLocalData.orderSummary.totalTaxFee;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalKohlsCashAndPromoDiscounts)) {\n finalReturnObj.or_totalkcpromodis = persistLocalData.orderSummary.totalKohlsCashAndPromoDiscounts;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.totalTax)) {\n finalReturnObj.or_totaltax = persistLocalData.orderSummary.totalTax;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.total)) {\n finalReturnObj.or_total = persistLocalData.orderSummary.total;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.savings)) {\n finalReturnObj.or_savings = persistLocalData.orderSummary.savings;\n }\n\n if (validateForNotNull(persistLocalData.orderSummary.taxFeeEnabled)) {\n finalReturnObj.or_taxfeeen = persistLocalData.orderSummary.taxFeeEnabled;\n }\n\n\n break;\n\n }\n }\n\n\n return finalReturnObj;\n\n }\n\n function onceInSessionAttributes(eventData) {\n var finalReturnObj = eventData;\n\n var persistLocalData = localStorage.getItem('persistent_bar_components_json_v1');\n\n if (!isValid(persistLocalData)) {\n persistLocalData = JSON.stringify(Kjs.PB.getPbCartStorage());\n }\n\n if (validateForNotNull(persistLocalData)) {\n\n var pageDataJson = pageData;\n persistLocalData = JSON.parse(persistLocalData);\n\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveAmount)) {\n finalReturnObj.incdet_incamnt = persistLocalData.incentiveDetails.incentiveAmount;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveType)) {\n finalReturnObj.incdet_inctype = persistLocalData.incentiveDetails.incentiveType;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.smartIncentiveStatus)) {\n finalReturnObj.incdet_smartincstatus = persistLocalData.incentiveDetails.smartIncentiveStatus;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveThreshold)) {\n finalReturnObj.incdet_incthreshold = persistLocalData.incentiveDetails.incentiveThreshold;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveEligible)) {\n finalReturnObj.incdet_inceligible = persistLocalData.incentiveDetails.incentiveEligible;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.incentiveQualified)) {\n finalReturnObj.incdet_incqualifed = persistLocalData.incentiveDetails.incentiveQualified;\n }\n\n if (validateForNotNull(persistLocalData.incentiveDetails) && validateForNotNull(persistLocalData.incentiveDetails.minCartThresholdMet)) {\n finalReturnObj.incdet_minicartthresholdmet = persistLocalData.incentiveDetails.minCartThresholdMet;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerHasKohlsCharge)) {\n finalReturnObj.custdet_custhaskohlschrg = persistLocalData.customerDetails.customerHasKohlsCharge;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.customerPostalCode)) {\n finalReturnObj.custdet_custpostalcode = persistLocalData.customerDetails.customerPostalCode;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.myStoreId)) {\n finalReturnObj.custdet_mystoreid = persistLocalData.customerDetails.myStoreId;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.rewardsPilotService)) {\n finalReturnObj.custdet_rewardspilotser = persistLocalData.customerDetails.rewardsPilotService;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018EliteMember)) {\n finalReturnObj.custdet_lytelitemember = persistLocalData.customerDetails.kohlsLoyalty2018EliteMember;\n }\n\n if (validateForNotNull(persistLocalData.customerDetails) && validateForNotNull(persistLocalData.customerDetails.kohlsLoyalty2018Member)) {\n finalReturnObj.custdet_lytmember = persistLocalData.customerDetails.kohlsLoyalty2018Member;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.usrdata_lytypntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.optInIndicator)) {\n finalReturnObj.usrdata_optinindict = persistLocalData.userData.optInIndicator;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.accountStatus)) {\n finalReturnObj.usrdata_accstatus = persistLocalData.userData.accountStatus;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.storeNum)) {\n finalReturnObj.usrdata_strnum = persistLocalData.userData.storeNum;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.isEnrolledUser)) {\n finalReturnObj.usrdata_isenrusr = persistLocalData.userData.isEnrolledUser;\n }\n\n if (validateForNotNull(persistLocalData.userData) && validateForNotNull(persistLocalData.userData.sessionStatus)) {\n finalReturnObj.usrdata_sesstatus = persistLocalData.userData.sessionStatus;\n }\n\n if (validateForNotNull(pageDataJson.pageDetails) && validateForNotNull(pageDataJson.pageDetails.browserPostalCode)) {\n finalReturnObj.pgdata_pgdet_brwpostalcode = pageDataJson.pageDetails.browserPostalCode;\n }\n\n if (validateForNotNull(pageDataJson.customerDetails) && validateForNotNull(pageDataJson.customerDetails.customerPostalCode)) {\n finalReturnObj.pgdata_custdet_custpostalcode = pageDataJson.customerDetails.customerPostalCode;\n }\n\n\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.awayPoints)) {\n finalReturnObj.purear_rwds_awaypnts = persistLocalData.purchaseEarnings.rewards.awayPoints;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue)) {\n finalReturnObj.purear_rwds_lytrwdthreshval = persistLocalData.purchaseEarnings.rewards.ltyRewardThresholdValue;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance)) {\n finalReturnObj.purear_rwds_lytpntbal = persistLocalData.purchaseEarnings.rewards.loyaltyPointBalance;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.rewards) && validateForNotNull(persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint)) {\n finalReturnObj.purear_rwds_curpurearnpnt = persistLocalData.purchaseEarnings.rewards.currentPurchaseEarnPoint;\n }\n\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount)) {\n finalReturnObj.purear_kc_qlfyamnt = persistLocalData.purchaseEarnings.kohlsCash.qualificationAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.earnAmount)) {\n finalReturnObj.purear_kc_earnamnt = persistLocalData.purchaseEarnings.kohlsCash.earnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount)) {\n finalReturnObj.purear_kc_curpurearnamnt = persistLocalData.purchaseEarnings.kohlsCash.currentPurchaseEarnAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCash.awayAmount)) {\n finalReturnObj.purear_kc_awayamnt = persistLocalData.purchaseEarnings.kohlsCash.awayAmount;\n }\n\n if (validateForNotNull(persistLocalData.purchaseEarnings) && validateForNotNull(persistLocalData.purchaseEarnings.kohlsCashEarnings)) {\n finalReturnObj.purear_kcearnings = persistLocalData.purchaseEarnings.kohlsCashEarnings;\n }\n\n if (validateForNotNull(persistLocalData.addressDetails) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0]) && validateForNotNull(persistLocalData.addressDetails.billingAddress[0].postalCode)) {\n finalReturnObj.addrdet_biladdr_postalcode = spltArrayObjectDataIntoVector(persistLocalData.addressDetails.billingAddress, 'postalCode');\n }\n\n }\n\n return finalReturnObj;\n }\n\n function fetchMcmId() {\n var mcid = (typeof Visitor != 'undefined') ? Visitor.getInstance('F0EF5E09512D2CD20A490D4D@AdobeOrg') : '';\n var mcmId = (mcid ? mcid.getMarketingCloudVisitorID() : '');\n\n return mcmId;\n }\n\n\n function getPresentVector() {\n try {\n\n console.log('getPresentVector');\n\n var itemsInBag = 0;\n cartValue = 0;\n\n isJsonNull = false;\n\n var cartData = localStorage.getItem(\"persistent_bar_components_json_v1\");\n if (isValid(cartData)) {\n var cartInfo = JSON.parse(cartData);\n\n for (var i = 0; i < cartInfo.cartItems.length; i++) {\n itemsInBag = itemsInBag + cartInfo.cartItems[i].quantity;\n\n cartValue = cartValue + Number(cartInfo.cartItems[i].itemPriceInfo.grossPrice);\n\n var tempObj = {};\n tempObj.productId = cartInfo.cartItems[i].productId;\n tempObj.skuId = cartInfo.cartItems[i].skuId;\n tempObj.quantity = cartInfo.cartItems[i].quantity;\n tempObj.itemType = cartInfo.cartItems[i].itemType;\n\n currentUserCartArr.push(tempObj);\n\n }\n } else {\n if (getCookie('VisitorBagTotals').toString().length != 0) {\n cartValue = -1;\n\n isJsonNull = true;\n\n }\n }\n\n\n if (cartValue == 0 && (typeof pageData != 'undefined') && pageData.cartDetails && pageData.cartDetails.cartSubTotalValue) {\n cartValue = Number(pageData.cartDetails.cartSubTotalValue);\n }\n\n\n\n\n var presentVector = {};\n presentVector.event = eventCodes[evtName.toLocaleLowerCase()] || evtName; //common to all\n presentVector.productID = '-'; //ViewedProduct, AddedToBag\n presentVector.itemsInBag = itemsInBag || 0; //common to all\n presentVector.originalPrice = '-';\n presentVector.salePrice = '-';\n presentVector.KC = '-'; //Think\n presentVector.PDPCategory = '-'; //\n presentVector.department = '-';\n presentVector.CN = '-';\n presentVector.keywords = '-';\n presentVector.visualNavForm = '-';\n presentVector.pageFilter = '-';\n presentVector.searchType = '-';\n presentVector.userPFM = '-';\n presentVector.loginstatus = (isLoggedIn) ? 'full' : (isSoftLoggedIn ? 'soft' : '-');\n presentVector.onSale = '-';\n presentVector.time = new Date().getTime();\n\n //New Ml Vectors\n\n presentVector.pgdata_pmpdet_catname = '-';\n presentVector.pgdata_pmpdet_subcatname = '-';\n presentVector.pgdata_pmpdet_findingname = '-';\n presentVector.pgdata_pmpdet_cat_keywords = '-';\n presentVector.pgdata_pmpdet_pgfilter = '-';\n presentVector.pgdata_pmpdet_deptname = '-';\n presentVector.pgdata_pmpdet_gendervalues = '-';\n presentVector.pgdata_pmpdet_search_keywords = '-';\n presentVector.pgdata_proddet_colid = '-';\n presentVector.pgdata_pddetails_clientpostalcode = '-';\n presentVector.selected_sku_color = '-';\n presentVector.selected_sku_size = '-';\n presentVector.selected_sku = '-';\n //presentVector.selected_sku_regular_price = '-';\n presentVector.selected_sku_sale_price = '-';\n\n presentVector.c_i_size = '-';\n presentVector.c_i_color = '-';\n presentVector.c_i_isweb = '-';\n presentVector.c_sclearance = '-';\n presentVector.c_i_shipavailable = '-';\n presentVector.c_i_bopusAval = '-';\n presentVector.c_i_bossAval = '-';\n presentVector.c_i_invShip = '-';\n presentVector.c_i_invBopus = '-';\n presentVector.c_i_invBoss = '-';\n presentVector.c_o_offDis = '-';\n presentVector.c_o_sdate = '-';\n presentVector.c_o_edate = '-';\n presentVector.c_p_type = '-';\n presentVector.c_p_ptext = '-';\n presentVector.shpi_shpp_ogshpchrgs = '-';\n presentVector.shpi_shpp_shpchrgsafdis = '-';\n presentVector.shpi_shpp_freeshpqlfdelta = '-';\n presentVector.shpi_shpp_shpitmstotal = '-';\n presentVector.shpi_shpo_disamnt = '-';\n presentVector.or_merpromoamnt = '-';\n presentVector.or_disshpamnt = '-';\n presentVector.or_ogshpamnt = '-';\n presentVector.or_tax_est = '-';\n presentVector.or_tax_taxrt = '-';\n presentVector.or_tax_tax = '-';\n presentVector.or_totalsur = '-';\n presentVector.or_totaltaxfree = '-';\n presentVector.or_totalkcpromodis = '-';\n presentVector.or_totaltax = '-';\n presentVector.or_total = '-';\n presentVector.or_savings = '-';\n presentVector.or_taxfeeen = '-';\n\n presentVector.removed_sku = '-';\n presentVector.updated_sku = '-';\n presentVector.updated_sku_qty = '-';\n\n presentVector.prod_sku_count = '-';\n presentVector.sku_reg_price = '-';\n presentVector.sku_per_dis = '-';\n presentVector.sku_bopus_avail = '-';\n presentVector.sku_boss_avail = '-';\n presentVector.sku_ship_avail = '-';\n\n presentVector.filter_by_count = '-';\n presentVector.sort_by = '-';\n\n presentVector.pgdata_proddet_catname = '-';\n presentVector.pgdata_proddet_subcatname = '-';\n presentVector.pgdata_proddet_deptname = '-';\n\n presentVector.selected_prd_id = '-';\n\n presentVector.rto_data = '-';\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n\n\n if (typeof pageData != 'undefined') {\n if(pageData.productDetails && pageData.productDetails.pageItems && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID)\n {\n presentVector.productID = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].productID) || '-';\n presentVector.originalPrice = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].originalPrice) || '-';\n presentVector.salePrice = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].salePrice) || '-';\n presentVector.PDPCategory = (pageData.productDetails && pageData.productDetails.categoryName) || '-';\n presentVector.onSale = (pageData.productDetails && pageData.productDetails.pageItems[0] && pageData.productDetails.pageItems[0].isOnSale) || '-'; \n }\n\n if (validateForNotNull(pageData.productDetails) && validateForNotNull(pageData.productDetails.categoryName)) {\n presentVector.pgdata_proddet_catname = pageData.productDetails.categoryName;\n }\n\n if (validateForNotNull(pageData.productDetails) && validateForNotNull(pageData.productDetails.subcategoryName)) {\n presentVector.pgdata_proddet_subcatname = pageData.productDetails.subcategoryName;\n }\n\n if (validateForNotNull(pageData.productDetails) && validateForNotNull(pageData.productDetails.departmentName)) {\n presentVector.pgdata_proddet_deptname = pageData.productDetails.departmentName;\n }\n\n if (productId) {\n\n var skuPriceObj = getSkuPriceObj(Kjs.mainPanel.getBagItem(\"skuId\"));\n\n if(skuPriceObj)\n {\n presentVector.originalPrice = skuPriceObj.regularPrice.toString().substring(1,skuPriceObj.regularPrice.length);\n presentVector.salePrice = skuPriceObj.salePrice.toString().substring(1,skuPriceObj.salePrice.length);\n presentVector.PDPCategory = (pageData.productDetails && pageData.productDetails.categoryName) || '-';\n presentVector.onSale = '-';\n }\n\n presentVector.productID = (productId) || '-';\n \n }\n }\n else {\n var prodUrlSplit = window.location.pathname.toString().split('prd-')[1];\n var firstIndexOf = prodUrlSplit.indexOf('/');\n\n presentVector.productID = prodUrlSplit.substring(0, firstIndexOf);\n }\n\n\n presentVector.userPFM = getUrlParameter('userPFM') || '-';\n\n if (presentVector.productID == '-') {\n presentVector.productID = checkForPreviousEvent();\n }\n\n var skuCode = Kjs.mainPanel.getBagItem(\"skuId\");\n presentVector = fetchNewAttributesDeltaForSKU(presentVector, evtName, skuCode);\n\n }\n\n if (debugScr) console.log(\"presentVector:\" + JSON.stringify(presentVector));\n\n //viewedhome/viewedcart do not require additional processing\n //addedtobag/placedorder have seperate tags\n\n return presentVector;\n } catch (ie) {\n console.log('[ZineOne getPresentVector] : ' + ie);\n }\n }\n\n\n function updateUserVectors() {\n try {\n\n console.log('Into updateUserVectors');\n var presentVector = getPresentVector();\n var previousVector = JSON.parse(localStorage.getItem('z1_previousVector'));\n var z1_sessionStart_ts = JSON.parse(localStorage.getItem('z1_sessionStart_ts'));\n\n var z1_features = localStorage.getItem('z1_features') || \"\";\n //Check if local Storage has userVector available\n var userVectors = JSON.parse(localStorage.getItem('z1_userVectors'));\n var newUserVectors = JSON.parse(localStorage.getItem('z1_newUserVectors'));\n\n //Updated the logic to send the Sequence if diff between present and previous event is more than 10 mins\n //if(previousVector && previousVector.time && previousVector.time < z1_sessionStart_ts){\n if (previousVector && previousVector.time && presentVector && presentVector.time && Number(presentVector.time) - Number(previousVector.time) > SESSION_GAP) {\n console.log(\"New Session has started since the last Event\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n try {\n\n var oldSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n vectorsEventData = onceInSessionAttributes(vectorsEventData);\n\n\n var cartDump = fetchCartDump();\n\n if (validateForNotNull(cartDump)) {\n cartDump = JSON.parse(cartDump);\n\n var cartKeys = Object.keys(cartDump);\n for (var k = 0; k < cartKeys.length; k++) {\n vectorsEventData[cartKeys[k]] = JSON.stringify(cartDump[cartKeys[k]]);\n }\n }\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.session_start_time = presentVector.time;\n vectorsEventData.old_session_start_time = oldSessionStartTime;\n\n\n if (validateForNotNull(newUserVectors)) {\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n }\n\n\n ZineOne.pushEvent('_ws_updatevectors', vectorsEventData);\n } catch (ieInner) {\n\n var errorObj = {};\n errorObj.p1 = ieInner.message;\n errorObj.p2 = 'AddedToBag';\n\n ZineOne.pushEvent('_ws_logs', errorObj);\n\n }\n\n\n localStorage.setItem('visitGap', Number(presentVector.time) - Number(previousVector.time));\n localStorage.removeItem('z1_userVectors');\n localStorage.removeItem('z1_features');\n console.log(\"z1_userVectors removed from local storage\");\n userVectors = null;\n newUserVectors = null;\n }\n\n if (!userVectors) {\n userVectors = {};\n userVectors.eventVector = presentVector.event;\n userVectors.timeVector = presentVector.time;\n userVectors.productVector = presentVector.productID;\n userVectors.originalPrice = presentVector.originalPrice;\n userVectors.salePrice = presentVector.salePrice;\n userVectors.PDPCategory = presentVector.PDPCategory;\n userVectors.CN = presentVector.CN;\n userVectors.itemsInBag = presentVector.itemsInBag;\n\n newUserVectors = {};\n newUserVectors.pgdata_pmpdet_catname = presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = presentVector.selected_sku_size;\n newUserVectors.selected_sku = presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = presentVector.selected_sku_sale_price;\n\n\n\n newUserVectors.c_i_size = presentVector.c_i_size;\n newUserVectors.c_i_color = presentVector.c_i_color;\n newUserVectors.c_i_isweb = presentVector.c_i_isweb;\n newUserVectors.c_sclearance = presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = presentVector.c_o_sdate;\n newUserVectors.c_o_edate = presentVector.c_o_edate;\n newUserVectors.c_p_type = presentVector.c_p_type;\n newUserVectors.c_p_ptext = presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = presentVector.or_tax_tax;\n newUserVectors.or_totalsur = presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = presentVector.or_totaltax;\n newUserVectors.or_total = presentVector.or_total;\n newUserVectors.or_savings = presentVector.or_savings;\n newUserVectors.or_taxfeeen = presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = presentVector.removed_sku;\n newUserVectors.updated_sku = presentVector.updated_sku;\n newUserVectors.updated_sku_qty = presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = presentVector.sku_ship_avail;\n\n newUserVectors.filter_by_count = presentVector.filter_by_count;\n newUserVectors.sort_by = presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = presentVector.selected_prd_id;\n\n newUserVectors.rto_data = presentVector.rto_data;\n\n } else {\n userVectors.eventVector = userVectors.eventVector + '|' + presentVector.event;\n userVectors.timeVector = userVectors.timeVector + '|' + presentVector.time;\n userVectors.productVector = userVectors.productVector + '|' + presentVector.productID;\n userVectors.originalPrice = userVectors.originalPrice + '|' + presentVector.originalPrice;\n userVectors.salePrice = userVectors.salePrice + '|' + presentVector.salePrice;\n userVectors.PDPCategory = userVectors.PDPCategory + '|' + presentVector.PDPCategory;\n userVectors.CN = userVectors.CN + '|' + presentVector.CN;\n userVectors.itemsInBag = userVectors.itemsInBag + '|' + presentVector.itemsInBag;\n\n newUserVectors.pgdata_pmpdet_catname = newUserVectors.pgdata_pmpdet_catname + '|' + presentVector.pgdata_pmpdet_catname;\n newUserVectors.pgdata_pmpdet_subcatname = newUserVectors.pgdata_pmpdet_subcatname + '|' + presentVector.pgdata_pmpdet_subcatname;\n newUserVectors.pgdata_pmpdet_findingname = newUserVectors.pgdata_pmpdet_findingname + '|' + presentVector.pgdata_pmpdet_findingname;\n newUserVectors.pgdata_pmpdet_cat_keywords = newUserVectors.pgdata_pmpdet_cat_keywords + '|' + presentVector.pgdata_pmpdet_cat_keywords;\n newUserVectors.pgdata_pmpdet_pgfilter = newUserVectors.pgdata_pmpdet_pgfilter + '|' + presentVector.pgdata_pmpdet_pgfilter;\n newUserVectors.pgdata_pmpdet_deptname = newUserVectors.pgdata_pmpdet_deptname + '|' + presentVector.pgdata_pmpdet_deptname;\n newUserVectors.pgdata_pmpdet_gendervalues = newUserVectors.pgdata_pmpdet_gendervalues + '|' + presentVector.pgdata_pmpdet_gendervalues;\n newUserVectors.pgdata_pmpdet_search_keywords = newUserVectors.pgdata_pmpdet_search_keywords + '|' + presentVector.pgdata_pmpdet_search_keywords;\n newUserVectors.pgdata_proddet_colid = newUserVectors.pgdata_proddet_colid + '|' + presentVector.pgdata_proddet_colid;\n newUserVectors.pgdata_pddetails_clientpostalcode = newUserVectors.pgdata_pddetails_clientpostalcode + '|' + presentVector.pgdata_pddetails_clientpostalcode;\n newUserVectors.selected_sku_color = newUserVectors.selected_sku_color + '|' + presentVector.selected_sku_color;\n newUserVectors.selected_sku_size = newUserVectors.selected_sku_size + '|' + presentVector.selected_sku_size;\n newUserVectors.selected_sku = newUserVectors.selected_sku + '|' + presentVector.selected_sku;\n //newUserVectors.selected_sku_regular_price = newUserVectors.selected_sku_regular_price + '|' + presentVector.selected_sku_regular_price;\n newUserVectors.selected_sku_sale_price = newUserVectors.selected_sku_sale_price + '|' + presentVector.selected_sku_sale_price;\n\n\n newUserVectors.c_i_size = newUserVectors.c_i_size + '|' + presentVector.c_i_size;\n newUserVectors.c_i_color = newUserVectors.c_i_color + '|' + presentVector.c_i_color;\n newUserVectors.c_i_isweb = newUserVectors.c_i_isweb + '|' + presentVector.c_i_isweb;\n newUserVectors.c_sclearance = newUserVectors.c_sclearance + '|' + presentVector.c_sclearance;\n newUserVectors.c_i_shipavailable = newUserVectors.c_i_shipavailable + '|' + presentVector.c_i_shipavailable;\n newUserVectors.c_i_bopusAval = newUserVectors.c_i_bopusAval + '|' + presentVector.c_i_bopusAval;\n newUserVectors.c_i_bossAval = newUserVectors.c_i_bossAval + '|' + presentVector.c_i_bossAval;\n newUserVectors.c_i_invShip = newUserVectors.c_i_invShip + '|' + presentVector.c_i_invShip;\n newUserVectors.c_i_invBopus = newUserVectors.c_i_invBopus + '|' + presentVector.c_i_invBopus;\n newUserVectors.c_i_invBoss = newUserVectors.c_i_invBoss + '|' + presentVector.c_i_invBoss;\n newUserVectors.c_o_offDis = newUserVectors.c_o_offDis + '|' + presentVector.c_o_offDis;\n newUserVectors.c_o_sdate = newUserVectors.c_o_sdate + '|' + presentVector.c_o_sdate;\n newUserVectors.c_o_edate = newUserVectors.c_o_edate + '|' + presentVector.c_o_edate;\n newUserVectors.c_p_type = newUserVectors.c_p_type + '|' + presentVector.c_p_type;\n newUserVectors.c_p_ptext = newUserVectors.c_p_ptext + '|' + presentVector.c_p_ptext;\n newUserVectors.shpi_shpp_ogshpchrgs = newUserVectors.shpi_shpp_ogshpchrgs + '|' + presentVector.shpi_shpp_ogshpchrgs;\n newUserVectors.shpi_shpp_shpchrgsafdis = newUserVectors.shpi_shpp_shpchrgsafdis + '|' + presentVector.shpi_shpp_shpchrgsafdis;\n newUserVectors.shpi_shpp_freeshpqlfdelta = newUserVectors.shpi_shpp_freeshpqlfdelta + '|' + presentVector.shpi_shpp_freeshpqlfdelta;\n newUserVectors.shpi_shpp_shpitmstotal = newUserVectors.shpi_shpp_shpitmstotal + '|' + presentVector.shpi_shpp_shpitmstotal;\n newUserVectors.shpi_shpo_disamnt = newUserVectors.shpi_shpo_disamnt + '|' + presentVector.shpi_shpo_disamnt;\n newUserVectors.or_merpromoamnt = newUserVectors.or_merpromoamnt + '|' + presentVector.or_merpromoamnt;\n newUserVectors.or_disshpamnt = newUserVectors.or_disshpamnt + '|' + presentVector.or_disshpamnt;\n newUserVectors.or_ogshpamnt = newUserVectors.or_ogshpamnt + '|' + presentVector.or_ogshpamnt;\n newUserVectors.or_tax_est = newUserVectors.or_tax_est + '|' + presentVector.or_tax_est;\n newUserVectors.or_tax_taxrt = newUserVectors.or_tax_taxrt + '|' + presentVector.or_tax_taxrt;\n newUserVectors.or_tax_tax = newUserVectors.or_tax_tax + '|' + presentVector.or_tax_tax;\n newUserVectors.or_totalsur = newUserVectors.or_totalsur + '|' + presentVector.or_totalsur;\n newUserVectors.or_totaltaxfree = newUserVectors.or_totaltaxfree + '|' + presentVector.or_totaltaxfree;\n newUserVectors.or_totalkcpromodis = newUserVectors.or_totalkcpromodis + '|' + presentVector.or_totalkcpromodis;\n newUserVectors.or_totaltax = newUserVectors.or_totaltax + '|' + presentVector.or_totaltax;\n newUserVectors.or_total = newUserVectors.or_total + '|' + presentVector.or_total;\n newUserVectors.or_savings = newUserVectors.or_savings + '|' + presentVector.or_savings;\n newUserVectors.or_taxfeeen = newUserVectors.or_taxfeeen + '|' + presentVector.or_taxfeeen;\n\n newUserVectors.removed_sku = newUserVectors.removed_sku + '|' + presentVector.removed_sku;\n newUserVectors.updated_sku = newUserVectors.updated_sku + '|' + presentVector.updated_sku;\n newUserVectors.updated_sku_qty = newUserVectors.updated_sku_qty + '|' + presentVector.updated_sku_qty;\n\n newUserVectors.prod_sku_count = newUserVectors.prod_sku_count + '|' + presentVector.prod_sku_count;\n newUserVectors.sku_reg_price = newUserVectors.sku_reg_price + '|' + presentVector.sku_reg_price;\n newUserVectors.sku_per_dis = newUserVectors.sku_per_dis + '|' + presentVector.sku_per_dis;\n newUserVectors.sku_bopus_avail = newUserVectors.sku_bopus_avail + '|' + presentVector.sku_bopus_avail;\n newUserVectors.sku_boss_avail = newUserVectors.sku_boss_avail + '|' + presentVector.sku_boss_avail;\n newUserVectors.sku_ship_avail = newUserVectors.sku_ship_avail + '|' + presentVector.sku_ship_avail;\n\n\n newUserVectors.filter_by_count = newUserVectors.filter_by_count + '|' + presentVector.filter_by_count;\n newUserVectors.sort_by = newUserVectors.sort_by + '|' + presentVector.sort_by;\n\n newUserVectors.pgdata_proddet_catname = newUserVectors.pgdata_proddet_catname + '|' + presentVector.pgdata_proddet_catname;\n newUserVectors.pgdata_proddet_subcatname = newUserVectors.pgdata_proddet_subcatname + '|' + presentVector.pgdata_proddet_subcatname;\n newUserVectors.pgdata_proddet_deptname = newUserVectors.pgdata_proddet_deptname + '|' + presentVector.pgdata_proddet_deptname;\n\n newUserVectors.selected_prd_id = newUserVectors.selected_prd_id + '|' + presentVector.selected_prd_id;\n\n newUserVectors.rto_data = newUserVectors.rto_data + '|' + presentVector.rto_data;\n\n\n }\n localStorage.setItem('z1_userVectors', JSON.stringify(userVectors));\n localStorage.setItem('z1_newUserVectors', JSON.stringify(newUserVectors));\n\n updateFeatures();\n\n //Update the previousVector\n previousVector = presentVector;\n localStorage.setItem('z1_previousVector', JSON.stringify(previousVector));\n\n //Send the Sequence on 5th and 10th Element as well\n //Fetch the updated features as they are updated \n var z1_features = localStorage.getItem('z1_features') || \"\";\n //If this is the 5th Element, send the features and vectors\n if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 5) {\n console.log(\"The sequence is 5 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.cartValue = cartValue;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n vectorsEventData.currentCart = JSON.stringify(currentUserCartArr);\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.customerHasKohlsCharge)) {\n vectorsEventData.isKcc = pageData.customerDetails.customerHasKohlsCharge;\n } else {\n vectorsEventData.isKcc = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018EliteMember)) {\n vectorsEventData.kohlsLoyalty2018EliteMember = pageData.customerDetails.kohlsLoyalty2018EliteMember;\n } else {\n vectorsEventData.kohlsLoyalty2018EliteMember = -1;\n }\n\n if (validateForNotNull(pageData) && validateForNotNull(pageData.customerDetails) && validateForNotNull(pageData.customerDetails.kohlsLoyalty2018Member)) {\n vectorsEventData.kohlsLoyalty2018Member = pageData.customerDetails.kohlsLoyalty2018Member;\n } else {\n vectorsEventData.kohlsLoyalty2018Member = -1;\n }\n\n\n vectorsEventData.mcmId = fetchMcmId();\n\n ZineOne.pushEvent('_ws_updatevectors_len5', vectorsEventData);\n\n if (isJsonNull) {\n var lastUserPageArr = userVectors.eventVector.toString().split('|');\n var lastPageChar = lastUserPageArr[lastUserPageArr.length - 2];\n\n var tempEventData = {};\n tempEventData.VisitorBagTotals = getCookie('VisitorBagTotals');\n tempEventData.pgName = 'PDP';\n tempEventData.lastPgChar = lastPageChar;\n\n ZineOne.pushEvent('_ws_emptyjson_v2', tempEventData);\n }\n\n\n } else if (userVectors && userVectors.eventVector && userVectors.eventVector.split('|').length == 10) {\n console.log(\"The sequence is 10 element long\");\n //Changes to visitGap for gap between n-1 and nth session\n var visitGap = localStorage.getItem('visitGap');\n //Check if null or undefined\n if (!visitGap || typeof visitGap == undefined || visitGap == 'undefined') {\n visitGap = '';\n }\n\n var currentSessionStartTime = userVectors.timeVector.toString().split('|')[0];\n\n var vectorsEventData = {};\n\n var newVectorKeys = Object.keys(newUserVectors);\n for (var k = 0; k < newVectorKeys.length; k++) {\n vectorsEventData[newVectorKeys[k]] = newUserVectors[newVectorKeys[k]];\n }\n\n\n\n vectorsEventData.z1_userVectors = JSON.stringify(userVectors);\n vectorsEventData.z1_features = z1_features;\n vectorsEventData.session_start_time = currentSessionStartTime;\n vectorsEventData.visitGap = visitGap;\n\n\n ZineOne.pushEvent('_ws_updatevectors_len10', vectorsEventData);\n }\n\n //If this is the 10th Element, send the features and vectors\n } catch (ie) {\n console.log('[ZineOne updateUserVectors] : ' + ie);\n }\n }\n\n function updateFeatures() {\n\n console.log('Into updateFeatures');\n /* z1_features is stored in local storage which holds following stats\n ** n Total number of events in visit\n ** A Total number of addedtobag events in the visit\n ** B Total number of breachedgeofence events in the visit\n ** C Total number of continuedcheckout events in the visit\n ** D Total number of exitgeofence events in the visit\n ** E Total number of placedorder events in the visit\n ** F Total number of searched events in the visit\n ** G Total number of startedcheckout events in the visit\n ** H Total number of viewedcart events in the visit\n ** I Total number of viewedcatalog events in the visit\n ** J Total number of viewedhome events in the visit\n ** K Total number of viewedproduct events in the visit\n ** p Total number of evented pages loaded in visit\n */\n\n var z1_features = localStorage.getItem('z1_features');\n if (!z1_features) {\n z1_features = \"0|0|0|0|0|0|0|0|0|0|0|0|0|0\";\n }\n\n z1_features_arr = z1_features.split('|');\n\n z1_features_arr[0] = Number(z1_features_arr[0]) + 1; //n\n\n if (evtName.toLocaleLowerCase() == '_ws_addedtobag') {\n z1_features_arr[1] = Number(z1_features_arr[1]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'breachedgeofence') {\n z1_features_arr[2] = Number(z1_features_arr[2]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completeshipping') {\n z1_features_arr[3] = Number(z1_features_arr[3]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == 'exitgeofence') {\n z1_features_arr[4] = Number(z1_features_arr[4]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_placedorder') {\n z1_features_arr[5] = Number(z1_features_arr[5]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_searched') {\n z1_features_arr[6] = Number(z1_features_arr[6]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_startedcheckout') {\n z1_features_arr[7] = Number(z1_features_arr[7]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcart') {\n z1_features_arr[8] = Number(z1_features_arr[8]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedcatalog') {\n z1_features_arr[9] = Number(z1_features_arr[9]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedhome') {\n z1_features_arr[10] = Number(z1_features_arr[10]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_viewedproduct') {\n z1_features_arr[11] = Number(z1_features_arr[11]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n } else if (evtName.toLocaleLowerCase() == '_ws_completepayment') {\n z1_features_arr[13] = Number(z1_features_arr[13]) + 1;\n z1_features_arr[12] = Number(z1_features_arr[12]) + 1;\n }\n\n z1_features = z1_features_arr[0] + '|' + z1_features_arr[1] + '|' + z1_features_arr[2] + '|' + z1_features_arr[3] + '|' + z1_features_arr[4] + '|' + z1_features_arr[5] + '|' + z1_features_arr[6] + '|' + z1_features_arr[7] + '|' + z1_features_arr[8] + '|' + z1_features_arr[9] + '|' + z1_features_arr[10] + '|' + z1_features_arr[11] + '|' + z1_features_arr[12] + '|' + z1_features_arr[13];\n localStorage.setItem('z1_features', z1_features);\n }\n\n\n } catch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: WebStore Z1 tag. \" + ie);\n }\n \n\n\n \n\n };\n\n var selector='addtobagID';\n var rootElement = document.querySelector('body');\n rootElement.addEventListener('click',function(event){\n var targetElement = event.target.id;\n\n if(targetElement.match(selector)){\n //logic for handling the click event of addtobagID \n addToBagClickHandler();\n }\n },true);\n\n\n\n\n\n\n \n} catch (ie) {\n if (debugScr) console.log(\"[Zineone] Error in Tag Script: WebStore Z1 tag. \" + ie);\n}","eventName":"load","pageSelector":{"type":"pgName","condition":"contains","val":"/product/prd-"}}],"TTL":"1440"}}
console-api log URL: https://cdn.zineone.com/apps/latest/z1m.js(Line 27)
Message:
ZineOne: Unable to get item z1_ftUserMap from localStorage
console-api log URL: https://cdn.tagdelivery.com/request/client/kohls.js(Line 60)
Message:
2a01:4f8:192:5414::2
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 21)
Message:
[errors] KJS global handler logged uncaught exception: [errors] Uncaught TypeError: Cannot read property 'getItem' of null
console-api error URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
TypeError: Cannot read property 'getItem' of null
console-api log URL: https://www.kohls.com/snb/media/javascript/deploy/kjscore3.js(Line 22)
Message:
console.groupEnd

Security Headers

This page lists any security headers set by the main page. If you want to understand what these mean and how to use them, head on over to this page

Header Value
Content-Security-Policy block-all-mixed-content; frame-ancestors 'self';
Strict-Transport-Security max-age=15768000 ; preload
X-Frame-Options SAMEORIGIN

Indicators

This is a term in the security industry to describe indicators such as IPs, Domains, Hashes, etc. This does not imply that any of these indicate malicious activity.

6249496.collect.igodigital.com
684dd307.akstat.io
8632166.fls.doubleclick.net
ad.tagdelivery.com
adservice.google.com
adservice.google.de
analytics.twitter.com
api-bd.kohls.com
api.rlcdn.com
apps.zineone.com
bat.bing.com
c.go-mpulse.net
cdn.curalate.com
cdn.tagdelivery.com
cdn.zineone.com
cdns.brsrvr.com
cdnssl.clicktale.net
cm.everesttech.net
cm.g.doubleclick.net
conductor.clicktale.net
connect.facebook.net
ct.pinterest.com
d.agkn.com
d.impactradius-event.com
d.us.criteo.com
dpm.demdex.net
googleads.g.doubleclick.net
gum.criteo.com
idsync.rlcdn.com
idx.liadm.com
ing-district.clicktale.net
js-sec.indexww.com
kohls.demdex.net
kohls.sjv.io
kohls.tt.omtrdc.net
match.adsrvr.org
media.kohlsimg.com
mon1.kohls.com
pagead2.googlesyndication.com
rp.liadm.com
rp4.liadm.com
s.btstatic.com
s.go-mpulse.net
s.pinimg.com
s.thebrighttag.com
sb.scorecardresearch.com
sc-static.net
secure.adnxs.com
securepubads.g.doubleclick.net
static.ads-twitter.com
static.criteo.net
stats.g.doubleclick.net
t.co
tjxbfc1n.micpn.com
tpc.googlesyndication.com
tr.snapchat.com
widget-api.stylitics.com
widget.stylitics.com
ww8.kohls.com
www.cloudflare.com
www.facebook.com
www.google-analytics.com
www.google.com
www.google.de
www.googleadservices.com
www.googletagmanager.com
www.googletagservices.com
www.kohls.com
www.ojrq.net
api.rlcdn.com
104.244.42.195
104.244.42.197
13.224.194.58
13.225.73.3
13.225.73.47
13.225.73.98
15.188.31.119
151.101.12.157
151.101.13.179
172.217.18.166
172.217.22.66
172.217.23.98
178.250.0.130
178.250.0.157
18.202.93.59
23.11.238.95
23.203.64.67
23.213.15.82
23.213.164.234
2600:1f18:730:b130:5ea9:abf8:d77b:4d4
2600:9000:20eb:2800:19:fc2c:a140:93a1
2606:4700::6811:d209
2606:4700::6812:15a0
2620:1ec:c11::200
2a00:1450:4001:808::2002
2a00:1450:4001:809::2001
2a00:1450:4001:814::2003
2a00:1450:4001:815::2002
2a00:1450:4001:815::2008
2a00:1450:4001:818::200e
2a00:1450:4001:81a::2004
2a00:1450:400c:c00::9d
2a02:26f0:6c00:180::1931
2a02:26f0:6c00:181::11a6
2a02:26f0:6c00:189::eaf
2a02:26f0:6c00:18b::eaf
2a02:26f0:6c00:19f::2db0
2a03:2880:f02d:12:face:b00c:0:3
2a03:2880:f12d:83:face:b00c:0:25de
3.208.200.138
3.219.149.238
34.194.211.188
34.201.234.122
34.248.248.83
34.252.123.130
34.95.127.121
35.186.226.184
35.186.249.72
35.190.72.21
35.227.211.136
37.252.172.45
52.2.41.57
52.215.180.197
52.6.27.178
54.164.173.111
54.243.79.244
66.117.28.86
66.117.29.4
74.119.119.135
0012bc12b8e4b21f101266c3e52c8a244739be6694eb451c8f77383655a0a998
018605e2c4079ea69c712cc1b939391e684094fc608d216de84805f40dbd1156
019a576b7eccf17e9314ace09cd88544ef0c2131682d7bb8ae033a0f96ccd9dc
01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b
04421a091a17fc178a1e77e448d2fd739c2a900771cc1a8d287a235120a03abc
0482a98d09daebc18a0d2e1ed8f748da5b0179e61223ed541101df1f4699f073
074fe1fd6af90f94febd52f66bc3e2112e4e4a4a0e4c807cf6766810518e4905
079e218ad07f42523479d475b4973a6e386ba95209ee964c04c1a6eb6186bda3
08bd00120c677e7f7b7c49e353f7129e6e5500a8ba5b5cd592e36a466c5b3f5f
0b502dbf33a515f9b0fd2a857166c6bb00e41b8dfc07bfa8ef194224fd266b7e
0d01964116ba5a9c79219a78fd6196568ed155c40ae5a85104104f134bdc0d91
0d25afb94067e1a95ad3f9dfcf2c0081809410af3dce2c143973e4768794855b
0f9b6b0249bc2941ceb82e2668069bf411632211f48fea5d2c161927ee80c442
10d8d42d73a02ddb877101e72fbfa15a0ec820224d97cedee4cf92d571be5caa
118577f6c1fa5cd509378cde5fd3323c46b7d13f4c77e8bac90d9ee7049d194e
12a00ce90d3f47313490ff265720a5277a4f2db42b7cca9a830ea63d3538e241
132fefcf69e743721cc84433604b9be4030a96f20797af1e03ab030edca4d76f
140b59aaf164518b2c1b4a592f8b3fabd61dcdf810f00c83ab3d8c979a0f32b9
14fcf6193151f5336b176b2c55eadfad39d073d6670629f726fe66009054e0cc
161322df654846f96bd20ee1a587c35a9c6395db1c0fef3a6deb390b66a4ec95
1958bb7f293956e7170f639ce93a3d628ae465fa24fd751e1a2b3cd837059ffa
19c4fb8052ffe04e1f5650aab9faee896fca5af6c0c98c42dae24ae853e959f4
1b9677254b31d53bea24c7bf91d321e1c17c975a0d38544a141428005169364e
1b996535566391fc2e467e04a2731a4696cae01bbb5c35ff4245e83e5c62624b
1c45f1dbc5afc1034ac9f4322cc6a66f4db7442f88be435d05897289ad475bd1
1e57ef80de847edfe190c3cc278688675dd98bd4f419f189e317a6be83394d05
2039082ed79cca9faa87a80ebbf516502cda4ca08c67f1ef46b718fee79b47f3
2043e5b3a41cef91b1463a3597613e373da56c152075d4f8f1c152e207bc5023
2282d952f6652ce9195267b3fe681b99cfe9fccd41912c86c31c3e47e774494b
2294527b0a142dc18d6247eab841f78253166755adac5cc483f3ece6e04f4677
22ffd3c91878a778c0c80d919abd9c063bf1b889faed4bc0e2fe69617a9f8458
2509e1fab122ab1da7638525c286e70864ffa11bb66af495c4a840ffdabe8e11
2565892bc9a7c05ac215b1784631317b1c0a8c7a91986394662768a6d4dab1d9
260d6c5edacb67917465bd4692d5dc5b5d1abf3fd0e3bc9287b7a6e8d074d935
26e3599cccafcf6c3766e1876c83b2ffef6d960399ef07539eb4bb9c72627ffa
28d5c7d2279d76c0643863a7d3926cb5b831c26538611f92a105cc6533cd531a
2b1bbc2ab03b4ddd9746cecc5dc7ad12a664db2f63ba7cfe3de126a459abab9e
2c01b9dc6da69c606ae678e0a6f23a5b18b83634e74d4d1b2580229ed0038570
2d3c362dea9616624060e41064907033f41959ddf6bda37f26c87e6047fcd20a
2f05563ca65e7640350b200b8bbd1fc1d159870edae312279124cab44fd95e18
2f1b33de12225970169889477e5f738ac9750b637edb02323d632a22c0df6098
3158e137735ba9d198046be10ac174bcf752a5f7051c85c19b789069b1c6783f
317ef593559c12ec00d2005fa8aef8f47511604cad625727ce8b0c12022a013d
319949c8c08b86e9c35ea542c0dc0c30cedaa9b8d3d3c3327a36c91aefbd8af5
3315380cdc8eead5f55ed86692a00a8ddbff01e376ad6fd81b94ce6264924219
350a160781abcfed2b855db11228ffa4b0e71a19c2e1212aa363336dff19d9a8
36a9e7f1c95b82ffb99743e0c5c4ce95d83c9a430aac59f84ef3cbfab6145068
37b17c5135a176a9474521af147d96dfa1fb4ca0f43f00d1400bd1885be3ab9b
3846a9f636ae3295886fd5ec9771c8ff9df1384a27994038d1fe164132e3eabe
38dff88a20261df3e510cf1bef67e1d9c68398158137cef3b9c06505d12033ae
3ac5ca978196ded2a4cf29e2cc940a0b83809ae6f577bf22197aa60c419b45fa
3f57f82f11d7b0f7f696ea616a9973293f72813b269803acdf80ba6c8e8b0da9
3fee8ee9cdc7566bfdf93c8158870816876ef54b93e58b205cb7f52f1d9ed064
411c045d2a620b9b58931bcfee6a2345031696ea884ff22ed59a20efd81bd217
426abb1e665d3f775793fcecbf29d413ef64f880bd5d4ef7e624160537c0d5e8
43a6a9edb9f967ee24f2a1ed4baebcec4ef861c912bd58cfc9bfe7397cb41ab8
4415770ecc7b85b58f5d595f4c62c91d6eee2d7e0f51efed0c8feb214207d6cf
468ca709c7e830082dc93ad909b099855f2b8509ed029ab8c714a3fcf74e89c6
49f420f3f141747489346fd7fcffaa6967e1f6d8a3ad3e3db1d7225d9dc7e6f3
4a63ccc41b6e27c88fca243efd1030d401bc83bd3ae22aaff2b0d1354ba25703
4c87707ce17127fc5385771fbde9f6c94bccbd208b0de2d0edfc2939601f6af1
4e948638a694a5d3ec13f7f13f254788d5501905e246d99779e825aff3fbb725
5029b2f11b033b8b3dabc1b565f2cadcf9bc0758f07c250b777f0e907a3f6a5c
567499fa0997401930cd649b501db1e65e54ba799312af544d52e88d639526da
5683d721043542df3d73195d4449d2842042193e896c63aba9552de00b5ed207
577460aebf40d39c280ede635d5eecd90fb0d356c7cfad49e915bea5d99b4e5f
5a91c6d3e635c0bd1551a53cf0769328132151a7732039170280d500dbcb4685
5bef36ad4dd30972e10dcb05c116fafa3c1f79b323319961d09a9ebd02a5b36b
5e8923354dc828bba8fd3a84f1fed88a4b7095207803798b521710119bf347da
6102b6f9b0a2f3d5b128c566862198ada13900b20be86edd070d9744329c14f1
6166bbacde4b50eaeb5ea098c80b35a804803ef785748485d4c9c642761d9ed5
62b5f85b21a85ad299b67f82a3a505f7cf0058c98c1f8b4f5c8ded1d7667922a
63630dabec4f48e5b818c21158eda205d78186285a429833931511b5c79ea337
644fe710e6435028a30263c2b907c700f61934afaff7a8c539c0e4337f79eccb
684888c0ebb17f374298b65ee2807526c066094c701bcc7ebbe1c1095f494fc1
6d257ae7d283ba55180a09d9933ff94e8069ceaac0ad76c5a01bf2d4fd170665
6d5d5b849d06209db22dd9551e7352cc565ae9b35a4b859f8ca3b65abdb3a15c
6dfa271e269c6f6693aee52b71b1e808077d6f9c0cb8389c8e4a2181ec595f2d
740078cb1778d885689a3108d2ca696b01fd80cb73437528af4ed0dd6e7466b7
784987f702c79e593b13b91fc91b303cb44af611c6537ef988b415c1f376e8ec
790d3cb3a1372c1185ee7f4d65f27b31797f50d21ef4093d8933c7f32030797c
7981dac50c9f26875336de70feca8696ea7e73a7d74438842eb21810dcb39755
7abb9e6750bbf26d30d9e4e12de2c5609529887140c6a5ceb0b6e6c52a7bae6b
7d1b654bc56485872b4c88231b981623294f36b863fc193ae0390a6d02a99130
7d902a1ffa6a76ad5c599742f4d37b2d21c3601c7745463a10d310b60aed734f
7e3c90a577f823675de936edeb8afd3a28e3200ef315a25b794ab56014e851cf
7ea9d44289ca8ecbc992776cf306e87cc1dcdd3c40ae059f7d5f6af9aa2e3bb7
80cc8ef5083239b68a12bff0d34ce0fd015791a72ef9c173417edc29d95da6e8
80d54533f80e8233621f965ae0a7713928bdb4d491ed0eb5e90434550f1894cb
80ff8d853b239de01aeff55a14e4337c1b622691a86673f5b89042e5fec1f3db
8337212354871836e6763a41e615916c89bac5b3f1f0adf60ba43c7c806e1015
83470685fccc7de3b2846cb0acd359e4b9e3c88670561bdd745c9319e8d00933
84b2426a6096b022d9eddbc7b9318f98d10c6b51bfa99bd1aa3b605dd2c2264c
86ff0cb1658b5b1e3368575112eab5ebdf2da7a786599ce73cee1ed875bd9f80
872b2d153faff6d476391128fa9738f068108962ceef071bf8f36b14d59ddcc3
8bd5e5729a3fb989a0bcb99fd966df11e1c44198c447712fa4136996e2b28c0a
8c047f0950d687e342df8e70cdd5dfdd6ca3ff525d41b9020139e82a6ec8d6d7
8c37840429cf932dcab57bf805c73d1508a27dcbd457839af775c02a34c7cfb3
8d70b3e6badb6973663b398d297bb32eaedd08826a1af98d0a1cfce5324ffce0
8dccc8a29c28ee78f0d1f0336ccc95edfc29e32134efd81160fb7a224f51a270
8ee94e76927614a59084b18f322ac6257f3ec5692d13426436a3e48a12db9de0
91bd671d9ef32c444bc363d40e7d072a317e899b9c662ad1dd837d1d2277ed3a
91c4ca77f03e214c2317d563e2e23a337717979ca184bb22d801110c8fcb675b
935c78ed2a8b54d1e45405f33a81d7122820c14a965750229f9be8e5d48d3376
99e502f00a1a89faf52ecf66791b4e3f5e85d5806544ecbf2943c5e4c4667c7e
9a118dcfc9dcb4b08cb5974926483ca437750f2c9becf6db10128accd57b198b
9a360cf5ee4308a7d244179b2f91f25d33310871c20b6cf765093acb81fd8e49
9a3c12072ed3b8a80321998ec90ed1915c2262b71c148b7a4ba08099d7fc0541
9af3bb31e704abc28fb7a916e6f20ccb1a86ead0beea40d6d6ee4d0d684933eb
9b85c222fcdb4cdab6b4d8d138ca311dab7084f78e2c95ad85bb3608d05a065e
9b9b5d1c856c505f2af4236e65fb900f46422f6b46c3a50b6af89d5d4143b3f1
9d39e3127b199df526678091aa4681f829efb05a2df130f83edb51da08753fcd
9d8a2811fe6cec544f8e4ba7915c7ee8d4caa72257d97bf4f8964dae6c621ff6
9e8fa3d78b2a0d6998d310c4c767eee97da81723463d8839ce7682da8ea5a011
9ec2d7e2da63fce8da6bb3d53873affa9e0b965d74f65dbbd833ccbf1e5e79e7
9fb974b84a129972abbd1e2e5cfdf685cab5f6f22d881adf3845bc73b43eb4ad
a256529bd5b1b8846f8d2536ce7581fb6cea4479992f222d01535903dff48d79
a26c4421f420f7a7a0615312c31cb8150ce3dfc51afe4d9516b4bf36f5d24bac
a383e9ea4c5445aa825239410fc864d86bb6d12ad490a7be09c0a27d38817fb2
a3d50ef27006d215b4828faae5cce1617ef8cbb2800346351dc17cb5159eaa50
a400fe551ce1b5f459f1808f5c93714ea243d7e4b10dc962936b21635f34f8b0
a47f17d6ebbf4621d8fe87ab790d8d8fb5c3086629194d9ff2d64faaa6e46ab6
a6be8e64ddd860e244b623d5175b66249d7cdfed7c9806ac8bff483e17372835
a71acced4acf6b86479a51de2b083b124739b004d7c4a442ea19f3803e22d112
a8a5c752f8ae0c033572453cbb3240ca9047eae565ea1f3df7cb1ea67e9984d9
ac8778041fdb7f2e08ceb574c9a766247ea26f1a7d90fa854c4efcf4b361a957
aceabcad789ecff956642f386c61536a07b581d1c73f5bd4462686682bf9aa5f
af9fa9f0773266d650cff80076d18e7b3b6b170e807badd366cfef901e8e9235
b1442e85b03bdcaf66dc58c7abb98745dd2687d86350be9a298a1d9382ac849b
b493cdb3b30ea63f6a924f814dfccfcfe305dac02106f9994ce2bcb2e8ed28c4
b4b6d0d803b03886cb562a38b1f74a9af5cc2df590fb9a0157fec28f6ac5c1f2
b5bee989dd7481e168729af79a76c094411711bc6ff4e84973ad6534e245d3ff
b69335ae739737089bebce27cfc370df981bd29f27fca7ba40cc6cd893af9060
b6d4e60de6a30f1465bb48b41857a4456116a88750f1fcba45efb5f3e53cb409
b778519d9dad8637ad3fa0ed4936e73b0f34a26cc5e8fafbb53f7b2c434b56b3
b9100a86e7eb0f3f86e40d25e8dd057a28793bbb984e88438fd3e7df05eaaa49
b9d2e26f22cdbae9b33b328fcaec06435834b057c435fd14a615dda245ce64d5
bd2da9fc69887da8658af5688aacaf16bf76541964f19fb40c22497855e15740
c16bdf1444336a4d1fc3c451186f3c3a9f841195f1aff70f47df6e9aa9b1f3a7
c1f73210ecf0cdd737564cf635941ef61334767087d720637de6b3ad1ef46c10
c33bfb9bf99597501c78e3dc3530babcd11f7b98b7aca0a4631f312a14e400c9
c3d0ccc036971aca7f6332aec2cac5dd18c057ccd8395d350467b9c0dfc432c8
c59da65b102de55e1292c9477270fc706873d14a8d6fec0ad771c77a35526eee
c6ba54328814f6711f0b616c6a931b5b307dc543271e713e4d8b63f34e6ae543
c79dc828b12ed77c8d0dc59ef0c96a630d758bd5b19f26b9e5c1051822f0a39b
ca9c71feb0bf20f496856c30157473b2be864db426773a7d5c4728f63a77b5ee
cab184711fe7d7cd2f4550b0d170ce8f6369c7365056c3d63a536c73a5897a40
cabfc1108fae6131503246f05870e0b2c820b3d5ce43cad41aa662d8e511e3ee
cd1009616a9f41102d15b4daaddbe02dfae35727e8e728d42c59e491f9325d64
cf4724b2f736ed1a0ae6bc28f1ead963d9cd2c1fd87b6ef32e7799fc1c5c8bda
d54f94df1233ab7224af68f63fe3df27584c4c01d70b2e65bcdc774ba05c6b41
d6887aae055eff5ba1d8eeb653fc7c2ba7f6c4831d2f06ee20b5dd1e45178273
d7b776b985b943c37a6998aa47deb32f3b087233be8a63103368645152813e1a
dde63196963650b1265d8f0e311504fd8077c20bed94501f75adf77f8ddee11d
df179f7583362a8382421dadcbc9a497639f19dac1ea7c3774741d88b458c058
df3e003cc30e9bdd0313100e8ee5d468070b4b34d11ad355f276a356d4b9c7bf
e15f21cd7a83e4e8d32c071f464287a2704794f2bdac683133a7b34dac6d55ba
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
e5063c2f8d59f2fa55456040d32935d5cceac9c23a0ae8a3e3ce026f08542496
e8deeed70d87a6dceae482f434da81860033bcbc64b597ef1315a8b51762744b
e93047ab88ddf3a33047a506b4a7594914e84fcf5ebac4b2723739e728e284b5
ea03bfd7fdda1eac185ebc3e8e74b33065b04c8e0adc48cbbd4136748dbd2742
ea46c4bbfb1c549721ae599d61413502c57785c0f411e9aafcf95985d2ea4a8b
ea837f894d32d6b0c043366ae389cc6bccf93a3af3e55ff296c62274ceee37d8
eaf1b128b927ac2868755cb7366d35554255c8af362235afe270f9614f8c806d
eb58c24dafb31a0da4f20e72962f44b77c097c20d0f819ddfda8dae60bc8c899
ec34cd386427fe6deacf99f4fdbeea4b1d1ed25f505411650d7ceaa843a7fc63
ee0254288c4757d0ac20592bc109df50ffbd1ef97c3153f2f29fc6001e126254
ef1955ae757c8b966c83248350331bd3a30f658ced11f387f8ebf05ab3368629
f24cd77318c239a2211ea8382efa423e81b21e515b902fbf707b7996f1b99a45
f49c965a0c06a4fe2002e168e64f485c6cc3a976551a2157ec7e92f44d399160
f7faab19d8a62e6d1f068b1bcbda7f9aa1e03b7688bc993d4fb398f49057957d
f94a0b8748fb6d8f32b70d464162f64e541983caa0631e5d3f2e73c40a17e393
fa8c7da9bcc47f46ad77f6b49f170a18b48aa294efddcf314175ff673d13ce44
fb30d19bfdc58c092bdabad889657613116021c0d07e936fdb3e9e5dbd669872
fb4491ac8ba8263bc3648569c13e5c3db6559373d119c760b3bdf7816f352196
fc49380a326d18192e6e10dc8b95f7738e27af87961a0221523910a6b8470500
fc64a3f93236408f1b7804c07d5bc6a4e9feac0388b7a94a6c6c2b61c5d2186e
fcd6acab1a311e89ae1aef024707e986871eff4071c584de3e93970c5fc4a23d
fd207445c501b157718c167a34cea5bc7a19bb45082c4741f5c563f73d5e6ade
fd5336cc3ae940c652d24bdef79071bdef9660d779e80779fa0991208604af70
fdce4bf519c6f2efacf25f269b0665de304c935cc25128986f222342c11283b9