1try { 2 console.log("%c Custom.js ::::: jQuery version " + jQuery.fn.jquery + " -----------", "color: green;"); 3} catch (ex) { 4 console.log("%c Custom.js ::::: jQuery version undefined -----------", "color: red;"); 5} 6 7var scrollTop = 0; 8var screenStickyWidth = 1024; 9var screenMenuWallStickyWidth = 1024; 10var screenMenuNotCollapsed = 1024; 11 12document.addEventListener('click', function(event) { 13 if (getViewPortWidth() >= screenMenuNotCollapsed) { 14 if (event.target.classList.contains('navbar-toggler') || event.target.classList.contains('navbar-toggler-icon')) { return; } 15 var navbarOffCanvas = document.querySelector('.navbar--offcanvas.navbar--show'); 16 if (navbarOffCanvas) { 17 if (!navbarOffCanvas.contains(event.target)) { 18 jQuery('.navbar--offcanvas').removeClass('navbar--show'); 19 jQuery('body').removeClass('body--offcanvas-shown'); 20 } 21 } 22 } 23}); 24 25// --- navbar collapsed height 26jQuery(function() { 27 jQuery(".navbar-main .navbar-collapse").css("max-height", window.innerHeight); 28}); 29jQuery(window).resize(function() { 30 jQuery(".navbar-main .navbar-collapse").css("max-height", window.innerHeight); 31}); 32// --- navbar collapsed height 33 34// --- navbar on hover for dropdown menu 35if (siteTemplate != 'brainee') { 36 /* jQuery('.navbar li.dropdown').hover(function() { 37 if (jQuery(window).width() >= screenMenuNotCollapsed ) jQuery(this).find('> .dropdown-menu').stop(true, true).delay(200).fadeIn(500); 38 }, function() { 39 if (jQuery(window).width() >= screenMenuNotCollapsed ) jQuery(this).find('> .dropdown-menu').stop(true, true).delay(200).fadeOut(500); 40 }); 41 jQuery(document).on('keydown', function(e) { 42 if (e.key === 'Escape') { 43 jQuery('.navbar li.dropdown > .dropdown-menu').stop(true, true).fadeOut(300); 44 } 45 }); */ 46 jQuery(document).ready(function() { 47 // SprijeÄi zatvaranje parenta kad klikneÅ¡ nested dropdown toggle 48 jQuery('.navbar li.dropdown .dropdown-menu .dropdown-toggle').on('click', function(e) { 49 e.stopPropagation(); 50 }); 51 jQuery('.navbar li.dropdown').on('show.bs.dropdown', function() { 52 jQuery(this).find('> .dropdown-menu').stop(true, true).fadeIn(300); 53 }); 54 55 jQuery('.navbar li.dropdown').on('hide.bs.dropdown', function() { 56 jQuery(this).find('> .dropdown-menu').stop(true, true).fadeOut(300); 57 }); 58 59 }); 60} 61 62jQuery(window).resize(function() { 63 if (jQuery(window).width() >= screenMenuNotCollapsed ) jQuery(this).find('> .dropdown-menu').stop(true, true).delay(200).fadeOut(500); 64}); 65// --- navbar on hover for dropdown menu 66 67// --- menu on touch screen above collapsed menu resolution --- 68var blTouchMenu = false; 69if (getViewPortWidth() >= screenMenuNotCollapsed) { 70 if ("ontouchstart" in document.documentElement) { 71 jQuery('body').bind('touchstart', function(e) { 72 if (!blTouchMenu) jQuery(".navbar-nav .dropdown .dropdown-menu").hide(); 73 blTouchMenu = false; 74 }); 75 jQuery('.navbar-nav .dropdown').bind('touchstart', function(e) { 76 if (jQuery(this).children(".dropdown-menu").css("display") == "none") { 77 jQuery(".navbar-nav .dropdown .dropdown-menu").hide(); 78 jQuery(this).children(".dropdown-menu").toggle(); 79 e.preventDefault(); 80 } 81 blTouchMenu = true; 82 }); 83 } 84} 85// --- menu on touch screen above collapsed menu resolution --- 86 87// --- sticky menu --- 88// Returns a function, that, when invoked, will only be triggered at most once 89// during a given window of time. Normally, the throttled function will run 90// as much as it can, without ever going more than once per `wait` duration; 91// but if you'd like to disable the execution on the leading edge, pass 92// `{leading: false}`. To disable execution on the trailing edge, ditto. 93function throttle(func, wait, options) { 94 var context, args, result; 95 var timeout = null; 96 var previous = 0; 97 if (!options) options = {}; 98 var later = function() { 99 previous = options.leading === false ? 0 : Date.now(); 100 timeout = null;
101 result = func.apply(context, args); 102 if (!timeout) context = args = null; 103 }; 104 return function() { 105 var now = Date.now(); 106 if (!previous && options.leading === false) previous = now; 107 var remaining = wait - (now - previous); 108 context = this; 109 args = arguments; 110 if (remaining <= 0 || remaining > wait) { 111 if (timeout) { 112 clearTimeout(timeout); 113 timeout = null; 114 } 115 previous = now; 116 result = func.apply(context, args); 117 if (!timeout) context = args = null; 118 } else if (!timeout && options.trailing !== false) { 119 timeout = setTimeout(later, remaining); 120 } 121 return result; 122 }; 123}; 124 125var makeStickyElements = function () { 126 screenWidth = getViewPortWidth(); 127 if (screenWidth >= screenMenuWallStickyWidth) { 128 jQuery(window).scroll(throttle(menuOnScroll, 16)); 129 } 130}; 131 132var menuOnScroll = function () { 133 scrollTop = jQuery(this).scrollTop(); 134 stickyMenu(); 135 stickyWallBanners(); 136} 137 138makeStickyElements(); 139 140function stickyMenu() { 141 screenWidth = getViewPortWidth(); 142 if (screenWidth >= screenMenuWallStickyWidth) { 143 var scrollHeightOffset = 0; 144 if ( (siteTemplate == 'hnonline') || (siteTemplate == 'hnonline2') || (siteTemplate == 'svetevity') ) { 145 if (jQuery('.container--break-menu').length > 0) { 146 scrollHeightOffset += parseInt(jQuery('.container--break-00').outerHeight(true)); 147 } 148 if (jQuery('.header__wrap').length > 0) { 149 scrollHeightOffset += parseInt(jQuery('.header__wrap').outerHeight(true)); 150 } 151 if(!jQuery('#t3-header').hasClass('fixed-allways')) { 152 if (scrollTop <= scrollHeightOffset) { 153 jQuery('#t3-header').removeClass('fixed-top'); 154 } else { 155 jQuery('#t3-header').addClass('fixed-top'); 156 } 157 } 158 } else { 159 if (jQuery('.t3-header').length > 0) { 160 scrollHeightOffset += parseInt(jQuery('.container--break-00').outerHeight(true)); 161 } 162 if (jQuery('.t3-header').length > 0) { 163 scrollHeightOffset += parseInt(jQuery('.t3-header').outerHeight(true)); 164 } 165 if(!jQuery('#t3-mainnav').hasClass('fixed-allways')) { 166 if (scrollTop <= scrollHeightOffset) { 167 jQuery('#t3-mainnav').removeClass('fixed-top'); 168 } else { 169 jQuery('#t3-mainnav').addClass('fixed-top'); 170 } 171 } 172 } 173 } else { 174 jQuery('#t3-header').removeClass('fixed-top'); 175 jQuery('#t3-mainnav').removeClass('fixed-top'); 176 } 177} 178 179function stickyWallBanners() { 180 screenWidth = getViewPortWidth(); 181 if (screenWidth >= screenMenuWallStickyWidth) { 182 var scrollHeightOffset = 0; 183 //scrollHeightOffset += jQuery('.searchBox').css('display') =='none' ? 0 : parseInt(jQuery('.searchBox').outerHeight(true)); 184 scrollHeightOffset += parseInt(jQuery('.container--break-00').outerHeight(true)); 185 scrollHeightOffset += parseInt(jQuery('.t3-header').outerHeight(true)); 186 if (jQuery('.container--break-menu').length > 0) { 187 scrollHeightOffset += parseInt(jQuery('.container--break-menu').outerHeight(true)); 188 } 189 if (scrollTop < scrollHeightOffset) { 190 jQuery('.position_wall_left').removeClass('wall--fixed'); 191 jQuery('.position_wall_right').removeClass('wall--fixed'); 192 } else { 193 jQuery('.position_wall_left').addClass('wall--fixed'); 194 jQuery('.position_wall_right').addClass('wall--fixed'); 195 } 196 } 197} 198 199jQuery(window).resize(function () { 200 stickyMenu(); 201 stickyWallBanners(); 202}); 203 204function getViewPortWidth () { 205 return document.body.clientWidth; 206} 207// --- sticky menu --- 208 209// --- side sticky 210var initStickyModCols = function (columns) { 211 jQuery.each(columns, function (i, v) { 212 var column = jQuery(this); 213 var columnParent = column.parent(); 214 //rowHeight=column.parent().parent().height(); 215 rowHeight=column.closest(".row"); 216 column.parent().height(rowHeight); 217 218 //jQuery(".row--sticky").trigger("sticky_kit:recalc"); 219 220 if (screenWidth >= screenStickyWidth) { 221 column.stick_in_parent({ 222 offset_top: 53, spacer: false 223 }); 224 } else { 225 column.stick_in_parent({ 226 offset_top: 53, spacer: false 227 }); 228 } 229 230 jQuery(window).resize(function (data) { 231 if (jQuery(this).width() < screenStickyWidth) { 232 columnParent.height(column.outerHeight()); 233 column.trigger("sticky_kit:detach"); 234 } else { 235 rowHeight = column.closest('.row').height(); 236 columnParent.height(rowHeight); 237 if (!column.hasClass('is_stuck')) { 238 StickyRecalc(); 239 column.stick_in_parent(); 240 } 241 } 242 }); 243 }); 244}; 245 246// wait for all page to load including images 247jQuery(window).bind("load", function() { 248 screenWidth = jQuery(window).width(); 249 if (screenWidth >= screenStickyWidth) { 250 setTimeout( StickyModCols, 1000 ); 251 setInterval( StickyRecalc(), 5000) 252 } 253 try{/^https:\/\/brainee\.hnonline\.sk\/notsorry\/.+\/\d+-/.test(window.location)&&(document.getElementsByClassName("grid__head--title")[0].style.position="relative",document.getElementsByClassName("grid__head--title")[0].style.top="39px",document.getElementsByClassName("grid__head--title")[0].style.width="fit-content")}catch(e){}try{document.getElementsByClassName("mobile-menu")[0].checkVisibility()&&(document.getElementsByClassName("item__time--mod card__time")[0].style.top="23px",document.getElementsByClassName("item__time--mod card__time")[0].style.left="-143px",document.getElementsByClassName("item__time--mod card__time")[0].style.whiteSpace="nowrap",document.getElementsByClassName("item__time--mod card__time")[0].style.paddingBottom="20px",document.head.appendChild(document.createElement("style")).innerHTML=".item__time--mod::after{content:none}")}catch(e){} 254}); 255 256function StickyRecalc() { 257 jQuery(".row--sticky").each(function( index ) { 258 jQuery(this).trigger("sticky_kit:recalc"); 259 }); 260} 261 262function StickyModCols() { 263 initStickyModCols(jQuery(".row--sticky")); 264} 265// --- side sticky 266 267// --- responsive embed videos --- 268jQuery(function() { 269 var $allHVideos = jQuery(".itemFullText iframe[src*='//media.hnonline.sk']"); 270 $allHVideos.each(function() { 271 jQuery(this).removeAttr('style'); 272 }); 273}); 274 275var videoSelector = ".itemFullText iframe[src*='//player.vimeo.com'], .itemFullText iframe[src*='//www.youtube.com'], .card__youtube-wrap iframe[src*='//www.youtube.com'], .itemFullText iframe[src*='streamable.com'], .itemFullText object, .itemFullText embed"; 276var previewVideoSelector = ".card__article iframe[src*='//player.vimeo.com']"; 277 278function videosAspectRatio(mySelector) { 279 var $allVideos = jQuery(mySelector); 280 $allVideos.each(function() { 281 console.log('videosAspectRatio', mySelector); 282 283 if (!Number.isNaN(this.height / this.width)) { 284 jQuery(this) 285 // jQuery .data does not work on object/embed elements 286 .attr('data-aspectRatio', this.height / this.width) 287 .removeAttr('height') 288 .removeAttr('width'); 289 } 290 });
291} 292 293function videosAspectRatioResize(mySelector) { 294 var $allVideos = jQuery(mySelector); 295 $allVideos.each(function() { 296 var $el = jQuery(this); 297 $el.width('100%'); 298 $el.height($el.width() * $el.attr('data-aspectRatio')); 299 }); 300} 301 302/* 303jQuery(function() { 304 var $previewVideos = jQuery(".card__article iframe[src*='//player.vimeo.com'], .card__article iframe[src*='//www.youtube.com']"); 305 //$fluidEl = jQuery(".itemFullText"); 306 $previewVideos.each(function() { 307 jQuery(this) 308 .attr('data-aspectRatio', this.height / this.width) 309 .removeAttr('height') 310 .removeAttr('width'); 311 }); 312 jQuery(window).resize(function() { 313 $previewVideos.each(function() { 314 var $el = jQuery(this); 315 var newWidth = $el.closest('.card__article').width(); 316 $el .width(newWidth) 317 .height(newWidth * $el.attr('data-aspectRatio')); 318 }); 319 }).resize(); 320}); 321*/ 322// --- responsive embed videos --- 323 324// --- scripts for embeds 325function executeEmbedScripts () { 326 jQuery(function() { 327 jQuery("<div>").attr("class", "embed-scripts").appendTo("body"); 328 329 if (jQuery(".instagram-media").length > 0 ) { 330 //jQuery("<script>").attr("async", "").attr("src", "//www.instagram.com/embed.js").appendTo(".embed-scripts"); 331 } 332 if (jQuery(".se-embed--twitter").length > 0 ) { 333 jQuery("<script>").attr("async", "").attr("src", "https://platform.twitter.com/widgets.js").appendTo(".embed-scripts"); 334 } 335 if (jQuery(".se-embed--vimeo").length > 0 ) { 336 jQuery("<script>").attr("async", "").attr("src", "https://player.vimeo.com/api/player.js").appendTo(".embed-scripts"); 337 } 338 if (jQuery(".se-embed--apester").length > 0 ) { 339 jQuery("<script>").attr("async", "").attr("src", "https://static.apester.com/js/sdk/latest/apester-sdk.js").appendTo(".embed-scripts"); 340 } 341 if (jQuery(".se-embed--playbuzz").length > 0 ) { 342 (function(d,s,id){ 343 var js,fjs=d.getElementsByTagName(s)[0]; 344 if(d.getElementById(id))return; 345 js=d.createElement(s); 346 js.id=id; 347 js.src='https://embed.playbuzz.com/sdk.js'; 348 fjs.parentNode.insertBefore(js,fjs); 349 }(document,'script','playbuzz-sdk') 350 ); 351 } 352 if (jQuery(".container-wrapper-genially").length > 0 ) { 353 (function (d) { var js, id = "genially-embed-js", ref = d.getElementsByTagName("script")[0]; if (d.getElementById(id)) { return; } js = d.createElement("script"); js.id = id; js.async = true; js.src = "https://view.genial.ly/static/embed/embed.js"; ref.parentNode.insertBefore(js, ref); }(document)); 354 } 355 if (jQuery(".tiktok-embed").length > 0 ) { 356 jQuery("<script>").attr("async", "").attr("src", "https://www.tiktok.com/embed.js").appendTo(".embed-scripts"); 357 } 358 359 videosAspectRatio(videoSelector); 360 videosAspectRatio(previewVideoSelector); 361 362 jQuery(window).resize(function() { 363 videosAspectRatioResize(videoSelector); 364 videosAspectRatioResize(previewVideoSelector); 365 }).resize(); 366 367 console.log('PhotoswipeGalleries'); 368 try { photoswipeEmbedGalleries(); 369 } catch (ex) { /*console.log(ex)*/ }; 370 371 try { photoswipeRelatedGalleries(); 372 } catch (ex) { /*console.log(ex)*/ }; 373 374 console.log('EmbedArticleImages'); 375 try { //embedArticleImage(); 376 } catch (ex) { /*console.log(ex)*/ }; 377 378 console.log('photoswipeEmbedImage'); 379 try { if (typeof photoswipeEmbedImage === "function") { photoswipeEmbedImage(); } 380 } catch (ex) { /*console.log(ex)*/ }; 381 382 console.log('VastVideoObserver'); 383 try { vastYoutubeVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ }
384 try { vastMafraVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ } 385 }); 386} 387jQuery(function() { executeEmbedScripts(); }); 388 389// embed article image / picmx 390// now in custom_nojq.js 391function embedArticleImage () { 392 var embedArticleOrigImages = document.querySelectorAll('[data-orig-img]:not(.cropped-image-set)'); 393 if (embedArticleOrigImages.length > 0) { 394 embedArticleOrigImages.forEach(function(imgELement) { 395 console.log('----- embedArticleImage ----- ', imgELement); 396 var embedArticleVideo = imgELement.getAttribute('data-article-video'); 397 if ( embedArticleVideo && embedArticleVideo.includes("jwplayer.com") ) { 398 var urlJWVideoID = embedArticleVideo.replace('https://cdn.jwplayer.com/players/', '').split('-')[0]; 399 imgELement.setAttribute('src', 'https://cdn.jwplayer.com/v2/media/' + urlJWVideoID + '/poster.jpg'); 400 imgELement.parentNode.style.paddingBottom = '66.7%'; 401 imgELement.parentNode.style.overflow = 'hidden'; 402 imgELement.style.objectFit = 'cover'; 403 imgELement.style.objectPosition = 'center'; 404 imgELement.style.height = '100%'; 405 imgELement.classList.add('cropped-image-set') 406 } else { 407 var origImgURL = new URL(imgELement.getAttribute('data-orig-img')); 408 if (origImgURL.toString().indexOf('%7BmediaFile%7D') === -1) { 409 console.log(origImgURL.toString()) ; 410 var origImgPath = origImgURL.pathname; 411 412 var imgPath = origImgPath.substring(0, origImgPath.lastIndexOf('/')+1); 413 var imgNameExt = origImgPath.substring(origImgPath.lastIndexOf('/')+1); 414 415 var imgName = imgNameExt.substring(0, imgNameExt.lastIndexOf('.')); 416 var imgExt = imgNameExt.substring(imgNameExt.lastIndexOf('.')).toLowerCase(); 417 418 var newImgUrl = origImgURL.protocol + '//' + origImgURL.host + imgPath + 'h_' + imgName + '_480' + imgExt + origImgURL.search 419 420 console.log(newImgUrl); 421 422 imgELement.setAttribute('src', newImgUrl); 423 imgELement.classList.add('cropped-image-set') 424 } 425 } 426 }); 427 } 428} 429 430// embed youtube iframe api 431var embedYTVideos; 432//function onYouTubeIframeAPIReady() { 433// var videos = document.getElementsByClassName("card__youtube"); 434// embedYTVideos = videos; 435// var i; 436// for (i = 0; i < videos.length; i++) { 437// var videoDivID = videos[i]['id']; 438// var videoID = videos[i].getAttribute('data-videoID'); 439// if ( document.getElementsByClassName('itemView').length === 0 ) { 440// var videoWidth = parseInt(getComputedStyle(videos[i].parentNode.parentNode).width.replace("px", "")); 441// var videoHeight = parseInt(getComputedStyle(videos[i].parentNode.parentNode).height.replace("px", "")); 442// videos[i].style.width = videoWidth + 'px'; 443// videos[i].style.height = videoHeight + 'px'; 444// } else { 445// var videoWidth = parseInt(getComputedStyle(videos[i]).width.replace("px", "")); 446// var videoHeight = parseInt(videoWidth/1600*900); 447// } 448// 449// var player; 450// player = new YT.Player(videoDivID, { 451// videoId: videoID, // YouTube Video ID 452// width: videoWidth, // Player width (in px) 453// height: videoHeight, // Player height (in px) 454// playerVars: { 455// autoplay: 0, // Auto-play the video on load 456// controls: 1, // Show pause/play buttons in player 457// showinfo: 0, // Hide the video title 458// modestbranding: 1, // Hide the Youtube Logo 459// loop: 1, // Run the video in a loop, not working 460// fs: 0, // Hide the full screen button 461// cc_load_policy: 0, // Hide closed captions 462// iv_load_policy: 3, // Hide the Video Annotations 463// autohide: 1 // Hide video controls when playing 464// }, 465// events: { 466// 'onReady': onYTPlayerReady, 467// 'onStateChange': onYTPlayerStateChange, 468// 'onError': onYTPlayerError 469// } 470// });
471// } 472// function onYTPlayerReady(e) { 473// e.target.mute(); 474// e.target.playVideo(); 475// /* 476// var videoDivId = "YouTubeVideoPlayer-"+e.target.getVideoData()['video_id']; 477// var elYT = document.getElementById(videoDivId); 478// var videoWidth = parseInt(getComputedStyle(elYT).width.replace("px", "")); 479// var videoHeight = parseInt(videoWidth/1600*900); 480// elYT.parentNode.style.height = videoHeight + 'px'; 481// if ( document.getElementsByClassName('itemView').length === 0 ) { 482// elYT.parentNode.parentNode.style.background = 'black'; 483// } 484// */ 485// 486// // e.target.setLoop(true); // not working 487// //elYT.style.height = videoHeight + 'px'; 488// //elYTCard = elYT.parentNode.closest('.card__article'); 489// //elYTCardInfo = elYTCard.getElementsByClassName('card__info'); 490// //elYTCardInfoOffset = elYTCardInfo[0].offsetLeft; 491// } 492// function onYTPlayerStateChange(e) { 493// if (e.data == YT.PlayerState.ENDED) { 494// e.target.playVideo(); 495// } 496// /*if (e.data == YT.PlayerState.PAUSED) { 497// var videoDivId = "YouTubeVideoPlayer-"+e.target.getVideoData()['video_id']; 498// elYT = document.getElementById(videoDivId); 499// elYT.style.border = "2px solid red"; 500// }*/ 501// } 502// function onYTPlayerError(e) { 503// } 504//} 505 506window.addEventListener('resize', function(event) { 507 if (typeof embedYTVideos !== typeof undefined) { 508 for (i = 0; i < embedYTVideos.length; i++) { 509 var videoWidth; 510 var videoHeight; 511 if ( document.getElementsByClassName('itemView').length === 0 ) { 512 videoWidth = parseInt(getComputedStyle(embedYTVideos[i].parentNode.parentNode).width.replace("px", "")); 513 videoHeight = parseInt(getComputedStyle(embedYTVideos[i].parentNode.parentNode).height.replace("px", "")); 514 } else { 515 videoWidth = parseInt(getComputedStyle(embedYTVideos[i].parentNode).width.replace("px", "")); 516 videoHeight = parseInt(videoWidth/1600*900); 517 } 518 embedYTVideos[i].style.width = videoWidth + 'px'; 519 embedYTVideos[i].style.height = videoHeight + 'px'; 520 } 521 } 522}); 523 524// --- scripts for embeds 525 526// --- back to top button 527jQuery(function () { 528 jQuery('.impressum__back2top').click(function(){ 529 jQuery('html, body').animate({scrollTop:0}, 'slow'); 530 return false; 531 }); 532}); 533 534// --- anchor by js 535jQuery(function() { 536 jQuery('.anchor-js').click(function(event) { 537 event.preventDefault(); 538 window.location.href = jQuery(this).attr('data-href'); 539 }); 540}); 541// --- anchor by js 542 543// --- se link --- 544jQuery(function() { 545 if (jQuery(".btn--selink").length > 0 ) { 546 var selink = getCookie("selink"); 547 if (selink.length > 0) { 548 var btnSeLink = jQuery('.btn--selink'); 549 var cmsurl = btnSeLink.attr("data-href"); 550 btnSeLink.attr('href', selink + encodeURIComponent(window.btoa(cmsurl))); 551 btnSeLink.removeClass('d-none'); 552 } 553 } 554}); 555// --- se link --- 556 557// --- item print 558jQuery(function() { 559 jQuery('.item__share-print').click(function(event) { 560 event.preventDefault(); 561 window.print(); 562 }); 563}); 564// --- item print 565 566// --- cookie info --- 567function getCookie(cname) { 568 var name = cname + "="; 569 var ca = document.cookie.split(';'); 570 for(var i = 0; i < ca.length; i++) { 571 var c = ca[i]; 572 while (c.charAt(0) == ' ') { 573 c = c.substring(1); 574 } 575 if (c.indexOf(name) == 0) { 576 return c.substring(name.length, c.length); 577 } 578 } 579 return ""; 580} 581function setCookie(cname, cvalue, exdays) { 582 var d = new Date(); 583 d.setTime(d.getTime() + (exdays*24*60*60*1000)); 584 var expires = "expires="+ d.toUTCString(); 585 document.cookie = cname + "=" + cvalue + ";" + expires + ";"; 586} 587// --- cookie info --- 588 589function adFreeRightWidget() { 590 var widget = '<div id="cx_9717b1a0acc544d412a6b0610b3b9b263b64e5f8"></div>\n\ 591 <script type="text/javascript">\n\ 592 var cX = window.cX = window.cX || {}; cX.callQueue = cX.callQueue || [];\n\ 593 cX.CCE = cX.CCE || {}; cX.CCE.callQueue = cX.CCE.callQueue || [];\n\ 594 cX.CCE.run({\n\
595 widgetId: "9717b1a0acc544d412a6b0610b3b9b263b64e5f8",\n\ 596 targetElementId: "cx_9717b1a0acc544d412a6b0610b3b9b263b64e5f8"\n\ 597 });\n\ 598 </script>'; 599 jQuery('.position_item_right_01_top').append(widget); 600} 601 602function onNetworkTVEmbed () { 603 let targetNode = document.head; 604 observerOptions = {childList: true}, 605 observer = new MutationObserver(changeVideoPosition); 606 607 function changeVideoPosition (mutations) { 608 for (let mutation of mutations) { 609 for (var i = 0; i < mutation.addedNodes.length; i++) { 610 if (mutation.addedNodes[i].classList.contains('onnetworkplayercontainer')) { 611 var index = mutation.addedNodes[i].id.slice(-1); 612 jQuery('#onNetworkEmbedDiv-' + index).append(mutation.addedNodes[i]); 613 } 614 } 615 } 616 } 617 618 observer.observe(targetNode, observerOptions); 619} 620 621function getInterview() { 622 if (jQuery('.item__interview').length) { 623 var interview = jQuery('.item__interview')[0]; 624 625 function loadInterview() { 626 var reqData = { 627 option: 'com_ajax', 628 group: 'system', 629 plugin: 'ocm', 630 task: 'loadInterview', 631 view: 'item', 632 format: 'raw', 633 article_id: jQuery(interview).data('id'), 634 }; 635 jQuery.ajax({ 636 url: '/', 637 method: 'POST', 638 data: reqData, 639 cache: false, 640 dataType: 'html' 641 }).done(function(data){ 642 jQuery('.item__interview').html(data); 643 }).fail(function(jqXHR, textStatus, errorThrown){ 644 console.log(textStatus); 645 }); 646 } 647 648 loadInterview(); 649// setInterval(function(){ 650// loadInterview(); 651// }, 60000); 652 } 653} 654 655getInterview(); 656 657// megaboard / wallpaper overlap issue 658var posBreak00 = document.querySelector('.position_break_00_top'); 659function megaboardIntersection(entries) { 660 entries.map((entry) => { 661 if (entry.isIntersecting) { 662 posBreak00.classList.add('megaboard-overlap'); 663 //entry.target.classList.add('megaboard-overlap') 664 } else { 665 posBreak00.classList.remove('megaboard-overlap'); 666 //entry.target.classList.remove('megaboard-overlap') 667 } 668 }); 669} 670const megaboardObserver = new IntersectionObserver(megaboardIntersection); 671const megaBoard = document.querySelector('.position_megaboard_top'); 672if (megaBoard) { megaboardObserver.observe(megaBoard); } 673//const se__images = document.querySelectorAll('.se__img'); 674//se__images.forEach(image => imgObserver.observe(image)); 675 676jQuery(function() { 677 if (jQuery('#infinite-scroll-itemlist .infinite-scroll-items').length > 0 && jQuery('.category-infinite-scroll').length == 0) { 678 container = jQuery('#infinite-scroll-itemlist .infinite-scroll-items'); 679 container.infinitescroll({ 680 "loading":{"msgText":" ","finishedMsg":"","img":"/templates/site/images/gifs/loader.gif","finished":function(){ 681 videosAspectRatio(videoSelector); 682 videosAspectRatio(previewVideoSelector); 683 jQuery(window).resize(function() { 684 videosAspectRatioResize(videoSelector); 685 videosAspectRatioResize(previewVideoSelector); 686 }).resize(); 687 } 688 }, 689 "contentSelector":"#infinite-scroll-itemlist .infinite-scroll-items", 690 "itemSelector":"#infinite-scroll-itemlist .infinite-scroll-items >", 691 "navSelector":"#infinite-scroll-itemlist ul.pagination", 692 "nextSelector":"#infinite-scroll-itemlist ul.pagination li.next a:first", 693 "path":function(index){ 694 var next = jQuery("#infinite-scroll-itemlist ul.pagination li.next a:first").attr('href'); 695 var query = next.split('?'); 696 var urlParams = new URLSearchParams(query[1]);
697 var start = urlParams.get('start'); 698 var new_start = parseInt(start) * (index - 1); 699 var url = next.replace(/start=\d+/i, 'start=' + new_start); 700 var page = urlParams.get('page'); 701 var new_page = parseInt(page) + (index - 2); 702 url.replace(/page=\d+/i, 'page=' + new_page); 703 return url; 704 } 705 }); 706 } 707}); 708 709jQuery(function() { 710 if (jQuery('.category-infinite-scroll').length > 0) { 711 /*jQuery(window).scroll(function(){ 712 var position = jQuery(window).scrollTop(); 713 var bottom = jQuery(document).height() - jQuery(window).height(); 714 if (position == bottom) {*/ 715 jQuery('.category-infinite-scroll').on("click", function(index) { 716 var next = jQuery('.category-infinite-scroll .next').children(':first'); 717 var total = jQuery('.category-infinite-scroll').data('total'); 718 var pagenumber = next.attr('data-page'); 719 var loader = jQuery('#infinite-scroll-itemlist .spinner-border'); 720 if (parseInt(pagenumber) <= total && loader.hasClass('d-none')) { 721 var module_id = jQuery('.infinite-scroll-items').data('module_id'); 722 var category_id = jQuery('.infinite-scroll-items').data('category_id'); 723 loader.removeClass('d-none'); 724 var request = { 725 'option' : 'com_ajax', 726 'module' : 'ocm_media', 727 'method' : 'reloadModule', 728 'modid' : module_id, 729 'page' : pagenumber, 730 'format' : 'raw', 731 'getCategoryIdFromPath' : category_id ? 1 : 0, 732 'categoryIdFromPath' : category_id 733 }; 734 jQuery.ajax({ 735 type : 'POST', 736 data : request, 737 success: function (response) { 738 jQuery('.infinite-scroll-items').append(response); 739 if (parseInt(pagenumber) >= total) { 740 jQuery('.category-infinite-scroll').remove(); 741 } else { 742 next.attr('data-page', parseInt(pagenumber) + 1); 743 } 744 loader.addClass('d-none'); 745 746 videosAspectRatio(videoSelector); 747 videosAspectRatio(previewVideoSelector); 748 jQuery(window).resize(function() { 749 videosAspectRatioResize(videoSelector); 750 videosAspectRatioResize(previewVideoSelector); 751 }).resize(); 752 753 try { vastYoutubeVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ } 754 try { vastMafraVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ } 755 } 756 }); 757 } 758 }); 759 /*jQuery('.category-infinite-scroll .next').trigger("click"); 760 } 761 });*/ 762 } 763}); 764 765// infinite-scroll - observer 766var infiniteScrollObserverOptions = { 767 root: null, // null means root is viewport 768 rootMargin: '500px', 769 threshold: 0.01 // trigger callback when 1% of the element is visible 770} 771//function infiniteScrollIntersection(entries) { 772// entries.map((entry) => { 773// if (entry.isIntersecting) { 774// console.log('infinite scroll intersection'); 775// try { jQuery('.category-infinite-scroll .next').trigger("click"); 776// } catch (ex) {console.log(ex); } 777// } 778// }); 779//} 780//jQuery(function() { 781// const infiniteScrollObserver = new IntersectionObserver(infiniteScrollIntersection, infiniteScrollObserverOptions); 782// const infiniteScrollEnd = document.querySelectorAll('.infinite-scroll-end'); 783// if (infiniteScrollEnd.length > 0) { 784// console.log('infinite scroll observer'); 785// infiniteScrollObserver.observe(infiniteScrollEnd[0]); 786// } 787//}); 788 789var userSubscriber = 'no'; 790if (localStorage.getItem('subscriber') !== null) { 791 userSubscriber = localStorage.getItem('subscriber'); 792 if (userSubscriber == 'yes') { 793 document.querySelector('body').classList.add('subscriber--yes'); 794 document.querySelector('body').classList.remove('subscriber--no'); 795 } else { 796 document.querySelector('body').classList.add('subscriber--no'); 797 document.querySelector('body').classList.remove('subscriber--yes'); 798 } 799} 800
801// vast video autoplay 802var vastObserverOptions = { 803 root: null, // null means root is viewport 804 rootMargin: '0px', 805 threshold: 0.01 // trigger callback when 1% of the element is visible 806} 807 808// vast mafra videos 809function vastMafraVideosIntersection(entries) { 810 entries.map((entry) => { 811 if (entry.isIntersecting) { 812 try { 813 var videoIframe = entry.target; 814 var videoURL = new URL(videoIframe.getAttribute('src')); 815 var videoParams = new URLSearchParams(videoURL.search); 816 if (videoParams.has('autoplay') !== true) { 817 videoParams.append('autoplay', 1); 818 var newVideoURL = videoURL.protocol + '//' + videoURL.hostname + videoURL.pathname + '?' + videoParams.toString(); 819 videoIframe.setAttribute('src', newVideoURL); 820 } 821 } catch (error) { 822 console.error(error); 823 } 824 } 825 }); 826} 827 828// vast main image video 829function vastMafraVideosInitObserver() { 830 var vastMafraVideos = document.querySelectorAll('.js-player-viewport-status'); 831 vastMafraVideos.forEach(function(vastMafraVideo) { 832 if (!vastMafraVideo.hasAttribute('data-observed')) { 833 vastMafraVideo.setAttribute('data-observed', 'true'); 834 console.log("%c APV ::::: video " + vastMafraVideo.classList, "color: gray;"); 835 vastMafraVideosObserver.observe(vastMafraVideo); 836 } 837 }); 838} 839 840const vastMafraVideosObserver = new IntersectionObserver(vastMafraVideosIntersection, vastObserverOptions); 841setTimeout(vastMafraVideosInitObserver(), 500); 842 843// vast embed video 844function vastEmbedVideosInitObserver() { 845 var vastEmbedVideos = document.querySelectorAll(':scope .se-embed--video .se__video[src^="https://media.hnonline.sk/embed"]'); 846 vastEmbedVideos.forEach(function(vastEmbedVideo) { 847 if (!vastEmbedVideo.hasAttribute('data-observed')) { 848 vastEmbedVideo.setAttribute('data-observed', 'true'); 849 console.log("%c APV ::::: embed video " + vastEmbedVideo.classList, "color: gray;"); 850 vastEmbedVideosObserver.observe(vastEmbedVideo); 851 } 852 }); 853} 854 855const vastEmbedVideosObserver = new IntersectionObserver(vastMafraVideosIntersection, vastObserverOptions); 856setTimeout(vastEmbedVideosInitObserver, 500); 857 858// youtube vast 859function vastYoutubeVideosIntersection(entries) { 860 entries.map((entry) => { 861 if (entry.isIntersecting) { 862 try { 863 var videoIframe = entry.target; 864 videoIframe.contentWindow.postMessage('startVideo', '*'); 865 } catch (error) { 866 console.error(error); 867 } 868 } 869 }); 870} 871 872function vastYoutubeVideosInitObserver() { 873 var vastYoutubeVideos = document.querySelectorAll('[src^="/templates/site/vast/iframe_youtube.php"]'); 874 vastYoutubeVideos.forEach(function(vastYoutubeVideo) { 875 if (!vastYoutubeVideo.hasAttribute('data-observed')) { 876 vastYoutubeVideo.setAttribute('data-observed', 'true'); 877 console.log("%c APV ::::: iframe youtube " + vastYoutubeVideo.classList, "color: gray;"); 878 vastYoutubeVideosObserver.observe(vastYoutubeVideo); 879 } 880 }); 881} 882 883const vastYoutubeVideosObserver = new IntersectionObserver(vastYoutubeVideosIntersection, vastObserverOptions); 884setTimeout(vastYoutubeVideosInitObserver, 500); 885 886jQuery(function() { 887 if (jQuery('.user-infinite-scroll').length > 0) { 888 jQuery('.user-infinite-scroll').on("click", function(index) { 889 var next = jQuery('.user-infinite-scroll .next').children(':first'); 890 var total = jQuery('.user-infinite-scroll').data('total'); 891 var pagenumber = next.attr('data-page'); 892 var loader = jQuery('#user-infinite-scroll-itemlist .spinner-border'); 893 if (parseInt(pagenumber) <= total && loader.hasClass('d-none')) { 894 var user_id = jQuery('.infinite-scroll-items').data('user_id'); 895 loader.removeClass('d-none'); 896 var request = { 897 'option' : 'com_ocm', 898 'view' : 'ajax', 899 'task': 'getUserItems', 900 'user_id' : user_id, 901 'page' : pagenumber, 902 'layout' : 'user2_ajax', 903 'format' : 'html' 904 }; 905 jQuery.ajax({ 906 type : 'POST', 907 data : request, 908 success: function (response) { 909 console.log(response); 910 jQuery('.infinite-scroll-items').append(response); 911 if (parseInt(pagenumber) >= total) { 912 jQuery('.user-infinite-scroll').remove(); 913 } else { 914 next.attr('data-page', parseInt(pagenumber) + 1); 915 } 916 loader.addClass('d-none'); 917 918 videosAspectRatio(videoSelector); 919 videosAspectRatio(previewVideoSelector); 920 jQuery(window).resize(function() { 921 videosAspectRatioResize(videoSelector); 922 videosAspectRatioResize(previewVideoSelector); 923 }).resize(); 924 925 try { vastYoutubeVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ } 926 try { vastMafraVideosInitObserver(); } catch (ex) { /*console.log(ex);*/ } 927 } 928 }); 929 } 930 }); 931 } 932}); 933 934// START POLLS 935jQuery(function () { 936 if (jQuery('.poll-form').length) { 937 var rcscript = document.createElement("script"); 938 rcscript.setAttribute("src", 'https://www.google.com/recaptcha/api.js?render=6LcreBgnAAAAAJm0r1D9rQnaAyGak66aUeEBjVnO'); 939 rcscript.setAttribute("async", "async"); 940 document.head.appendChild(rcscript); 941 } 942 // Vox populi - VOTE 943 jQuery('body').on('submit', '.poll-form', function (event) { 944 event.preventDefault(); 945 var self = jQuery(this); 946 grecaptcha.ready(function() { 947 grecaptcha.execute('6LcreBgnAAAAAJm0r1D9rQnaAyGak66aUeEBjVnO', {action: 'poll'}).then(function(rctoken) { 948 request = { 949 'option': 'com_ocm', 950 'view': 'ajax', 951 'task': 'pollVote', 952 'id': self.data('id'), 953 'vote': self.find('input[type="radio"]:checked').val(), 954 'modid': self.data('module_id'), 955 'grecaptcha': rctoken, 956 'format': 'json' 957 }; 958 959 if (request.vote == -1) { 960 alert("ProsÃm, zvoľte jednu z odpovedÃ."); 961 } else jQuery.ajax({ 962 type: 'POST', 963 data: request, 964 success: function (response) { 965 if (!response) return; 966 var d = new Date(); 967 d.setTime(d.getTime() + (10*1000)); 968 var expires = "expires="+ d.toUTCString(); 969 document.cookie = "pollResult=" + self.data('id') + ";" + expires + ";"; 970 location.reload(); 971 } 972 }); 973 }); 974 }); 975 });
976 977 // Vox populi - Back to votes 978 jQuery('body').on('click', '.btn-poll-back', function (e) { 979 e.preventDefault(); 980 var results = jQuery(this).closest('.poll-wrapper').find('.poll-results'); 981 var questions = jQuery(this).closest('.poll-wrapper').find('.poll-form'); 982 983 results.empty(); 984 questions.show(); 985 }); 986 987 // Vox populi - Show poll results 988 jQuery('body').on('click', '.btn-poll-result', function (event) { 989 event.preventDefault(); 990 var parent = jQuery(this).prev('.poll-form'); 991 request = { 992 'option': 'com_ocm', 993 'view': 'ajax', 994 'task': 'pollVote', 995 'id': jQuery(this).data('result_id'), 996 'modid': parent.data('module_id'), 997 'subtask': 'result', 998 'format': 'json' 999 }; 1000 1001 jQuery.ajax({ 1002 type: 'POST', 1003 data: request, 1004 success: function (response) { 1005 parent.hide(); 1006 parent.parent().find('.poll-results').html(response); 1007 } 1008 }); 1009 }); 1010 1011 var poll = getCookie("pollResult"); 1012 1013 if (poll) { 1014 if (jQuery('.poll-wrapper#poll-' + poll).length) { 1015 jQuery('.poll-wrapper#poll-' + poll + ' .btn-poll-result').click(); 1016 jQuery('html, body').scrollTop(jQuery('.poll-wrapper#poll-' + poll).offset().top - 80); 1017 } 1018 } 1019 jQuery('.poll-form').each(function(){ 1020 var id = jQuery(this).attr('data-id'); 1021 var c = getCookie("sp_poll_voted_" + id); 1022 if (c) { 1023 if (jQuery('.poll-wrapper#poll-' + id).length) { 1024 jQuery('.poll-wrapper#poll-' + id + ' .btn-poll-result').click(); 1025 } 1026 } 1027 }); 1028}); 1029 1030// END POLLS
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.