PageSourceSearch

https://www.portofhelsinki.fi/wp-content/plugins/karhu-js-blocks/b…/analytics.js?ver=2be6f03cd7685fd1abdc

js portofhelsinki.fi collected 2026-10-02 04:25:34 UTC 1,407 bytes, 1 lines download raw bytes

1window.AddsearchAnalytics=class{constructor(e,t){this.resultsContainer=e,this.searchField=t}addEventListenersToSearchResults(e){document.querySelector(e.resultsContainer).addEventListener("click",function(t){const a=document.querySelector(e.searchField).value;let r=null;r="a"!==t.target.tagName?t.target.closest("a"):t.target,e.pushResultClickDataLayerEvent(a,r.href,e.getNodeIndex(r)+1)},!0)}addEventListenersToSearchInput(e){let t=null;document.querySelector(e.searchField).addEventListener("keydown",function(a){if(t&&clearTimeout(t),"Enter"===a.key){const t=a.currentTarget.value;e.getDataFromAddsearch(t,e)}else t=setTimeout(()=>{const t=document.querySelector(e.searchField).value;e.getDataFromAddsearch(t,e)},3e3)})}getNodeIndex(e){return[...e.parentNode.children].indexOf(e)}pushResultClickDataLayerEvent(e,t,a){window.dataLayer=window.dataLayer||[],a>10&&(a="10+");const r={event:"search_result_clicked",search_term:e,clicked_url:t,clicked_position:a};window.dataLayer.push(r)}getDataFromAddsearch(e,t){e.length<3||fetch("https://api.addsearch.com/v1/search/1ee6c5758050b4c50a29674cbdb169c3?term="+encodeURI(e)).then(e=>e.json()).then(a=>{t.pushSearchDataLayerEvent(e,a.total_hits)})}pushSearchDataLayerEvent(e,t){window.dataLayer=window.dataLayer||[];let a=!1,r=t;0===t?a=!0:t>10&&(r="10+");const n={event:"search_performed",search_term:e,results_num:r,zero_results:a};window.dataLayer.push(n)}};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.