{"version":3,"sources":["relatedInfo.js"],"names":["BDM","realtedInfo","$el","$","init","length","id","data","activateCarousel","autoplayDelay","slideTimeouts","activeSlidesByCarousel","types","updateActiveSlides","width","window","shiftSlide","$slides","direction","newActiveSlideCount","clearTimeout","indexOf","selector","removeClass","activeSlides","parents","attr","slice","i","push","shift","pop","unshift","forEach","slideIndex","eq","addClass","setTimeout","resize","newActiveSlides","closest","find","hide","carouselIndex","show","initializeSlides","document","on","e","preventDefault","$carousel","this","$thisButton","target","siblings","ajax","type","dataType","url","location","origin","beforeSend","html","success","container","items","Object","fromEntries","entries","filter","key","value","size","keys","count","content","each","index","subtitle","title","copy","date","time","startDate2","startDate","endDate2","endDate","timezone","eventSummary","contactName","email","register","image","alt","description","toLowerCase","ways","name","tagline"],"mappings":"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","file":"relatedInfo.min.js","sourcesContent":["/*globals $*/\r\n(function (BDM, realtedInfo) {\r\n 'use strict';\r\n\r\n var $el = {\r\n //stored elements\r\n realtedInfo: $('.related-information__tabs')\r\n };\r\n\r\n realtedInfo.init = function () {\r\n if ($el.realtedInfo.length > 0) {\r\n var id = $('.related-information').data('guid');\r\n\r\n $(document).on(\r\n 'click',\r\n '.related-information__tabs button[role=\"tab\"]',\r\n function (e) {\r\n e.preventDefault();\r\n var $thisButton = $(this);\r\n var target = $thisButton.attr('aria-controls');\r\n\r\n $thisButton\r\n .addClass('active')\r\n .attr('aria-selected', 'true')\r\n .siblings()\r\n .removeClass('active')\r\n .attr('aria-selected', 'false');\r\n\r\n $('#' + target)\r\n .addClass('active')\r\n .siblings()\r\n .removeClass('active');\r\n }\r\n );\r\n\r\n $.ajax({\r\n type: 'GET',\r\n dataType: 'JSON',\r\n url: window.location.origin + '/api/pagemodules/RelatedInfo',\r\n data: 'itemId=' + id,\r\n beforeSend: function () {\r\n var loader =\r\n '

Loading

';\r\n var container = $('.related-information__tabs');\r\n container.html(loader);\r\n },\r\n success: function (data) {\r\n let container = $('.related-information__tabs');\r\n let items = Object.fromEntries(\r\n Object.entries(data).filter(\r\n ([key, value]) => value !== undefined && value !== null\r\n )\r\n );\r\n let size = Object.keys(items).length;\r\n let count = 0;\r\n if (size > 0) {\r\n let content = `
`;\r\n container.html('');\r\n\r\n $.each(items, function (index, value) {\r\n if (value !== null) {\r\n var active = count === 0 ? 'active' : '';\r\n var selected = count === 0 ? 'true' : 'false';\r\n content += ``;\r\n count++;\r\n }\r\n });\r\n\r\n content += '
';\r\n count = 0;\r\n\r\n $.each(items, function (index, value) {\r\n if (value !== null) {\r\n var active = count === 0 ? 'active' : '';\r\n content += `
';\r\n }\r\n });\r\n\r\n content += '
';\r\n container.html(content);\r\n activateCarousel();\r\n }\r\n }\r\n });\r\n\r\n function activateCarousel() {\r\n var autoplayDelay = 15000;\r\n var slideTimeouts = [];\r\n var activeSlidesByCarousel = {};\r\n\r\n var types = [\r\n '#carousel-0 .card',\r\n '#carousel-1 .card',\r\n '.card__event',\r\n '.card__program'\r\n ];\r\n\r\n function updateActiveSlides() {\r\n var width = $(window).width();\r\n if (width < 769) {\r\n return 1;\r\n } else if (width < 992) {\r\n return 2;\r\n } else {\r\n return 3;\r\n }\r\n }\r\n function initializeSlides($slides, activeSlides) {\r\n for (var i = 0; i < activeSlides.length; i++) {\r\n $slides.eq(activeSlides[i]).addClass('active');\r\n }\r\n activeSlidesByCarousel[$slides.parents('.bn-carousel').attr('id')] =\r\n activeSlides;\r\n }\r\n\r\n $(window).resize(function () {\r\n types.forEach(function (selector) {\r\n var $slides = $(selector);\r\n var newActiveSlideCount = updateActiveSlides();\r\n\r\n var oldActiveSlides =\r\n activeSlidesByCarousel[\r\n $slides.parents('.bn-carousel').attr('id')\r\n ];\r\n var newActiveSlides = oldActiveSlides.slice(0, newActiveSlideCount);\r\n\r\n while (newActiveSlides.length < newActiveSlideCount) {\r\n newActiveSlides.push(\r\n (newActiveSlides[newActiveSlides.length - 1] + 1) %\r\n $slides.length\r\n );\r\n }\r\n\r\n if ($slides.length <= updateActiveSlides()) {\r\n $slides\r\n .closest('.bn-carousel')\r\n .find('.carousel-control-prev, .carousel-control-next')\r\n .hide();\r\n var carouselIndex = types.indexOf($slides.selector);\r\n clearTimeout(slideTimeouts[carouselIndex]);\r\n } else {\r\n $slides\r\n .closest('.bn-carousel')\r\n .find('.carousel-control-prev, .carousel-control-next')\r\n .show();\r\n clearTimeout(slideTimeouts[types.indexOf($slides.selector)]);\r\n slideTimeouts[types.indexOf($slides.selector)] = setTimeout(\r\n function () {\r\n shiftSlide($slides, 1, updateActiveSlides());\r\n },\r\n autoplayDelay\r\n );\r\n }\r\n\r\n $slides.removeClass('active');\r\n newActiveSlides.forEach(function (slideIndex) {\r\n $slides.eq(slideIndex).addClass('active');\r\n });\r\n activeSlidesByCarousel[$slides.parents('.bn-carousel').attr('id')] =\r\n newActiveSlides;\r\n });\r\n });\r\n\r\n function shiftSlide($slides, direction, newActiveSlideCount) {\r\n clearTimeout(slideTimeouts[types.indexOf($slides.selector)]);\r\n $slides.removeClass('active');\r\n var activeSlides =\r\n activeSlidesByCarousel[$slides.parents('.bn-carousel').attr('id')];\r\n\r\n if (newActiveSlideCount === 1) {\r\n var currentIndex = activeSlides[0];\r\n var nextIndex =\r\n (currentIndex + direction + $slides.length) % $slides.length;\r\n activeSlides = [nextIndex];\r\n } else {\r\n if (activeSlides.length > newActiveSlideCount) {\r\n activeSlides = activeSlides.slice(0, newActiveSlideCount);\r\n }\r\n\r\n if (direction === 1) {\r\n if (\r\n activeSlides[activeSlides.length - 1] ===\r\n $slides.length - 1\r\n ) {\r\n activeSlides = [];\r\n for (var i = 0; i < newActiveSlideCount; i++) {\r\n activeSlides.push(i);\r\n }\r\n } else {\r\n activeSlides.shift();\r\n activeSlides.push(\r\n (activeSlides[activeSlides.length - 1] + 1) % $slides.length\r\n );\r\n }\r\n } else {\r\n if (activeSlides[0] === 0) {\r\n activeSlides = [];\r\n for (\r\n var i = $slides.length - newActiveSlideCount;\r\n i < $slides.length;\r\n i++\r\n ) {\r\n activeSlides.push(i);\r\n }\r\n } else {\r\n activeSlides.pop();\r\n activeSlides.unshift(\r\n (activeSlides[0] - 1 + $slides.length) % $slides.length\r\n );\r\n }\r\n }\r\n }\r\n\r\n activeSlides.forEach(function (slideIndex) {\r\n $slides.eq(slideIndex).addClass('active');\r\n });\r\n\r\n activeSlidesByCarousel[$slides.parents('.bn-carousel').attr('id')] =\r\n activeSlides;\r\n\r\n slideTimeouts[types.indexOf($slides.selector)] = setTimeout(\r\n function () {\r\n shiftSlide($slides, 1, updateActiveSlides());\r\n },\r\n autoplayDelay\r\n );\r\n }\r\n\r\n types.forEach(function (selector) {\r\n var $slides = $(selector);\r\n var activeSlides = [];\r\n for (var i = 0; i < updateActiveSlides(); i++) {\r\n activeSlides.push(i);\r\n }\r\n initializeSlides($slides, activeSlides);\r\n\r\n // hide arrows if there is no more slides\r\n if ($slides.length <= updateActiveSlides()) {\r\n $slides\r\n .closest('.bn-carousel')\r\n .find('.carousel-control-prev, .carousel-control-next')\r\n .hide();\r\n var carouselIndex = types.indexOf($slides.selector);\r\n clearTimeout(slideTimeouts[carouselIndex]);\r\n } else {\r\n slideTimeouts.push(\r\n setTimeout(function () {\r\n shiftSlide($slides, 1, updateActiveSlides());\r\n }, autoplayDelay)\r\n );\r\n }\r\n });\r\n\r\n $(document).on('click', '.carousel-control-next', function (e) {\r\n e.preventDefault();\r\n var $carousel = $(this).closest('.bn-carousel');\r\n var selector;\r\n if ($carousel.find('.card').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card';\r\n } else if ($carousel.find('.card__event').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card__event';\r\n } else if ($carousel.find('.card__program').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card__program';\r\n }\r\n var $slides = $(selector);\r\n shiftSlide($slides, 1, updateActiveSlides());\r\n });\r\n\r\n $(document).on('click', '.carousel-control-prev', function (e) {\r\n e.preventDefault();\r\n var $carousel = $(this).closest('.bn-carousel');\r\n var selector;\r\n if ($carousel.find('.card').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card';\r\n } else if ($carousel.find('.card__event').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card__event';\r\n } else if ($carousel.find('.card__program').length) {\r\n selector = '#' + $carousel.attr('id') + ' .card__program';\r\n }\r\n var $slides = $(selector);\r\n shiftSlide($slides, -1, updateActiveSlides());\r\n });\r\n }\r\n }\r\n };\r\n})(\r\n (window.BDM = window.BDM || {}),\r\n (window.BDM.realtedInfo = window.BDM.realtedInfo || {})\r\n);\r\n$(function () {\r\n window.BDM.realtedInfo.init();\r\n});\r\n"]}