From: Stephen Cameron Date: Wed, 6 Dec 2017 12:48:56 +0000 (+0100) Subject: Only open links in a new window if they point to an external URL. WIP #1762 @0.5 X-Git-Url: http://git.cubedesigners.com/?a=commitdiff_plain;h=24a89756950890291008435271986d95e47d5a20;p=fluidbook-html5.git Only open links in a new window if they point to an external URL. WIP #1762 @0.5 --- diff --git a/js/libs/fluidbook/fluidbook.nav.js b/js/libs/fluidbook/fluidbook.nav.js index b6fcd14a..c342874f 100644 --- a/js/libs/fluidbook/fluidbook.nav.js +++ b/js/libs/fluidbook/fluidbook.nav.js @@ -436,7 +436,14 @@ FluidbookNav.prototype = { var id = 'extra', $nav = this.getNavFromType(navType), elementID = navType + '_' + id, - navExtraImage; + navExtraImage, + navLinkTarget = ''; + + // Check to see if navExtraLink is external or not and set target accordingly + if (typeof(this.fluidbook.datas.navExtraLink) == 'string' && this.fluidbook.datas.navExtraLink.lastIndexOf('http', 0) === 0) { + navLinkTarget = ' target="_blank" rel="noopener noreferrer"'; + } + if ($nav.find('#' + elementID).length > 0) { continue; @@ -446,7 +453,7 @@ FluidbookNav.prototype = { if (this.fluidbook.datas.navExtraImage != '' && this.fluidbook.datas.navExtraLink != '') { navExtraImage = this.fluidbook.datas.navExtraImage; - link = ''; + link = ''; } else if (this.fluidbook.datas.afterSearch != '' && this.fluidbook.datas.themeEnableAfterSearch && navType == 'horizontalNav') { @@ -457,7 +464,7 @@ FluidbookNav.prototype = { } else if (navType == 'menu' && (this.fluidbook.datas.navExtraImage != '' || this.fluidbook.datas.navExtraImageMobile != '') && this.fluidbook.datas.navExtraLink != '') { navExtraImage = this.fluidbook.datas.navExtraImageMobile || this.fluidbook.datas.navExtraImage; // Fallback to desktop image - link = ' ' + this.fluidbook.datas.navExtraTooltip + ''; + link = ' ' + this.fluidbook.datas.navExtraTooltip + ''; } if (link !== null) {