Ancient fingerprints found on biblical seal in Jerusalem 'linked to Doomsday curse'

WATCH: Mind-Blowing Archaeological Discoveries That Bring History Back to Life

|

GB NEWS

GB News

By GB News


Published: 03/09/2025

- 04:26

Updated: 30/04/2026

- 11:21

Archaeologists also found a name inscribed on the artefact that matched ancient scripture

Archaeologists have discovered a millennia-old clay seal in Jerusalem which may be linked to an ancient curse.

The clay seal, referred to as a bulla, dates back to the Israelite period - which spanned from 1000 to 586 BC.


The seal was discovered with an inscription in Ancient Hebrew, which translated to "Belonging to Yeda'yah (son of) Asayahu".

**ARE YOU READING THIS ON OUR APP? DOWNLOAD NOW FOR THE BEST GB NEWS EXPERIENCE**

Archaeologists were left stunned after finding that a fingerprint, believed to be left from its ancient owner, was still visible on the artefact.

Biblical seal

The seal was discovered with an inscription in Ancient Hebrew, which translated to 'Belonging to Yeda'yah (son of) Asayahu'

|

TEMPLE MOUNT SIFTING PROJECT

Researchers also believe that the name found inscribed could link directly to crucial moments in the biblical account of King Josiah of Judah.

According to scripture, King Josiah had enacted sweeping religious reforms across ancient Jerusalem following the discovery of a scared scroll.

The scroll's content included severe curses for disobedience to God, outlining war, famine, exile and the destruction of the land and the Temple of Solomon.

Upon hearing the scroll's text, King Josiah reportedly became so concerned that he ripped his lavish robes to pieces and sent a group of officials to root out pagan practices in Jerusalem.

One of the trusted officials sent by King Josiah was called Asayahu - the same name inscribed on the newly discovered artefact as being the owner's father.

Archaeologist Mordechai Ehrlich holds the seal

PICTURED: Archaeologist Mordechai Ehrlich holds the seal

|

TEMPLE MOUNT SIFTING PROJECT

Researchers have claimed that the seal found reinforces the spiritual and historical significance of the scroll re-discovery event in Judah's religious history.

Zachi Dvira, who co-director of the project which found the artifact, said: "Obviously, we are not sure that the Asayahu mentioned on the sealing is the same that appears in the Bible.

"However, several such artefacts found in the area of the Temple Mount carry biblical names, and it does make sense, because these were not objects used by common people."

Markings found on the clay seal indicate that it was used to secure a storage container or possibly a bag.

ARCHAEOLOGY BREAKTHROUGHS - READ THE LATEST:

Temple Mount in Jerusalem

Several such artefacts found in the area of the Temple Mount carry biblical names, researchers said

|

GETTY

In the Bible, Asayahu is described as holding the title of "the king's servant".

Scholars have suggested that is very possible that his son, which the seal names as Yeda'yah, could have also held an important role in the Temple administration or royal court.

According to experts from the Temple Mount Sifting Project, the link is entirely plausible due to these type of seals only being used by high-ranking officials in ancient times.

The discovery comes after archaeologists uncovered ruins that they believed once housed the Ark of the Covenant in the Holy Land last week.

The Ark of the Covenant is described in scripture as being a gold-covered sacred chest, but what happened to it following the Babylonians' sack of Jerusalem in 568BC remains a mystery.

However, a team of archaeologists working at the site of Shiloh, an ancient biblical city, came across a stone structure that seems to mirror the orientation and dimensions of the biblical Tabernacle - which housed the Ark.

The Tel Shiloh dig's director, Dr Scott Stripling, said: "We've uncovered a monumental building from the Iron I period that matches the biblical dimensions of the Tabernacle.

