From: Vincent Vanwaelscappel Date: Tue, 18 Aug 2020 16:04:12 +0000 (+0200) Subject: wait #3840 @0.5 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=87121d1677535b84e2d98d21a684d8576f95e2b6;p=fluidbook-html5.git wait #3840 @0.5 --- diff --git a/js/libs/fluidbook/fluidbook.links.js b/js/libs/fluidbook/fluidbook.links.js index e16c355e..fc116a96 100644 --- a/js/libs/fluidbook/fluidbook.links.js +++ b/js/libs/fluidbook/fluidbook.links.js @@ -98,19 +98,8 @@ FluidbookLinks.prototype = { return true; } - if (external && $this.fluidbook.stats.relay_url_params !== '' && !$(this).hasClass('relay_appended')) { - $(this).addClass('relay_appended'); - - var u = new URL(href); - var s = ''; - if (u.search === '') { - s = '?'; - } else { - s = '&'; - } - u.search = s + $this.fluidbook.stats.relay_url_params; - $(this).attr('href', u.href); - href = u.href; + if (external) { + href = $this.handleExternalHref(this); } if (!navigator.onLine && external && $this.fluidbook.settings.phonegap) { @@ -221,8 +210,40 @@ FluidbookLinks.prototype = { return false; }); + }, + + handleExternalHref: function (link) { + var href = $(link).attr('href'); + var change = false; + if (this.fluidbook.stats.relay_url_params !== '' && !$(link).hasClass('relay_appended')) { + $(link).addClass('relay_appended'); + href = this.appendParamsToURL(href, this.fluidbook.stats.relay_url_params); + change = true; + } + if (this.fluidbook.settings.linkTracker !== '' && (this.fluidbook.settings.linkTrackerRegexp === '' || href.indexOf(this.fluidbook.settings.linkTrackerRegexp) >= 0) && !$(link).hasClass('tracking_appended')) { + $(link).addClass('relay_appended'); + href = this.appendParamsToURL(href, this.fluidbook.settings.linkTracker); + change = true; + } + if (change) { + $(link).attr('href', href); + } + return href; + + }, + + appendParamsToURL: function (url, params) { + var u = new URL(url); + var s = ''; + if (u.search === '') { + s = '?'; + } else { + s = '&'; + } + u.search = s + params; + return u.href; }, hidePlacedLink: function (p) {