diff --git a/webapp/src/main/webapp/js/individual/individualQtipBubble.js b/webapp/src/main/webapp/js/individual/individualQtipBubble.js
deleted file mode 100644
index 78d484acc9..0000000000
--- a/webapp/src/main/webapp/js/individual/individualQtipBubble.js
+++ /dev/null
@@ -1,83 +0,0 @@
-/* $This file is distributed under the terms of the license in LICENSE$ */
-
-$(document).ready(function(){
- // This function creates and styles the "qTip" tooltip that displays the bubble text when the user hovers
- // over the research area "group" icon.
-
- $.extend(this, i18nStrings);
-
- $('head').append('');
-
- $('#researchAreaIcon').each(function()
- {
- $(this).qtip(
- {
- prerender: true,
- content: {
- text: '
' + i18nStrings.researchAreaTooltipOne + '
' + i18nStrings.researchAreaTooltipTwo + '
'
- },
- position: {
- my: 'top left',
- at: 'bottom center',
- adjust: {
- x:22,
- y:30
- }
- },
- style: {
- classes: 'researchAreaTip',
- height: 56,
- width: 180,
- }
- });
- });
-
- $('head').append('');
-
- $('#fullViewIcon').each(function()
- {
- $(this).qtip(
- {
- content: {
- text: '' + i18nStrings.quickviewTooltip + '
'
- },
- position: {
- my: 'top left',
- at: 'bottom center',
- adjust: {
- x:27,
- y:30
- }
- },
- style: {
- classes: 'bubbleTip',
- height: 56,
- width: 140,
-
- }
- });
- });
-
- $('#quickViewIcon').each(function()
- {
- $(this).qtip(
- {
- content: {
- text: '' + i18nStrings.standardviewTooltipOne + '
' + i18nStrings.standardviewTooltipTwo + '
'
- },
- position: {
- my: 'top left',
- at: 'bottom center',
- adjust: {
- x:28,
- y:30
- }
- },
- style: {
- classes: 'bubbleTip',
- height: 56,
- width: 144,
- }
- });
- });
-});
diff --git a/webapp/src/main/webapp/js/individual/individualTooltipBubble.js b/webapp/src/main/webapp/js/individual/individualTooltipBubble.js
new file mode 100644
index 0000000000..266402110c
--- /dev/null
+++ b/webapp/src/main/webapp/js/individual/individualTooltipBubble.js
@@ -0,0 +1,43 @@
+/* $This file is distributed under the terms of the license in LICENSE$ */
+
+$(document).ready(function(){
+ // This function creates and styles the bootstrap-popper tooltip that displays the bubble text when the user hovers
+ // over the research area "group" icon.
+
+ $.extend(this, i18nStrings);
+
+ let tooltips = [
+ {
+ querySelector: "#researchAreaIcon",
+ data: {
+ title: "" + i18nStrings.researchAreaTooltipOne + "
" + i18nStrings.researchAreaTooltipTwo + "
",
+ html: true,
+ fallbackPlacements: ['bottom', 'left', 'top', 'right'],
+ customClass: "vivoTooltip"
+ }
+ },
+ {
+ querySelector: "#fullViewIcon",
+ data: {
+ title: i18nStrings.quickviewTooltip,
+ html: true,
+ fallbackPlacements: ['bottom', 'left', 'top', 'right'],
+ customClass: "vivoTooltip"
+ }
+ },
+ {
+ querySelector: "#quickViewIcon",
+ data: {
+ title: "" + i18nStrings.standardviewTooltipOne + '
' + i18nStrings.standardviewTooltipTwo + "
",
+ html: true,
+ fallbackPlacements: ['bottom', 'left', 'top', 'right'],
+ customClass: "vivoTooltip"
+ }
+ },
+ ]
+
+ tooltips.forEach(tooltip => {
+ setTooltip(tooltip.querySelector, tooltip.data)
+ })
+
+});
diff --git a/webapp/src/main/webapp/js/individual/propertyGroupControls.js b/webapp/src/main/webapp/js/individual/propertyGroupControls.js
index 1b50991dfe..8c9f9a471d 100644
--- a/webapp/src/main/webapp/js/individual/propertyGroupControls.js
+++ b/webapp/src/main/webapp/js/individual/propertyGroupControls.js
@@ -13,17 +13,17 @@ $(document).ready(function(){
let showAllBtn = $('#show-all-tabs')[0];
let tabList = $('ul.propertyTabsList')[0];
- showAllBtn.addEventListener('show.bs.tab', function (event) {
+ showAllBtn?.addEventListener('show.bs.tab', function (event) {
event.preventDefault()
showAllTabs();
manageLocalStorage();
})
- showAllBtn.addEventListener('hide.bs.tab', function (event) {
+ showAllBtn?.addEventListener('hide.bs.tab', function (event) {
$(".tab-content>section.tab-pane").removeClass('show active')
})
- tabList.addEventListener('shown.bs.tab', function (event) {
+ tabList?.addEventListener('shown.bs.tab', function (event) {
manageLocalStorage();
})
diff --git a/webapp/src/main/webapp/js/visualization/mapofscience/VisCommonControl.js b/webapp/src/main/webapp/js/visualization/mapofscience/VisCommonControl.js
index 27f34d4927..27d4c149b7 100644
--- a/webapp/src/main/webapp/js/visualization/mapofscience/VisCommonControl.js
+++ b/webapp/src/main/webapp/js/visualization/mapofscience/VisCommonControl.js
@@ -84,36 +84,48 @@ function initVisModeTypeButton() {
}
function initGlobalToolTips() {
- createToolTip($("#imageIconOne"), $('#toolTipOne').html(), "top left");
- createToolTip($("#exploreInfoIcon"), $('#exploreTooltipText').html(), "top left");
- createToolTip($("#compareInfoIcon"), $('#compareTooltipText').html(), "top left");
- createToolTip($("#imageIconThree"), $('#toolTipThree').html(), "top right");
-}
-
-var visCommonToolTipInit = true;
-function createToolTip(target, tipText, tipLocation) {
- if (visCommonToolTipInit) {
- $('head').append('');
-
- visCommonToolTipInit = false;
- }
- target.qtip({
- content: {
- text: tipText
- },
- position: {
- my: tipLocation,
- at: 'center'
+ let tooltips = [
+ {
+ querySelector: "#imageIconOne",
+ data: {
+ title: "" + $('#toolTipOne').html() + "
",
+ customClass: "vivoTooltip vivoTooltip-yellow",
+ html: true,
+ sanitize: false,
+ fallbackPlacements: ['right', 'bottom', 'top', 'left']
+ }
+ },{
+ querySelector: "#exploreInfoIcon",
+ data: {
+ title: "" + $('#exploreTooltipText').html() + "
",
+ customClass: "vivoTooltip vivoTooltip-yellow",
+ html: true,
+ sanitize: false,
+ fallbackPlacements: ['right', 'bottom', 'top', 'left']
+ }
+ },{
+ querySelector: "#compareInfoIcon",
+ data: {
+ title: "" + $('#compareTooltipText').html() + "
",
+ customClass: "vivoTooltip vivoTooltip-yellow",
+ html: true,
+ sanitize: false,
+ fallbackPlacements: ['right', 'bottom', 'top', 'left']
+ }
+ },{
+ querySelector: "#imageIconThree",
+ data: {
+ title: "" + $('#toolTipThree').html() + "
",
+ customClass: "vivoTooltip vivoTooltip-yellow",
+ html: true,
+ sanitize: false,
+ fallbackPlacements: ['left', 'bottom', 'top', 'right']
+ }
},
- style: {
- classes: 'visCommonToolTip',
- width: 500,
- }
- });
+ ]
+
+ tooltips.forEach(tooltip => {
+ setTooltip(tooltip.querySelector, tooltip.data)
+ })
}
diff --git a/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-2column.ftl b/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-2column.ftl
index a786aeb654..80108aede9 100644
--- a/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-2column.ftl
+++ b/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-2column.ftl
@@ -188,19 +188,22 @@ var i18nStringsUriRdf = {
};
-${stylesheets.add(' ',
+${stylesheets.add(' ',
+ ' ',
' ',
' ',
- ' ',
- ' ')}
+ ' ')}
${headScripts.add('',
- '',
'',
- '')}
+ '',
+ '',
+ '',
+ '')}
+
${scripts.add('',
- '',
+ '',
'',
'',
'',
diff --git a/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-quickview.ftl b/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-quickview.ftl
index 2286832529..f3861e0dc9 100644
--- a/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-quickview.ftl
+++ b/webapp/src/main/webapp/templates/freemarker/body/individual/individual--foaf-person-quickview.ftl
@@ -250,17 +250,18 @@ var i18nStringsUriRdf = {
${stylesheets.add(' ',
' ',
' ',
- ' ',
- ' ')}
+ ' ')}
${headScripts.add('',
- '',
'',
'',
- '')}
+ '',
+ '',
+ '',
+ '')}
${scripts.add('',
- '',
+ '',
'',
'',
'',
diff --git a/webapp/src/main/webapp/templates/freemarker/visualization/mapOfScience/mapOfScienceStandalone.ftl b/webapp/src/main/webapp/templates/freemarker/visualization/mapOfScience/mapOfScienceStandalone.ftl
index a0441bd2b2..df47dfdcf6 100644
--- a/webapp/src/main/webapp/templates/freemarker/visualization/mapOfScience/mapOfScienceStandalone.ftl
+++ b/webapp/src/main/webapp/templates/freemarker/visualization/mapOfScience/mapOfScienceStandalone.ftl
@@ -85,7 +85,10 @@ corresponding changes in the included Templates. -->
-${headScripts.add('')}
${stylesheets.add(' ',
- ' ')}
+ ' ')}
+
+${headScripts.add('',
+ '',
+ '')}
\ No newline at end of file
diff --git a/webapp/src/main/webapp/themes/nemo/css/theme.css b/webapp/src/main/webapp/themes/nemo/css/theme.css
index f839279f1d..a9b1105b12 100644
--- a/webapp/src/main/webapp/themes/nemo/css/theme.css
+++ b/webapp/src/main/webapp/themes/nemo/css/theme.css
@@ -268,3 +268,75 @@ These are helper classes to add margin gaps where needed
.input-group-header-search {
}
+
+/* -------------------------------------------------> */
+/* TOOLTIP ----------------------------------------> */
+/* -------------------------------------------------> */
+.vivoTooltip {
+ opacity: 1 !important;
+ --bs-tooltip-max-width: 400px !important;
+}
+
+.vivoTooltip > .tooltip-inner {
+ background-color: #f1f2ee;
+ border: 1px solid #F1D031;
+ text-align: left;
+ border-radius: 0;
+ color: #333;
+ max-width: initial;
+}
+
+.vivoTooltip > .tooltip-inner #uriLink {
+ width: 350px;
+}
+
+.vivoTooltip > .tooltip-inner .close-footer {
+ display: flex;
+}
+
+.vivoTooltip > .tooltip-inner .close-footer a.close {
+ margin-left: auto;
+}
+
+.vivoTooltip > .tooltip-inner h5 {
+ padding-bottom: 0;
+}
+
+.vivoTooltip > .tooltip-arrow::before {
+ --bs-tooltip-bg: #F1D031;
+}
+
+.tooltip:not(.vivoTooltip) > .tooltip-inner, .tooltip:not(.vivoTooltip) > .tooltip-inner * {
+ color: unset;
+}
+
+.downloadTip {
+ --bs-tooltip-max-width: 600px !important;
+}
+
+.vivoTooltip-yellow {
+ --bs-tooltip-max-width: 500px !important;
+}
+
+.vivoTooltip-yellow > .tooltip-inner {
+ background-color: #ffffc0;
+ font-size: 0.8em;
+ padding: 20px 22px;
+ text-align: left;
+ line-height: 12px;
+}
+
+
+/* */
+
+#filter-groups .tab-content .tab-pane.active:not(.show) {
+ opacity: 0;
+}
+
+#filter-groups .tab-content .tab-pane.show:not(.active) {
+ opacity: 0;
+}
+
+.fade.in:not(.active) {
+ display: none;
+}
\ No newline at end of file
diff --git a/webapp/src/main/webapp/themes/nemo/templates/head.ftl b/webapp/src/main/webapp/themes/nemo/templates/head.ftl
index 837d8f1c79..29d118397a 100644
--- a/webapp/src/main/webapp/themes/nemo/templates/head.ftl
+++ b/webapp/src/main/webapp/themes/nemo/templates/head.ftl
@@ -19,7 +19,8 @@
'')}
#if>
#if>
-
+
+
<#include "stylesheets.ftl">
diff --git a/webapp/src/main/webapp/themes/nemo/templates/individual--foaf-person.ftl b/webapp/src/main/webapp/themes/nemo/templates/individual--foaf-person.ftl
index aaecbb86b0..b334fbae19 100644
--- a/webapp/src/main/webapp/themes/nemo/templates/individual--foaf-person.ftl
+++ b/webapp/src/main/webapp/themes/nemo/templates/individual--foaf-person.ftl
@@ -213,12 +213,14 @@ Add divs and wrapper to create funnelback basket controls. MUST BE REMOVED BEFOR
${stylesheets.add(' ')}
${headScripts.add('',
- '',
'',
- '')}
+ '',
+ '',
+ '',
+ '')}
${scripts.add('',
- '',
+ '',
'',
'',
'',
diff --git a/webapp/src/main/webapp/themes/nemo/templates/individual-vitro.ftl b/webapp/src/main/webapp/themes/nemo/templates/individual-vitro.ftl
index 81356e6459..67345aaad9 100644
--- a/webapp/src/main/webapp/themes/nemo/templates/individual-vitro.ftl
+++ b/webapp/src/main/webapp/themes/nemo/templates/individual-vitro.ftl
@@ -103,8 +103,7 @@
-${headScripts.add('',
- '')}
+${headScripts.add('')}
${scripts.add('',
'',
diff --git a/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceSetup.ftl b/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceSetup.ftl
index da0ba4f33c..e0d9a02080 100644
--- a/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceSetup.ftl
+++ b/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceSetup.ftl
@@ -145,3 +145,7 @@ ${stylesheets.add(' ',
' ')}
+
+${headScripts.add('',
+ '',
+ '')}
diff --git a/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceStandalone.ftl b/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceStandalone.ftl
index c7f5d2adce..618d2726ae 100644
--- a/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceStandalone.ftl
+++ b/webapp/src/main/webapp/themes/nemo/templates/mapOfScienceStandalone.ftl
@@ -92,6 +92,4 @@ corresponding changes in the included Templates. -->
-${headScripts.add('')}
-
${stylesheets.add(' ')}
diff --git a/webapp/src/main/webapp/themes/tenderfoot/css/tenderfoot.css b/webapp/src/main/webapp/themes/tenderfoot/css/tenderfoot.css
index 68da484afe..be92057971 100644
--- a/webapp/src/main/webapp/themes/tenderfoot/css/tenderfoot.css
+++ b/webapp/src/main/webapp/themes/tenderfoot/css/tenderfoot.css
@@ -8,6 +8,8 @@ legend {
#nav {
background: #f7f9f9;
+ position: sticky;
+ top: 0;
}
#nav.affix {
@@ -365,3 +367,67 @@ img.add-individual {
height: 15px;
width: 15px;
}
+
+/* -------------------------------------------------> */
+/* TOOLTIP ----------------------------------------> */
+/* -------------------------------------------------> */
+.vivoTooltip {
+ opacity: 1 !important;
+ --bs-tooltip-max-width: 400px !important;
+ }
+
+ .vivoTooltip > .tooltip-inner {
+ background-color: #f1f2ee;
+ border: 1px solid #F1D031;
+ text-align: left;
+ border-radius: 0;
+ color: #333;
+ max-width: initial;
+ }
+
+ .vivoTooltip > .tooltip-inner .close-footer {
+ display: flex;
+ }
+
+ .vivoTooltip > .tooltip-inner .close-footer a.close {
+ margin-left: auto;
+ }
+
+ .vivoTooltip > .tooltip-inner h5 {
+ padding-bottom: 0;
+ }
+
+ .vivoTooltip > .tooltip-arrow::before {
+ --bs-tooltip-bg: #F1D031;
+ }
+
+ .tooltip:not(.vivoTooltip) > .tooltip-inner, .tooltip:not(.vivoTooltip) > .tooltip-inner * {
+ color: unset;
+ }
+
+ .downloadTip {
+ --bs-tooltip-max-width: 600px !important;
+ }
+
+ .vivoTooltip-yellow {
+ --bs-tooltip-max-width: 500px !important;
+ }
+
+ .vivoTooltip-yellow > .tooltip-inner {
+ background-color: #ffffc0;
+ font-size: 0.8em;
+ padding: 20px 22px;
+ text-align: left;
+ line-height: 12px;
+ }
+
+ span#qrCodeImage {
+ top: 23px;
+ right: 25px;
+ left: initial !important;
+ }
+
+ .show {
+ display: block !important;
+ opacity: 1;
+ }
\ No newline at end of file
diff --git a/webapp/src/main/webapp/themes/tenderfoot/js/propertyGroupControls-bootstrap.js b/webapp/src/main/webapp/themes/tenderfoot/js/propertyGroupControls-bootstrap.js
index 5be973429d..94700637c2 100644
--- a/webapp/src/main/webapp/themes/tenderfoot/js/propertyGroupControls-bootstrap.js
+++ b/webapp/src/main/webapp/themes/tenderfoot/js/propertyGroupControls-bootstrap.js
@@ -27,7 +27,7 @@ $(document).ready(function(){
return false;
});
$(window).on('popstate', function () {
- var anchor = location.hash || $('li[data-toggle=\'tab\']').first().attr('href');
+ var anchor = location.hash || $('li[data-bs-toggle=\'tab\']').first().attr('href');
$('li[href=\'' + anchor + '\']').tab('show');
if (anchor == "#viewAll") {
showViewAll();
diff --git a/webapp/src/main/webapp/themes/tenderfoot/templates/body/individual/individual--foaf-person.ftl b/webapp/src/main/webapp/themes/tenderfoot/templates/body/individual/individual--foaf-person.ftl
index 5aba938c81..3e2a094143 100644
--- a/webapp/src/main/webapp/themes/tenderfoot/templates/body/individual/individual--foaf-person.ftl
+++ b/webapp/src/main/webapp/themes/tenderfoot/templates/body/individual/individual--foaf-person.ftl
@@ -180,20 +180,21 @@
${stylesheets.add(
' ',
' ',
- ' ',
- ' '
+ ' '
)}
${headScripts.add(
'',
- '',
- ''
-)}
+ '',
+ '',
+ '',
+ ''
+ )}
${scripts.add(
'',
'',
- '',
+ '',
'',
'',
'',
diff --git a/webapp/src/main/webapp/themes/tenderfoot/templates/body/partials/individual/individual-property-group-tabs.ftl b/webapp/src/main/webapp/themes/tenderfoot/templates/body/partials/individual/individual-property-group-tabs.ftl
index 4bb5698d3d..fe8938e282 100644
--- a/webapp/src/main/webapp/themes/tenderfoot/templates/body/partials/individual/individual-property-group-tabs.ftl
+++ b/webapp/src/main/webapp/themes/tenderfoot/templates/body/partials/individual/individual-property-group-tabs.ftl
@@ -21,15 +21,15 @@
<#assign groupNameHtmlId = "${i18n().properties}" >
#if>
<#if tabCount = 1 >
- ${groupName?capitalize}
+ ${groupName?capitalize}
<#assign tabCount = 2>
<#else>
- ${groupName?capitalize}
+ ${groupName?capitalize}
#if>
#if>
#list>
<#if (propertyGroups.all?size > 1) >
- ${i18n().view_all_capitalized}
+ ${i18n().view_all_capitalized}
#if>
diff --git a/webapp/src/main/webapp/themes/tenderfoot/templates/page/partials/headScripts.ftl b/webapp/src/main/webapp/themes/tenderfoot/templates/page/partials/headScripts.ftl
index 49c9181a9c..c6a446ffe3 100644
--- a/webapp/src/main/webapp/themes/tenderfoot/templates/page/partials/headScripts.ftl
+++ b/webapp/src/main/webapp/themes/tenderfoot/templates/page/partials/headScripts.ftl
@@ -6,6 +6,7 @@ var i18nStrings = {
allCapitalized: '${i18n().all_capitalized?js_string}',
};
+
@@ -15,16 +16,10 @@ var i18nStrings = {
-
')}
+${headScripts.add('')}
${headScripts.add('')}
<#include "stylesheets.ftl">
diff --git a/webapp/src/main/webapp/themes/wilma/templates/individual--foaf-person.ftl b/webapp/src/main/webapp/themes/wilma/templates/individual--foaf-person.ftl
index 20e3f8cd40..c96dd73774 100644
--- a/webapp/src/main/webapp/themes/wilma/templates/individual--foaf-person.ftl
+++ b/webapp/src/main/webapp/themes/wilma/templates/individual--foaf-person.ftl
@@ -182,15 +182,13 @@
${stylesheets.add(' ',
' ',
- ' ',
- ' ')}
+ ' ')}
${headScripts.add('',
- '',
'')}
${scripts.add('',
- '',
+ '',
'',
'',
'',