"The structure is oriented east-west and divided in a 2:1 ratio, just as described in scripture."

}); window.REBELMOUSE_TASKS_QUEUE.push(function(){ // // Scroll position for primary navigation // const isMobile = window.innerWidth <= 768; // let menuButtonSize = 0; // const menuButton = document.querySelector('.navbar .nav .sticky-left-click'); // if (menuButton) { // menuButtonSize = menuButton.getBoundingClientRect().width; // } // var doc_body = document.body; // var pri_nav = document.querySelector('.navbar .nav'); // // Checking active primary menu item and calculating left scroll for the navigation // if (isMobile) { // const activeMenuItem = document.querySelector('.navbar .nav .nav--item.active'); // if (activeMenuItem) { // const activeMenuItemLeftPosition = activeMenuItem.offsetLeft; // const navigation = document.querySelector('.navbar .nav'); // const navigationComputedStyles = window.getComputedStyle(navigation); // const marginLeft = parseInt(navigationComputedStyles.getPropertyValue('margin-left')); // pri_nav.scrollLeft = activeMenuItemLeftPosition - marginLeft - menuButtonSize; // } // } else if (window.sessionStorage.getItem("pri_nav_pos")) { // pri_nav.scrollLeft = window.sessionStorage.getItem("pri_nav_pos"); // } // // The logic for the secondary menu wasn't changed // if (window.sessionStorage.getItem("sec_nav_pos") && window.sessionStorage.getItem("sec_nav_wrap")) { // var scrolli__item = document.querySelector('.'+window.sessionStorage.getItem("sec_nav_wrap")+' .list'); // if (scrolli__item) { // scrolli__item.scrollLeft = window.sessionStorage.getItem("sec_nav_pos"); // } // } // var pri_nav_items = pri_nav.querySelectorAll('a'); // var sec_nav_items = document.querySelectorAll('.navbar .secondary--nav a'); // // Function to restore active navigation states after page reload // function restoreActiveNavigation() { // // Restore active primary nav item // const activePriNavItem = sessionStorage.getItem('active_pri_nav_item'); // if (activePriNavItem) { // const priElement = document.querySelector(`[data-pri-nav-id="${activePriNavItem}"]`); // if (priElement) { // // Remove active class from all primary nav items first // document.querySelectorAll('.navbar .nav .nav--item').forEach(el => { // el.classList.remove('active'); // }); // priElement.classList.add('active'); // console.log('Restored active class to primary nav:', priElement); // } // } // // Restore active secondary nav item // const activeSecNavItem = sessionStorage.getItem('active_sec_nav_item'); // if (activeSecNavItem) { // const secElement = document.querySelector(`[data-sec-nav-id="${activeSecNavItem}"]`); // if (secElement) { // // Remove active class from all secondary nav items first // document.querySelectorAll('.navbar .secondary--nav .list__item').forEach(el => { // el.classList.remove('active'); // }); // secElement.classList.add('active'); // console.log('Restored active class to secondary nav:', secElement); // } // } // } // // Add unique identifiers to navigation items // function initializeNavigationIds() { // // Add IDs to primary nav items // pri_nav_items.forEach(function(item, index) { // const navItem = item.closest('.nav--item'); // if (navItem && !navItem.hasAttribute('data-pri-nav-id')) { // navItem.setAttribute('data-pri-nav-id', `pri-nav-${index}`); // } // }); // // Add IDs to secondary nav items // sec_nav_items.forEach(function(item, index) { // if (!item.hasAttribute('data-sec-nav-id')) { // item.setAttribute('data-sec-nav-id', `sec-nav-${index}`); // } // }); // } // // Primary navigation click handlers // pri_nav_items.forEach(function(item) { // item.onclick = function(event) { // console.log('Primary nav clicked:', event.target); // const navItem = event.target.closest('.nav--item'); // if (navItem) { // // Remove active class from all primary nav items // document.querySelectorAll('.navbar .nav .nav--item').forEach(el => { // el.classList.remove('active'); // }); // // Add active class to clicked primary nav item // navItem.classList.add('active'); // // Save active primary nav item to sessionStorage // const priNavId = navItem.getAttribute('data-pri-nav-id'); // if (priNavId) { // sessionStorage.setItem('active_pri_nav_item', priNavId); // console.log('Saved active primary nav item:', priNavId); // } // // Clear secondary nav active state when primary nav changes // sessionStorage.removeItem('active_sec_nav_item'); // document.querySelectorAll('.navbar .secondary--nav .list__item').forEach(el => { // el.classList.remove('active'); // }); // } // // Original sessionStorage handling // sessionStorage.removeItem("pri_nav_pos"); // sessionStorage.removeItem("sec_nav_wrap"); // sessionStorage.removeItem("sec_nav_pos"); // window.sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); // } // }); // // Secondary navigation click handlers (your existing code with modifications) // sec_nav_items.forEach(function(item) { // item.onclick = function(event) { // const target = event.target; // // Remove active class from all secondary nav items in current menu // const currentSecondaryNav = target.closest('.secondary--nav'); // if (currentSecondaryNav) { // currentSecondaryNav.querySelectorAll('.list__item').forEach(el => { // el.classList.remove('active'); // }); // } // // Add active class to clicked secondary nav item // target.classList.add('active'); // // Save active secondary nav item to sessionStorage // const secNavId = target.getAttribute('data-sec-nav-id'); // if (secNavId) { // sessionStorage.setItem('active_sec_nav_item', secNavId); // } // // Reset primary nav active state (optional, depending on your logic) // document.querySelectorAll('.navbar .nav .nav--item').forEach(el => { // el.classList.remove('active'); // }); // sessionStorage.removeItem('active_pri_nav_item'); // // Store scroll positions // sessionStorage.removeItem("sec_nav_wrap"); // sessionStorage.removeItem("sec_nav_pos"); // const sec_nav_wrap = target.closest('.list'); // if (sec_nav_wrap) { // sessionStorage.setItem("sec_nav_pos", sec_nav_wrap.scrollLeft); // const navItem = sec_nav_wrap.closest('.nav--item'); // if (navItem && navItem.classList[1]) { // sessionStorage.setItem("sec_nav_wrap", navItem.classList[1]); // } // } // sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); // }; // }); // // Hover effects for nav items // document.querySelectorAll('.nav--item').forEach(function(item) { // var timeout = null; // var timeout2 = null; // // Uncomment if you want hover effects // // item.onmouseover = function() { // // timeout = setTimeout(function(){ // // item.classList.add('hover_active') // // }, 300); // // clearTimeout(timeout2); // // } // // item.onmouseout = function() { // // timeout2 = setTimeout(function(){ // // item.classList.remove('hover_active') // // }, 300); // // clearTimeout(timeout); // // } // }); // // Initialize navigation system // function initializeNavigation() { // initializeNavigationIds(); // restoreActiveNavigation(); // } // // Initialize when DOM is ready // if (document.readyState === 'loading') { // document.addEventListener('DOMContentLoaded', initializeNavigation); // } else { // initializeNavigation(); // } // // Opinion section scroll handling // if (window.location.search=="?opinion") { // const opinionWidget = document.querySelector('.opinion-wrapper .widget'); // if (opinionWidget) { // if (/constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })(!window['safari'] || (typeof safari !== 'undefined' && window['safari'].pushNotification))) { // opinionWidget.scrollIntoView(true); // } else if(typeof InstallTrigger !== 'undefined') { // opinionWidget.scrollIntoView(true); // } else { // opinionWidget.scrollIntoView({ // block: 'nearest', // behavior: 'smooth' // }); // } // } // } // // Delay function for mouse interactions // var delay = function (elem, callback) { // var timeout = null; // elem.onmouseover = function() { // elem.classList.add('shit') // // Set timeout to be a timer which will invoke callback after 1s // timeout = setTimeout(callback, 1000); // }; // elem.onmouseout = function() { // doc_body.classList.remove('hide-sec_nav'); // clearTimeout(timeout); // } // }; }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ // Scroll position for primary navigation function init() { const isMobile = window.innerWidth <= 768; let menuButtonSize = 0; const menuButton = document.querySelector(".navbar .nav .sticky-left-click"); if (menuButton) { menuButtonSize = menuButton.getBoundingClientRect().width; } var doc_body = document.body; var pri_nav = document.querySelector(".navbar .nav"); var hamb_nav = document.querySelector(".hamburger .nav"); // Checking active primary menu item and calculating left scroll for the navigation const activeMenuItem = document.querySelector( ".navbar .nav .nav--item.active" ); if (activeMenuItem) { const activeMenuItemLeftPosition = activeMenuItem.offsetLeft; const navigation = document.querySelector(".navbar .nav"); const navigationComputedStyles = window.getComputedStyle(navigation); const marginLeft = parseInt( navigationComputedStyles.getPropertyValue("margin-left") ); pri_nav.scrollLeft = activeMenuItemLeftPosition - marginLeft - menuButtonSize; } if (!isMobile && window.sessionStorage.getItem("pri_nav_pos")) { pri_nav.scrollLeft = window.sessionStorage.getItem("pri_nav_pos"); } // The logic for the secondary menu wasn't changed if ( window.sessionStorage.getItem("sec_nav_pos") && window.sessionStorage.getItem("sec_nav_wrap") ) { var scrolli__item = document.querySelector( "." + window.sessionStorage.getItem("sec_nav_wrap") + " .list" ); if (scrolli__item) { scrolli__item.scrollLeft = window.sessionStorage.getItem("sec_nav_pos"); } } window.pri_nav_items = pri_nav.querySelectorAll("a"); window.sec_nav_items = document.querySelectorAll(".navbar .secondary--nav a"); window.hamb_nav_items = hamb_nav.querySelectorAll("a"); // Primary navigation click handlers pri_nav_items.forEach(function (item) { item.onclick = function (event) { console.log("Primary nav clicked:", event.target); const watchLive = event.target?.classList.contains('watch-live-button'); const navItem = event.target.closest(".nav--item"); if (navItem) { // Remove active class from all primary nav items (both navbar and hamburger) document.querySelectorAll(".navbar .nav .nav--item").forEach((el) => { el.classList.remove("active"); }); document .querySelectorAll(".hamburger .nav .nav--item") .forEach((el) => { el.classList.remove("active"); }); // Add active class to clicked primary nav item navItem.classList.add("active"); // Find corresponding item in hamburger menu and activate it const href = item.getAttribute("href"); const correspondingHamb = Array.from(hamb_nav_items).find( (a) => a.getAttribute("href") === href ); if (correspondingHamb) { const corrHambNavItem = correspondingHamb.closest(".nav--item"); if (corrHambNavItem) { corrHambNavItem.classList.add("active"); } } // Save active primary nav item to sessionStorage const priNavId = navItem.getAttribute("data-pri-nav-id"); if (priNavId) { if(watchLive){ let watchChannelActive = document.querySelector('.nav--item.watch--channel__active'); let activeMenuItemLeftPosition = watchChannelActive.offsetLeft; let navigation = document.querySelector(".navbar .nav"); let navigationComputedStyles = window.getComputedStyle(navigation); let marginLeft = parseInt(navigationComputedStyles.getPropertyValue("margin-left")); let targetScrollPosition = activeMenuItemLeftPosition - marginLeft - menuButtonSize; watchLiveLink = document.querySelector('.navbar .nav--item.watch--channel__active') watchLive_navId = watchLiveLink.getAttribute("data-pri-nav-id") watchLive_secId = watchLiveLink.querySelector('[aria-label="Live"]').getAttribute("data-sec-nav-id") sessionStorage.setItem("active_pri_nav_item", watchLive_navId); sessionStorage.setItem("active_sec_nav_item", watchLive_secId); window.sessionStorage.setItem("pri_nav_pos", targetScrollPosition); } else { sessionStorage.setItem("active_pri_nav_item", priNavId); console.log("Saved active primary nav item:", priNavId); } } // Clear secondary nav active state when primary nav changes if(!watchLive){ sessionStorage.removeItem("active_sec_nav_item"); } document .querySelectorAll(".navbar .secondary--nav .list__item") .forEach((el) => { el.classList.remove("active"); }); } // Original sessionStorage handling sessionStorage.removeItem("pri_nav_pos"); sessionStorage.removeItem("sec_nav_wrap"); sessionStorage.removeItem("sec_nav_pos"); if(!watchLive){ window.sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); } }; }); // Secondary navigation click handlers sec_nav_items.forEach(function (item) { item.onclick = function (event) { const target = event.target; // Remove active class from all secondary nav list__items document .querySelectorAll(".navbar .secondary--nav .list__item") .forEach((el) => { el.classList.remove("active"); }); // Add active class to the closest .list__item const listItem = target.closest(".list__item"); if (listItem) { listItem.classList.add("active"); } // Save active secondary nav item to sessionStorage const secNavId = target.getAttribute("data-sec-nav-id"); if (secNavId) { sessionStorage.setItem("active_sec_nav_item", secNavId); } // KEEP primary nav active and save it (if it's a sub-menu) const navItem = target.closest(".nav--item"); if (navItem) { const priNavId = navItem.getAttribute("data-pri-nav-id"); if (priNavId) { sessionStorage.setItem("active_pri_nav_item", priNavId); } } // Store scroll positions sessionStorage.removeItem("sec_nav_wrap"); sessionStorage.removeItem("sec_nav_pos"); const sec_nav_wrap = target.closest(".list"); if (sec_nav_wrap) { sessionStorage.setItem("sec_nav_pos", sec_nav_wrap.scrollLeft); const navItem = sec_nav_wrap.closest(".nav--item"); if (navItem && navItem.classList[1]) { sessionStorage.setItem("sec_nav_wrap", navItem.classList[1]); } } sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); }; }); // Watch Live button click handler const watchLiveButton = document.querySelector('.sticky-left .watch-live-button'); if (watchLiveButton) { watchLiveButton.onclick = function(event) { console.log('Watch Live button clicked:', event.target); // Find the nav--item with watch--channel__active active classes const watchChannelActive = document.querySelector('.nav--item.watch--channel__active.active'); if (watchChannelActive) { // Get the secondary navigation from this element const secondaryNav = watchChannelActive.querySelector('.secondary--nav'); if (secondaryNav) { // Find the active secondary nav item (Live) const activeSecondaryItem = secondaryNav.querySelector('.list__item.active'); if (activeSecondaryItem) { const secNavId = activeSecondaryItem.getAttribute('data-sec-nav-id'); if (secNavId) { sessionStorage.setItem('active_sec_nav_item', secNavId); console.log('Saved active secondary nav item from watch channel:', secNavId); } } // Save the watch channel primary nav as active const priNavId = watchChannelActive.getAttribute('data-pri-nav-id'); if (priNavId) { sessionStorage.setItem('active_pri_nav_item', priNavId); console.log('Saved active primary nav item from watch channel:', priNavId); } // Store scroll positions for secondary nav const secNavList = secondaryNav.querySelector('.list'); if (secNavList) { sessionStorage.setItem("sec_nav_pos", secNavList.scrollLeft); if (watchChannelActive.classList[1]) { sessionStorage.setItem("sec_nav_wrap", watchChannelActive.classList[1]); } } // Store primary nav scroll position sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); } } }; } // Hamburger navigation click handlers hamb_nav_items.forEach(function (item) { item.onclick = function (event) { console.log("Hamburger nav clicked:", event.target); const navItem = event.target.closest(".nav--item"); if (navItem) { // Remove active class from all primary nav items document.querySelectorAll(".navbar .nav .nav--item").forEach((el) => { el.classList.remove("active"); }); document .querySelectorAll(".hamburger .nav .nav--item") .forEach((el) => { el.classList.remove("active"); }); // Add active class to clicked hamburger nav item navItem.classList.add("active"); // Find corresponding item in primary nav and activate it const href = item.getAttribute("href"); const corresponding = Array.from( document.querySelectorAll(".navbar .nav .nav--item a") ).find((a) => a.getAttribute("href") === href); if (corresponding) { const corrNavItem = corresponding.closest(".nav--item"); if (corrNavItem) { corrNavItem.classList.add("active"); } } // Save active primary nav item to sessionStorage const priNavId = navItem.getAttribute("data-pri-nav-id"); if (priNavId) { sessionStorage.setItem("active_pri_nav_item", priNavId); console.log("Saved active primary nav item:", priNavId); } // Clear secondary nav active state when primary nav changes sessionStorage.removeItem("active_sec_nav_item"); document .querySelectorAll(".navbar .secondary--nav .list__item") .forEach((el) => { el.classList.remove("active"); }); } // Original sessionStorage handling sessionStorage.removeItem("pri_nav_pos"); sessionStorage.removeItem("sec_nav_wrap"); sessionStorage.removeItem("sec_nav_pos"); window.sessionStorage.setItem("pri_nav_pos", pri_nav.scrollLeft); }; }); // Hover effects for nav items document.querySelectorAll(".nav--item").forEach(function (item) { var timeout = null; var timeout2 = null; // Uncomment if you want hover effects // item.onmouseover = function() { // timeout = setTimeout(function(){ // item.classList.add('hover_active') // }, 300); // clearTimeout(timeout2); // } // item.onmouseout = function() { // timeout2 = setTimeout(function(){ // item.classList.remove('hover_active') // }, 300); // clearTimeout(timeout); // } }); } function restoreActiveNavigation() { const isMobile = window.innerWidth <= 768; if (isMobile) { console.log("Mobile detected - skipping sessionStorage restore"); return; } const activePriNavItem = sessionStorage.getItem("active_pri_nav_item"); const activeSecNavItem = sessionStorage.getItem("active_sec_nav_item"); // Always restore primary nav first (if it exists) if (activePriNavItem) { const priElement = document.querySelector( `.navbar [data-pri-nav-id="${activePriNavItem}"]` ); if (priElement) { // Clear all primary nav items document .querySelectorAll(".navbar .nav .nav--item") .forEach((el) => el.classList.remove("active")); document .querySelectorAll(".hamburger .nav .nav--item") .forEach((el) => el.classList.remove("active")); // Set primary nav as active priElement.classList.add("active"); console.log("Restored active class to primary nav:", priElement); // Activate corresponding hamburger item const priLink = priElement.querySelector("a"); if (priLink) { const href = priLink.getAttribute("href"); const correspondingHamb = Array.from(window.hamb_nav_items).find( (a) => a.getAttribute("href") === href ); if (correspondingHamb) { const corrHambNavItem = correspondingHamb.closest(".nav--item"); if (corrHambNavItem) { corrHambNavItem.classList.add("active"); console.log( "Restored active class to hamburger nav:", corrHambNavItem ); } } } } } // Then restore secondary nav (if it exists) if (activeSecNavItem) { const secElement = document.querySelector( `[data-sec-nav-id="${activeSecNavItem}"]` ); if (secElement) { document .querySelectorAll(".navbar .secondary--nav .list__item") .forEach((el) => el.classList.remove("active")); const listItem = secElement.closest(".list__item"); if (listItem) { listItem.classList.add("active"); console.log("Restored active secondary nav:", listItem); } } } } // Add unique identifiers to navigation items function initializeNavigationIds() { // Add IDs to primary nav items pri_nav_items.forEach(function (item, index) { const navItem = item.closest(".nav--item"); if (navItem && !navItem.hasAttribute("data-pri-nav-id")) { navItem.setAttribute("data-pri-nav-id", `pri-nav-${index}`); } }); // Add IDs to hamburger nav items hamb_nav_items.forEach(function (item, index) { const navItem = item.closest(".nav--item"); if (navItem && !navItem.hasAttribute("data-pri-nav-id")) { navItem.setAttribute("data-pri-nav-id", `pri-nav-${index}`); } }); // Add IDs to secondary nav items sec_nav_items.forEach(function (item, index) { if (!item.hasAttribute("data-sec-nav-id")) { item.setAttribute("data-sec-nav-id", `sec-nav-${index}`); } }); } // Initialize navigation system function initializeNavigation() { init(); initializeNavigationIds(); if(window.location.pathname === "/watch/live"){ restoreActiveNavigation(); } } // Initialize when DOM is ready // if (document.readyState === 'loading') { // document.addEventListener('DOMContentLoaded', initializeNavigation); // } else { // initializeNavigation(); // } REBELMOUSE_STDLIB.createElementChangeListener(".hamburger", function () { initializeNavigation(); }); // Opinion section scroll handling if (window.location.search == "?opinion") { const opinionWidget = document.querySelector(".opinion-wrapper .widget"); if (opinionWidget) { if ( /constructor/i.test(window.HTMLElement) || (function (p) { return p.toString() === "[object SafariRemoteNotification]"; })( !window["safari"] || (typeof safari !== "undefined" && window["safari"].pushNotification) ) ) { opinionWidget.scrollIntoView(true); } else if (typeof InstallTrigger !== "undefined") { opinionWidget.scrollIntoView(true); } else { opinionWidget.scrollIntoView({ block: "nearest", behavior: "smooth", }); } } } // Delay function for mouse interactions var delay = function (elem, callback) { var timeout = null; elem.onmouseover = function () { elem.classList.add("shit"); // Set timeout to be a timer which will invoke callback after 1s timeout = setTimeout(callback, 1000); }; elem.onmouseout = function () { doc_body.classList.remove("hide-sec_nav"); clearTimeout(timeout); }; }; }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ var pri_nav = document.querySelector('.navbar .nav'); var secondary_navs = Array.from(document.querySelectorAll('.secondary--nav')); var sec_nav_left_btn = document.querySelector(".secondary--nav__arrow.left"); var sec_nav_right_btn = document.querySelector(".secondary--nav__arrow.right"); secondary_navs.map(item => { const left = sec_nav_left_btn.cloneNode(true); const right = sec_nav_right_btn.cloneNode(true); item.append(left); item.append(right) }); REBELMOUSE_STDLIB.createElementChangeListener('.primary--nav__arrow', function (item) { buttonNextPrevVisiblity(0, item, pri_nav, ""); item.addEventListener("click", function () { const scroll_distance = item.classList.contains('left') ? -(pri_nav.clientWidth) : pri_nav.clientWidth; pri_nav.scrollBy({ left: scroll_distance, behavior: 'smooth' }); buttonNextPrevVisiblity(770,item,pri_nav,item.classList.contains('left')?"left":"right") }) }) REBELMOUSE_STDLIB.createElementChangeListener('.secondary--nav .secondary--nav__arrow', function (item) { const secondary_nav = item.closest('.secondary--nav').querySelector('.list'); if (secondary_nav) { buttonNextPrevVisiblity(0, item, secondary_nav, item, ""); } item.addEventListener("click", function () { if (secondary_nav) { const scroll_distance = item.classList.contains('left') ? -calculateScrollDistance(secondary_nav) : calculateScrollDistance(secondary_nav); secondary_nav.scrollBy({ left: scroll_distance, behavior: 'smooth' }); buttonNextPrevVisiblity(770, item, secondary_nav, item.classList.contains('left') ? "left" : "right"); } }); }); function calculateScrollDistance(secondary_nav) { const navLeft = secondary_nav.getBoundingClientRect().left; window.nav_leftttt = secondary_nav; const list = secondary_nav.querySelectorAll('a'); const navWidth = secondary_nav.clientWidth; let scroll_distance = 0; let j = 0; while (j < list.length) { //debugger const item = list[j++]; const itemWidth = item.clientWidth; const itemLeft = item.getBoundingClientRect().left; if (itemWidth + 20 + scroll_distance < navWidth + 20 && (itemLeft >= navLeft && itemLeft + 2 < navWidth + navLeft)) { scroll_distance=scroll_distance+itemWidth + 20; } else if (itemWidth + 20 + scroll_distance > navWidth) { break; } } return scroll_distance; } function buttonNextPrevVisiblity(timeOffset, btn, scrolling_item, clicked) { //console.log('scrolling item scroll - ', scrolling_item.scrollWidth); if (scrolling_item.scrollWidth <= scrolling_item.clientWidth + 5 && btn.classList.contains('right')) { btn.classList.remove("hidden"); } setTimeout(sccc => { if (btn.classList.contains('left')) { //console.log('scroll left - ', scrolling_item.scrollLeft); scrolling_item.scrollLeft > 0 ? btn.classList.remove("hidden") : btn.classList.add("hidden"); } if (btn.classList.contains('right')) { if (scrolling_item.scrollWidth <= scrolling_item.clientWidth + scrolling_item.scrollLeft + 5) { btn.classList.add("hidden"); } else { btn.classList.remove("hidden"); } } if (clicked == "left") { btn.nextElementSibling.classList.remove("hidden"); } if (clicked == "right") { btn.previousElementSibling.classList.remove("hidden") } }, timeOffset); } }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ REBELMOUSE_STDLIB.createElementChangeListener('.show-only-if-post-present', function (item) { if (!item.querySelector('.widget')) { item.classList.add('hidden'); if(item.nextSibling.classList.contains('ad--placeholder')){ item.nextSibling.remove(); } } }); REBELMOUSE_STDLIB.createElementChangeListener('.show-only-if-four-post-present', function (item) { if (item.querySelectorAll('.widget').length <= 3) { item.classList.add('hidden'); } }) REBELMOUSE_STDLIB.createElementChangeListener('.rebellt-ecommerce--price', function (item) { item.innerHTML = item.innerHTML.replace(/\$/g, '£'); }) }); window.REBELMOUSE_TASKS_QUEUE.push(function(){ // Piano object tp = window['tp'] || []; const addInfoToTP = () => { const preDefinedInfo = document.querySelector('.js-all-tags'); let allTags = `${preDefinedInfo.dataset.tags.replace(/[\[\]']+/g,'')}`; let primarySectionTitle = preDefinedInfo.dataset.contentSection; let postAuthor = preDefinedInfo.dataset.author; let postType = preDefinedInfo.dataset.contentType; let cd1 = preDefinedInfo.dataset.cd1; let cd2 = preDefinedInfo.dataset.cd2; let cd9 = preDefinedInfo.dataset.cd9; let cd11 = window.matchMedia('(display-mode: standalone)').matches ? 'pwa' : 'web'; // console.log(cd11); let cd12 = preDefinedInfo.dataset.cd12; let cd13 = preDefinedInfo.dataset.cd13; let cd14 = preDefinedInfo.dataset.cd14; let cd15 = preDefinedInfo.dataset.cd15; let cd16 = preDefinedInfo.dataset.cd16; let cd17 = preDefinedInfo.dataset.cd17; let cd18 = preDefinedInfo.dataset.cd18; let cd19 = document.referrer.split("/")[2] || 'not set'; let cd23 = 'not set'; let cd25 = window.navigator.userAgent; const getInfo = (string) => string.split('\':')[1].replace(/[&#,+()$~%.'"*?<>{}]/g, '').trim(); const passDataToTp = (type, data) => tp.push([type, data]); const passCustomDataToTp = (name, data) => tp.push(['setCustomVariable', name, data]); primarySectionTitle = getInfo(primarySectionTitle); passDataToTp('setContentSection', primarySectionTitle); postAuthor = getInfo(postAuthor); passDataToTp('setContentAuthor', postAuthor); postType = getInfo(postType); passCustomDataToTp('content_type', postType); cd1 = getInfo(cd1); passCustomDataToTp('cd1', cd1); cd2 = getInfo(cd2); passCustomDataToTp('cd2', cd2); cd9 = getInfo(cd9); passCustomDataToTp('cd9', cd9); passCustomDataToTp('cd11', cd11); cd12 = getInfo(cd12); passCustomDataToTp('cd12', cd12); cd13 = getInfo(cd13); passCustomDataToTp('cd13', cd13); cd14 = getInfo(cd14); passCustomDataToTp('cd14', cd14); cd15 = getInfo(cd15); passCustomDataToTp('cd15', cd15); cd16 = getInfo(cd16); passCustomDataToTp('cd16', cd16); cd17 = getInfo(cd17); passCustomDataToTp('cd17', cd17); cd18 = getInfo(cd18); passCustomDataToTp('cd18', cd18); passCustomDataToTp('cd19', cd19); passCustomDataToTp('cd23', cd23); passCustomDataToTp('cd25', cd25); return allTags.length ? passDataToTp('setTags', allTags) : false; } addInfoToTP(); });