diff options
author | Zoltan Flamis <zoltan@innocraft.com> | 2021-04-14 08:02:40 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-04-14 08:02:40 +0300 |
commit | 086874bb001f22381916bee51de87ec41452782e (patch) | |
tree | 1b36d380653d6ee92c7ffb22d23da4b3fa1d83c9 /js/piwik.js | |
parent | 005528f230c129a199dc2a1b9de996723e77de2c (diff) |
Performance timing API as default (#17427)
* switch domLoading to responseEnd
* timing API as default
* fix indentation
* rebuilt piwik.js
* Update piwik.js
* rebuilt piwik.js
* fix jslint error
* rebuilt piwik.js
* use isDefined
* rebuilt piwik.js
Co-authored-by: flamisz <flamisz@users.noreply.github.com>
Diffstat (limited to 'js/piwik.js')
-rw-r--r-- | js/piwik.js | 25 |
1 files changed, 20 insertions, 5 deletions
diff --git a/js/piwik.js b/js/piwik.js index f3183c67a5..e8fa4b4760 100644 --- a/js/piwik.js +++ b/js/piwik.js @@ -3472,7 +3472,11 @@ if (typeof window.Matomo !== 'object') { return request; } - var performanceData = (typeof performanceAlias.getEntriesByType === 'function') && performanceAlias.getEntriesByType('navigation') ? performanceAlias.getEntriesByType('navigation')[0] : performanceAlias.timing; + var performanceData = (typeof performanceAlias.timing === 'object') && performanceAlias.timing ? performanceAlias.timing : undefined; + + if (!performanceData) { + performanceData = (typeof performanceAlias.getEntriesByType === 'function') && performanceAlias.getEntriesByType('navigation') ? performanceAlias.getEntriesByType('navigation')[0] : undefined; + } if (!performanceData) { return request; @@ -3508,13 +3512,24 @@ if (typeof window.Matomo !== 'object') { timings += '&pf_tfr=' + Math.round(performanceData.responseEnd - performanceData.responseStart); } - if (performanceData.domInteractive && performanceData.domLoading) { + if (isDefined(performanceData.domLoading)) { + if (performanceData.domInteractive && performanceData.domLoading) { - if (performanceData.domInteractive < performanceData.domLoading) { - return; + if (performanceData.domInteractive < performanceData.domLoading) { + return; + } + + timings += '&pf_dm1=' + Math.round(performanceData.domInteractive - performanceData.domLoading); } + } else { + if (performanceData.domInteractive && performanceData.responseEnd) { + + if (performanceData.domInteractive < performanceData.responseEnd) { + return; + } - timings += '&pf_dm1=' + Math.round(performanceData.domInteractive - performanceData.domLoading); + timings += '&pf_dm1=' + Math.round(performanceData.domInteractive - performanceData.responseEnd); + } } if (performanceData.domComplete && performanceData.domInteractive) { |