{"version":3,"sources":["statemanager.js","AccordionContent.js","elevate-scripts.js","GlobalWidgets.js","HighlightStrap.js","HospitalSlider.js","iFrameWidget.js","ImageSlider.js","MainHeader.js","PrimaryNav.js","SampleWidget.js","testimonial-widget.js","VideoPlayer.js","widget-scripts.js","_BodyCopy.js","main.js"],"names":["ssm","window","StateManager","this","callbacks","sm","enter","leave","resize","firstRun","md","lg","xl","mobile","desktop","prototype","run","addState","id","query","onEnter","onLeave","onResize","onFirstRun","addOnEnter","stateId","callback","push","addOnLeave","addOnResize","addOnFirstRun","self","i","length","apply","call","SVHA","Utility","$","AccordionContent","args","defaults","firstOpen","allOpen","mobileOnly","resetOnViewportChange","selectors","widgetContainer","accordionItem","btnToggle","contentBlock","btnToggleAll","options","extend","$widgetContainer","$accordionItem","parent","$btnToggle","$btnToggleAll","isActive","setDefaultState","bindEvents","selector","toggleAccordion","targetItem","hasClass","closeAccordion","openAccordion","addClass","targetContent","find","openHeight","attr","css","height","display","removeClass","toggleAll","each","index","$itemContent","defaultHeight","resetAccordions","removeAttr","click","parents","Widgets","first","jQuery","loadEventsAndLearningContentBySpecialities","titleText","selectedSpeciality","filterType","html","val","text","ajax","url","type","data","seletedSpeciality","success","error","loadEventsAndLearningContentByHospitals","selectedHospital","selectedText","dataLayer","event","searchtext","console","log","seletedHospital","loadEventsBySearchText","searchText","trim","loadEventsAndLearningContentByPresenter","presenter","isvisitor","_isvisitor","getParameterByName","loadPresentersBySearchText","presenterIds","visitorPresenterIds","isevent","e","loadLearningContentSearchText","name","replace","location","href","results","RegExp","exec","decodeURIComponent","document","ready","change","keypress","which","preventDefault","GlobalWidgets","init","HighlightStrap","swiper","swiperContainer","$swiperContainer","initSwiper","Swiper","slidesPerView","spaceBetween","grabCursor","destroySwiper","destroy","HospitalSlider","swiperSlide","btnNext","btnPrev","$btnNext","$btnPrev","centeredSlides","centeredSlidesBounds","loop","slidesOffsetBefore","slidesOffsetAfter","breakpoints","992","freeMode","navigation","nextEl","prevEl","iFrameWidget","videoPlayer","heightMobile","heightDesktop","srcDefault","srcDesktop","$targetIframe","setHeight","srcSwap","srcUrl","ImageSlider","imgDescTxt","$imgDescTxt","getSlide","targetIndex","eq","setDescTxt","txtString","append","appendLink","isExternal","updateDesc","slideIndex","$targetSlide","imgTxt","linkUrl","slideStart","activeSlide","activeIndex","pagination","el","on","slideChangeTransitionStart","MainHeader","mainHeader","navWrapper","searchWrapper","btnNavTrigger","btnOpenSearch","btnOpenSearch_desktop","btnCloseSearch","searchInput","state","navOpen","$mainHeader","$btnNavTrigger","$btnOpenSearch","$btnOpenSearch_desktop","$btnCloseSearch","$searchInput","openOffCanvasNav","lockViewport","closeOffCanvasNav","unlockViewport","openSearch","focus","closeSearch","blur","PrimaryNav","activeNavParent","scrollOnOpen","scrollDelay","scrollSpeed","multipleOpen","mainNav","mainNavTrigger","mainNavSubNav","$mainNav","$mainNavTrigger","$mainNavSubNav","$navWrapper","initMobileAccordion","resetMobileAccordion","$container","scrollToBtn","targetBtn","scrollAmount","offset","top","animate","scrollTop","openSubNavAccordion","targetSubNav","maxHeight","setTimeout","closeSubNavAccordion","showSubNav","activeNavItem","hideSubNav","$parentListItem","$targetSubNav","next","hoverIntent","over","out","$elem","timeout","_SampleWidget_","widgetChild","timeOut","$widgetChild","clickable","VideoPlayer","videoElem","btnPlay","$videoElem","$btnPlay","initPlayer","Plyr","controls","playVideo","play","api_base","na_icon","av_icon","OrthoContact","form","stop","slideDown","hide","show","openContactForm","openSelfFundedEnquireFormOnHospitalSelect","hospitalId","setEnquireFormValues","openSelfFundedEnquireForm","doctorName","hospitalControl","serviceTypeControl","serviceNameControl","hospitalHiddenField","querySelector","dropdown","getElementById","selectedIndex","value","loadServiceTypes","loadFormServiceNamesSelector","selectedServiceType","fetch","then","response","ok","Error","json","serviceNameDropdown","innerHTML","defaultOption","createElement","textContent","appendChild","forEach","item","option","catch","message","setServiceFilterDefaultControlState","issearch","onTreatmentChange","treatmentId","contentType","empty","o","Option","title","body","body2","fullArticleLink","prop","onServiceTypeChange","servicefinderservicenamecookie","getServiceFinderCookieValue","hasValue","createOrUpdateServiceFinderCookie","serviceFinderMode","hdnserviceitemspath","serviceTypeId","hospitalCode","servicefinderdisplaymode","path","def","trigger","_html","getSelectedHospitalShortName","parts","baseUrl","params","hParamExists","newUrl","indexOf","split","param","startsWith","join","onHospitalChange","hospitalcode","isFilterRequest","requestedService","nodeid","onProcedureChange","$drTreatment","remove","Array","isArray","newOption","servicefinderhospitalcookie","servicefinderservicetypecookie","checkCorporatePopupCookie","style","onclick","setCorporatePopupCookie","slideUp","clone","insertBefore","prepend","stickOnScroll","topOffset","setParentOnStick","prependTo","hasOptionWithValue","addEventListener","key","onDocumentSearchServices","undefined","getElementsByClassName","includes","onload","localStorage","setItem","innerText","scriptLoaded","onFindSpecialistsChange","procedureId","bookNowLink","myHealthId","specialistBookingUrl","imageUrl","imageAlt","aboutDescriptionPart1","aboutDescriptionPart2","loadMyHealth1stScript","reinitializeMyHealth1stWidget","script","src","head","widget_setup","dispatchEvent","Event","SetNoService","GetTheHospitalNamesWithServiceOffer","hasText","hospital","customMessage","onSearchServices","searchTitleAndDescription","searchTerm","resultlist","resultitem","filterSelection","c","x","svRemoveClass","className","svAddClass","showCount","element","arr1","arr2","splice","cookieName","cookieValue","expirationDays","expirationDate","Date","setDate","getDate","cookieString","encodeURIComponent","toUTCString","cookie","selectSelector","filter","cookieArray","substring","OnFindOutMoreClick","a","target","cname","cvalue","exdays","getCorporatePopupCookie","d","setTime","getTime","expires","decodedCookie","ca","charAt","searchType","createArticleBlockHTML","fullArticleLink2","imageSrc","altText","linkHref","description","linkHref2","counterWrapper","counterElement","endValue","parseInt","getAttribute","currentValue","hasAnimated","startAnimation","classList","add","animateCounter","isInViewport","rect","getBoundingClientRect","left","bottom","innerHeight","documentElement","clientHeight","right","innerWidth","clientWidth","checkScroll","removeEventListener","setHospitalValue","getItem","referrer","map","URL","searchParams","get","toUpperCase","slice","children","firstElementChild","removeItem","picturefill","svg4everybody","FooterAccordion","highlightElements","querySelectorAll","videoElements","iFrameElements","SpecialistTemplateAccordions"],"mappings":"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","file":"main.min.js","sourcesContent":["(function (ssm, window) {\r\n\r\n function StateManager() {\r\n this.callbacks = {\r\n 'sm': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n },\r\n\r\n 'md': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n },\r\n\r\n 'lg': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n },\r\n\r\n 'xl': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n },\r\n\r\n 'mobile': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n },\r\n\r\n 'desktop': {\r\n 'enter': [],\r\n 'leave': [],\r\n 'resize': [],\r\n 'firstRun': []\r\n }\r\n };\r\n }\r\n\r\n StateManager.prototype.run = function() {\r\n this.ssm = ssm;\r\n this.ssm.addState({\r\n id: 'sm',\r\n query: '(min-width: 576px) and (max-width: 767px)',\r\n onEnter: this.onEnter('sm'),\r\n onLeave: this.onLeave('sm'),\r\n onResize: this.onResize('sm'),\r\n onFirstRun: this.onFirstRun('sm')\r\n });\r\n\r\n this.ssm.addState({\r\n id: 'md',\r\n query: '(min-width: 768px) and (max-width: 991px)',\r\n onEnter: this.onEnter('md'),\r\n onLeave: this.onLeave('md'),\r\n onResize: this.onResize('md'),\r\n onFirstRun: this.onFirstRun('md')\r\n });\r\n\r\n this.ssm.addState({\r\n id: 'lg',\r\n query: '(min-width: 992px) and (max-width: 1199px)',\r\n onEnter: this.onEnter('lg'),\r\n onLeave: this.onLeave('lg'),\r\n onResize: this.onResize('lg'),\r\n onFirstRun: this.onFirstRun('lg')\r\n });\r\n\r\n this.ssm.addState({\r\n id: 'xl',\r\n query: '(min-width: 1200px)',\r\n onEnter: this.onEnter('xl'),\r\n onLeave: this.onLeave('xl'),\r\n onResize: this.onResize('xl'),\r\n onFirstRun: this.onFirstRun('xl')\r\n });\r\n\r\n this.ssm.addState({\r\n id: 'mobile',\r\n query: '(max-width: 991px)',\r\n onEnter: this.onEnter('mobile'),\r\n onLeave: this.onLeave('mobile'),\r\n onResize: this.onResize('mobile'),\r\n onFirstRun: this.onFirstRun('mobile')\r\n });\r\n\r\n this.ssm.addState({\r\n id: 'desktop',\r\n query: '(min-width: 992px)',\r\n onEnter: this.onEnter('desktop'),\r\n onLeave: this.onLeave('desktop'),\r\n onResize: this.onResize('desktop'),\r\n onFirstRun: this.onFirstRun('desktop')\r\n });\r\n };\r\n\r\n StateManager.prototype.addOnEnter = function (stateId, callback) {\r\n if(\r\n typeof this.callbacks[stateId] !== 'undefined'\r\n && typeof this.callbacks[stateId].enter !== 'undefined'\r\n && typeof callback === 'function'\r\n ) {\r\n this.callbacks[stateId].enter.push(callback);\r\n }\r\n };\r\n StateManager.prototype.addOnLeave = function (stateId, callback) {\r\n if(\r\n typeof this.callbacks[stateId] !== 'undefined'\r\n && typeof this.callbacks[stateId].leave !== 'undefined'\r\n && typeof callback === 'function'\r\n ) {\r\n this.callbacks[stateId].leave.push(callback);\r\n }\r\n };\r\n StateManager.prototype.addOnResize = function (stateId, callback) {\r\n if(\r\n typeof this.callbacks[stateId] !== 'undefined'\r\n && typeof this.callbacks[stateId].resize !== 'undefined'\r\n && typeof callback === 'function'\r\n ) {\r\n this.callbacks[stateId].resize.push(callback);\r\n }\r\n };\r\n StateManager.prototype.addOnFirstRun = function (stateId, callback) {\r\n if(\r\n typeof this.callbacks[stateId] !== 'undefined'\r\n && typeof this.callbacks[stateId].firstRun !== 'undefined'\r\n && typeof callback === 'function'\r\n ) {\r\n this.callbacks[stateId].firstRun.push(callback);\r\n }\r\n };\r\n\r\n StateManager.prototype.onEnter = function (stateId) {\r\n var self = this;\r\n return function() {\r\n for(var i = 0; i < self.callbacks[stateId].enter.length; i++) {\r\n self.callbacks[stateId].enter[i].apply();\r\n }\r\n };\r\n };\r\n StateManager.prototype.onLeave = function (stateId) {\r\n var self = this;\r\n return function() {\r\n for(var i = 0; i < self.callbacks[stateId].leave.length; i++) {\r\n self.callbacks[stateId].leave[i].call();\r\n }\r\n };\r\n };\r\n StateManager.prototype.onResize = function (stateId) {\r\n var self = this;\r\n return function() {\r\n for(var i = 0; i < self.callbacks[stateId].resize.length; i++) {\r\n self.callbacks[stateId].resize[i].call();\r\n }\r\n };\r\n };\r\n StateManager.prototype.onFirstRun = function (stateId) {\r\n var self = this;\r\n return function() {\r\n for(var i = 0; i < self.callbacks[stateId].firstRun.length; i++) {\r\n self.callbacks[stateId].firstRun[i].call();\r\n }\r\n };\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Utility = window.SVHA.Utility || {};\r\n window.SVHA.Utility.StateManager = new StateManager();\r\n})(ssm, window);\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function AccordionContent(args) {\r\n this.defaults = {\r\n firstOpen: true,\r\n allOpen: false,\r\n mobileOnly: false,\r\n resetOnViewportChange: false,\r\n selectors: {\r\n widgetContainer: '.accordion-content',\r\n accordionItem: '.accordion-item',\r\n btnToggle: '.btn-toggle',\r\n contentBlock: '.content-block',\r\n btnToggleAll: '.btn-toggle-all'\r\n }\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$accordionItem = this.parent(this.options.selectors.accordionItem);\r\n this.$btnToggle = this.parent(this.options.selectors.btnToggle);\r\n this.$btnToggleAll = this.parent(this.options.selectors.btnToggleAll);\r\n\r\n\r\n if (this.options.mobileOnly === true){\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')){\r\n this.setDefaultState();\r\n }\r\n } else {\r\n this.setDefaultState();\r\n }\r\n this.bindEvents();\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n AccordionContent.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n\r\n /*\r\n UI events\r\n */\r\n AccordionContent.prototype.toggleAccordion = function (targetItem) {\r\n if (targetItem.hasClass('active')){\r\n this.closeAccordion(targetItem)\r\n } else {\r\n this.openAccordion(targetItem)\r\n }\r\n };\r\n\r\n AccordionContent.prototype.openAccordion = function (targetItem) {\r\n targetItem.addClass('active');\r\n var targetContent = targetItem.find(this.options.selectors.contentBlock);\r\n var openHeight = targetContent.attr('data-open-height');\r\n\r\n targetContent.css({\r\n height: openHeight+'px',\r\n display: 'block'\r\n });\r\n };\r\n\r\n AccordionContent.prototype.closeAccordion = function (targetItem) {\r\n targetItem.removeClass('active');\r\n var targetContent = targetItem.find(this.options.selectors.contentBlock);\r\n targetContent.css({\r\n height: 0\r\n });\r\n };\r\n\r\n AccordionContent.prototype.toggleAll = function () {\r\n var self = this;\r\n if (this.options.allOpen === false){\r\n\r\n this.$accordionItem.each(function(){\r\n self.openAccordion($(this));\r\n });\r\n\r\n this.options.allOpen = true;\r\n\r\n } else {\r\n\r\n this.$accordionItem.each(function(){\r\n self.closeAccordion($(this));\r\n });\r\n\r\n this.options.allOpen = false;\r\n }\r\n };\r\n\r\n\r\n /*\r\n Default state and event binding\r\n */\r\n AccordionContent.prototype.setDefaultState = function () {\r\n var self = this;\r\n this.$accordionItem.each(function(index){\r\n var $itemContent = $(this).find(self.options.selectors.contentBlock);\r\n var defaultHeight = $itemContent.height();\r\n\r\n $itemContent.attr('data-open-height', defaultHeight);\r\n $itemContent.css({\r\n display: 'block',\r\n height: '0px'\r\n });\r\n\r\n if(self.options.firstOpen === true){\r\n //Open the first\r\n if (index === 0){\r\n self.openAccordion($(this));\r\n }\r\n }\r\n });\r\n };\r\n\r\n /*\r\n Reset accordions\r\n */\r\n AccordionContent.prototype.resetAccordions = function () {\r\n var self = this;\r\n this.$accordionItem.each(function(index){\r\n var $itemContent = $(this).find(self.options.selectors.contentBlock);\r\n\r\n $itemContent.removeAttr('style');\r\n });\r\n };\r\n\r\n\r\n AccordionContent.prototype.bindEvents = function () {\r\n var self = this;\r\n\r\n this.$btnToggle.each(function(){\r\n\r\n $(this).click(function () {\r\n var targetItem = $(this).parents(self.options.selectors.accordionItem);\r\n self.toggleAccordion(targetItem);\r\n });\r\n });\r\n\r\n this.$btnToggleAll.click(function(){\r\n self.toggleAll();\r\n });\r\n\r\n if (this.options.resetOnViewportChange === true){\r\n SVHA.Utility.StateManager.addOnEnter('desktop', function() {\r\n self.resetAccordions();\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('mobile', function() {\r\n self.setDefaultState();\r\n });\r\n }\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.AccordionContent = AccordionContent;\r\n\r\n\r\n var targetItem = $('.accordion-content--inner .accordion-item.hospital-accord').first();\r\n\r\n if (targetItem && targetItem.length > 0) {\r\n\r\n targetItem.addClass('active');\r\n var targetContent = targetItem.find($('.content-block')[0]);\r\n var openHeight = targetContent.attr('data-open-height');\r\n\r\n targetContent.css({\r\n height: openHeight + 'px',\r\n display: 'block'\r\n });\r\n }\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","$(document).ready(function () {\r\n\r\n if ($('.ele-prg').length > 0) {\r\n\r\n loadEventsAndLearningContentBySpecialities();\r\n loadEventsAndLearningContentByHospitals();\r\n loadEventsBySearchText();\r\n loadEventsAndLearningContentByPresenter();\r\n loadPresentersBySearchText();\r\n loadLearningContentSearchText();\r\n $('#SelectedElevateSpeciality').change(function () {\r\n\r\n loadEventsAndLearningContentBySpecialities();\r\n\r\n var selectedText = $('#SelectedElevateSpeciality option:selected').text();\r\n\r\n if (selectedText && selectedText != \"\") {\r\n\r\n window.dataLayer = window.dataLayer || [];\r\n window.dataLayer.push({\r\n 'event': 'elevatescreensearch',\r\n 'searchtext': selectedText\r\n });\r\n\r\n console.log(\"Data Layer Push: \", selectedText);\r\n }\r\n\r\n });\r\n\r\n $('#SelectedHospital').change(function () {\r\n\r\n loadEventsAndLearningContentByHospitals();\r\n\r\n });\r\n\r\n $('input[type=radio][name=flexRadioDefault]').change(function () {\r\n\r\n loadEventsAndLearningContentBySpecialities();\r\n loadEventsAndLearningContentByHospitals();\r\n loadEventsAndLearningContentByPresenter();\r\n loadPresentersBySearchText();\r\n loadLearningContentSearchText();\r\n });\r\n\r\n // Trigger function on clicking the search icon\r\n $('#div-events-search').click(function () {\r\n loadEventsBySearchText();\r\n });\r\n\r\n $('#div-presenters-search').click(function () {\r\n loadPresentersBySearchText();\r\n });\r\n\r\n $('#div-learning-content-search').click(function () {\r\n loadLearningContentSearchText();\r\n });\r\n\r\n\r\n // Trigger function on pressing Enter key while the textbox is focused\r\n $('.ele-events input[name=\"SearchText\"]').keypress(function (e) {\r\n if (e.which == 13) { // Enter key corresponds to keycode 13\r\n e.preventDefault(); // Prevent the default action (form submission)\r\n loadEventsBySearchText();\r\n }\r\n });\r\n\r\n $('.ele-presenters input[name=\"SearchText\"]').keypress(function (e) {\r\n if (e.which == 13) { // Enter key corresponds to keycode 13\r\n e.preventDefault(); // Prevent the default action (form submission)\r\n loadPresentersBySearchText();\r\n }\r\n });\r\n\r\n $('.ele-learning-content input[name=\"SearchText\"]').keypress(function (e) {\r\n if (e.which == 13) { // Enter key corresponds to keycode 13\r\n e.preventDefault(); // Prevent the default action (form submission)\r\n loadLearningContentSearchText();\r\n }\r\n });\r\n\r\n $('.ele-events input[name=\"flexRadioDefault\"]').change(function () {\r\n /* var filterType = $(this).val();*/\r\n loadEventsBySearchText();\r\n });\r\n\r\n }\r\n\r\n});\r\n\r\nfunction loadEventsAndLearningContentBySpecialities() {\r\n\r\n if ($(\".ele-specs\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-event-and-content-area-id').html(\"\");\r\n\r\n var titleText = \"Content\";\r\n\r\n var selectedSpeciality = $('#SelectedElevateSpeciality').val();\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (filterType == \"events\") {\r\n titleText = \"Events\";\r\n }\r\n else if (filterType == \"presentations\") {\r\n titleText = \"Learning Content\";\r\n }\r\n\r\n if (!selectedSpeciality || selectedSpeciality == null) {\r\n selectedSpeciality = 0;\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText);\r\n }\r\n else {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" related to '\" + $('#SelectedElevateSpeciality :selected').text() + \"'\");\r\n }\r\n\r\n $.ajax({\r\n url: '/ElevateSpecialities/GetContentBySpecialityId',\r\n type: 'GET',\r\n data: { seletedSpeciality: selectedSpeciality, filterType: filterType },\r\n success: function (data) {\r\n $('#elevate-event-and-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function () {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction loadEventsAndLearningContentByHospitals() {\r\n\r\n if ($(\".ele-hospitals\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-event-and-content-area-id').html(\"\");\r\n\r\n var titleText = \"Content\";\r\n\r\n var selectedHospital = $('#SelectedHospital').val();\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (filterType == \"events\") {\r\n titleText = \"Events\";\r\n }\r\n else if (filterType == \"presentations\") {\r\n titleText = \"Learning Content\";\r\n }\r\n\r\n if (!selectedHospital || selectedHospital == null) {\r\n selectedHospital = 0;\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText);\r\n }\r\n else {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" related to '\" + $('#SelectedHospital :selected').text() + \"'\");\r\n }\r\n\r\n var selectedText = $('#SelectedHospital option:selected').text();\r\n\r\n if (selectedText && selectedText != \"\") {\r\n\r\n window.dataLayer = window.dataLayer || [];\r\n window.dataLayer.push({\r\n 'event': 'elevatescreensearch', \r\n 'searchtext': selectedText\r\n });\r\n\r\n console.log(\"Data Layer Push: \", selectedText);\r\n }\r\n\r\n $.ajax({\r\n url: '/ElevateHospitals/GetContentByHospitalId',\r\n type: 'GET',\r\n data: { seletedSpeciality: 0, seletedHospital: selectedHospital, filterType: filterType },\r\n success: function (data) {\r\n $('#elevate-event-and-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function () {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction loadEventsBySearchText() {\r\n\r\n if ($(\".ele-events\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-event-and-content-area-id').html(\"\");\r\n\r\n var titleText = \"Events\";\r\n\r\n var searchText = $('#SearchText').val();\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (filterType == \"groupbyhospital\") {\r\n titleText = \"events grouped by hospital\";\r\n }\r\n else if (filterType == \"groupbyspeciality\") {\r\n titleText = \"events grouped by speciality\";\r\n }\r\n\r\n if (!searchText || searchText == null) {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText);\r\n }\r\n else {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" related to '\" + searchText + \"'\");\r\n }\r\n\r\n if (searchText.trim() !== '') {\r\n window.dataLayer = window.dataLayer || [];\r\n window.dataLayer.push({\r\n 'event': 'elevatescreensearch',\r\n 'searchtext': searchText\r\n });\r\n\r\n console.log('Data Layer Push: SearchText = ' + searchText); // For testing purposes\r\n }\r\n\r\n $.ajax({\r\n url: '/ElevateEvents/GetElevateEventsBySearchText',\r\n type: 'GET',\r\n data: { searchText: searchText, filterType: filterType },\r\n success: function (data) {\r\n $('#elevate-event-and-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function () {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction loadEventsAndLearningContentByPresenter() {\r\n\r\n if ($(\".ele-presenter\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-event-and-content-area-id').html(\"\");\r\n\r\n var titleText = \"Content\";\r\n _isvisitor = false;\r\n\r\n var presenter = getParameterByName('id');\r\n var isvisitor = getParameterByName('v');\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (filterType == \"events\") {\r\n titleText = \"Events\";\r\n }\r\n else if (filterType == \"presentations\") {\r\n titleText = \"Learning Content\";\r\n }\r\n\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" by \" + $(\"#h1-doctor-name\").html());\r\n\r\n if (!presenter || presenter == null) {\r\n presenter = 0;\r\n }\r\n\r\n if (isvisitor == null || isvisitor == \"0\")\r\n _isvisitor = false;\r\n\r\n if (isvisitor == \"1\")\r\n _isvisitor = true;\r\n\r\n $.ajax({\r\n url: '/ElevatePresenter/GetContentByPresenterId',\r\n type: 'GET',\r\n data: { presenter: presenter, filterType: filterType, isvisitor: _isvisitor },\r\n success: function (data) {\r\n $('#elevate-event-and-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function () {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction loadPresentersBySearchText() {\r\n\r\n if ($(\".ele-presenters\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-event-and-content-area-id').html(\"\");\r\n var presenterIds = \"\";\r\n var visitorPresenterIds = \"\";\r\n var isevent = false;\r\n\r\n if ($(\"#hdnEventPresenterIds\") && $(\"#hdnEventPresenterIds\").val() && $(\"#hdnEventPresenterIds\").val() != '') {\r\n presenterIds = $(\"#hdnEventPresenterIds\").val();\r\n }\r\n\r\n if ($(\"#hdnEventVisitorPresenterIds\") && $(\"#hdnEventVisitorPresenterIds\").val() && $(\"#hdnEventVisitorPresenterIds\").val() != '') {\r\n visitorPresenterIds = $(\"#hdnEventVisitorPresenterIds\").val();\r\n }\r\n\r\n if ($(\"#hdnIsEvent\") && $(\"#hdnIsEvent\").val() && $(\"#hdnIsEvent\").val() != '') {\r\n isevent = $(\"#hdnIsEvent\").val();\r\n }\r\n\r\n var titleText = \"Presenters\";\r\n\r\n var searchText = $('#SearchText').val();\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (searchText.trim() !== '') {\r\n window.dataLayer = window.dataLayer || [];\r\n window.dataLayer.push({\r\n 'event': 'elevatescreensearch',\r\n 'searchtext': searchText\r\n });\r\n\r\n console.log('Data Layer Push: SearchText = ' + searchText);\r\n }\r\n\r\n if (filterType == \"groupbyhospital\") {\r\n titleText = \"events grouped by hospital\";\r\n }\r\n else if (filterType == \"groupbyspeciality\") {\r\n titleText = \"events grouped by speciality\";\r\n }\r\n\r\n if (!searchText || searchText == null) {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText);\r\n }\r\n else {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" related to '\" + searchText + \"'\");\r\n }\r\n\r\n $.ajax({\r\n url: '/ElevatePresenters/GetContentByPresenters',\r\n type: 'GET',\r\n data: { searchText: searchText, filterType: filterType, presenterIds: presenterIds, visitorPresenterIds: visitorPresenterIds, isevent: isevent },\r\n success: function (data) {\r\n $('#elevate-event-and-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function (e) {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction loadLearningContentSearchText() {\r\n\r\n if ($(\".ele-learning-content\").length > 0) {\r\n\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"block\");\r\n $('#elevate-learning-content-area-id').html(\"\");\r\n\r\n var titleText = \"Learning Content\";\r\n\r\n var searchText = $('#SearchText').val();\r\n var filterType = $('input[type=radio][name=flexRadioDefault]:checked').val();\r\n\r\n if (filterType == \"groupbycpd\") {\r\n titleText = \"learning content grouped by cpd approved\";\r\n }\r\n else if (filterType == \"groupbyspeciality\") {\r\n titleText = \"learning content grouped by speciality\";\r\n }\r\n\r\n if (searchText.trim() !== '') {\r\n\r\n window.dataLayer = window.dataLayer || [];\r\n window.dataLayer.push({\r\n 'event': 'elevatescreensearch',\r\n 'searchtext': searchText\r\n });\r\n\r\n console.log('Data Layer Push: SearchText = ' + searchText);\r\n }\r\n\r\n if (!searchText || searchText == null) {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText);\r\n }\r\n else {\r\n $(\"#elevate-specialities-search-header\").html(\"All \" + titleText + \" related to '\" + searchText + \"'\");\r\n }\r\n\r\n $.ajax({\r\n url: '/ElevateLearning/GetLearningContent',\r\n type: 'GET',\r\n data: { searchText: searchText, filterType: filterType },\r\n success: function (data) {\r\n $('#elevate-learning-content-area-id').html(data);\r\n $(\"#elevate-specialities-loader\").css(\"display\", \"none\");\r\n },\r\n error: function () {\r\n //alert(\"An error occurred while loading content.\");\r\n }\r\n });\r\n }\r\n}\r\n\r\nfunction getParameterByName(name) {\r\n name = name.replace(/[\\[\\]]/g, \"\\\\$&\");\r\n var url = window.location.href;\r\n var regex = new RegExp(\"[?&]\" + name + \"(=([^]*)|&|#|$)\", \"i\");\r\n var results = regex.exec(url);\r\n if (!results) return null;\r\n if (!results[2]) return '';\r\n return decodeURIComponent(results[2].replace(/\\+/g, \" \"));\r\n}","(function ($, window, undefined) {\r\n\r\n function GlobalWidgets(args) {};\r\n\r\n GlobalWidgets.prototype.init = function () {\r\n this.AccordionContent = new SVHA.Widgets.AccordionContent({\r\n firstOpen: false\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.GlobalWidgets = new GlobalWidgets;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function HighlightStrap(args) {\r\n this.swiper;\r\n this.defaults = {\r\n selectors: {\r\n widgetContainer: '.highlight-strap',\r\n swiperContainer: '.swiper-container',\r\n }\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$swiperContainer = this.parent(this.options.selectors.swiperContainer);\r\n\r\n this.init()\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n HighlightStrap.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n\r\n HighlightStrap.prototype.initSwiper = function(){\r\n this.swiper = new Swiper(this.$swiperContainer, {\r\n slidesPerView: 1,\r\n spaceBetween: 0,\r\n grabCursor: true,\r\n });\r\n };\r\n\r\n HighlightStrap.prototype.destroySwiper = function () {\r\n this.swiper.destroy();\r\n };\r\n\r\n HighlightStrap.prototype.init = function () {\r\n var self = this;\r\n\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')){\r\n this.initSwiper();\r\n }\r\n\r\n SVHA.Utility.StateManager.addOnEnter('desktop', function() {\r\n if(self.swiper){\r\n self.destroySwiper();\r\n }\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('mobile', function() {\r\n if(self.swiper) {\r\n self.initSwiper();\r\n }\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.HighlightStrap = HighlightStrap;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function HospitalSlider(args) {\r\n this.swiper;\r\n this.defaults = {\r\n selectors: {\r\n widgetContainer: '.hospital-slider',\r\n swiperContainer: '.swiper-container',\r\n swiperSlide: '.swiper-slide',\r\n btnNext: '.swiper-button-next',\r\n btnPrev: '.swiper-button-prev'\r\n }\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$swiperContainer = this.parent(this.options.selectors.swiperContainer);\r\n this.$btnNext = this.parent(this.options.selectors.btnNext);\r\n this.$btnPrev = this.parent(this.options.selectors.btnPrev);\r\n\r\n this.init()\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n HospitalSlider.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n HospitalSlider.prototype.init = function () {\r\n var self = this;\r\n\r\n this.swiper = new Swiper(this.$swiperContainer, {\r\n spaceBetween: 30,\r\n centeredSlides: true,\r\n centeredSlidesBounds: true,\r\n loop: false,\r\n slidesOffsetBefore: 15,\r\n slidesOffsetAfter: 0,\r\n\r\n breakpoints: {\r\n 992: {\r\n freeMode: true,\r\n grabCursor: true,\r\n slidesPerView: 3,\r\n slidesOffsetBefore: 0,\r\n }\r\n },\r\n\r\n // Navigation arrows\r\n navigation: {\r\n nextEl: this.$btnNext,\r\n prevEl: this.$btnPrev,\r\n },\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.HospitalSlider = HospitalSlider;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function iFrameWidget(args) {\r\n\r\n this.defaults = {\r\n videoPlayer: null,\r\n heightMobile: null,\r\n heightDesktop: null,\r\n srcDefault: null,\r\n srcDesktop: null,\r\n\r\n selectors: {\r\n widgetContainer: '.iframe-widget',\r\n },\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$targetIframe = this.parent('iframe');\r\n\r\n /*\r\n Set defaults\r\n */\r\n this.heightMobile = this.$widgetContainer.attr('data-height-mobile');\r\n this.heightDesktop = this.$widgetContainer.attr('data-height-desktop');\r\n this.srcDefault = this.$widgetContainer.attr('data-url-default');\r\n this.srcDesktop = this.$widgetContainer.attr('data-url-desktop');\r\n\r\n var self = this;\r\n\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')){\r\n\r\n self.setHeight(self.heightMobile);\r\n\r\n } else {\r\n\r\n self.setHeight(self.heightDesktop);\r\n self.srcSwap(self.srcDesktop);\r\n }\r\n\r\n SVHA.Utility.StateManager.addOnEnter('mobile', function() {\r\n self.setHeight(self.heightMobile);\r\n\r\n if(self.srcDesktop !== ''){\r\n self.srcSwap(self.srcDefault);\r\n }\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('desktop', function() {\r\n self.setHeight(self.heightDesktop);\r\n self.srcSwap(self.srcDesktop);\r\n });\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n iFrameWidget.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n iFrameWidget.prototype.setHeight = function (height) {\r\n this.$targetIframe.css('height', height);\r\n };\r\n\r\n iFrameWidget.prototype.srcSwap = function (srcUrl) {\r\n if (!srcUrl || srcUrl === ''){\r\n return;\r\n }\r\n this.$targetIframe.attr('src', srcUrl)\r\n };\r\n\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.iFrameWidget = iFrameWidget;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function ImageSlider(args) {\r\n this.swiper;\r\n this.defaults = {\r\n selectors: {\r\n widgetContainer: '.image-slider',\r\n swiperContainer: '.swiper-container',\r\n swiperSlide: '.swiper-slide',\r\n imgDescTxt: '.img-desc'\r\n }\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$swiperContainer = this.parent(this.options.selectors.swiperContainer);\r\n this.$imgDescTxt = this.parent(this.options.selectors.imgDescTxt);\r\n\r\n this.init()\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n ImageSlider.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n ImageSlider.prototype.getSlide = function(targetIndex){\r\n return this.$swiperContainer.find(this.options.selectors.swiperSlide).eq(targetIndex);\r\n };\r\n\r\n ImageSlider.prototype.setDescTxt = function (txtString) {\r\n this.$imgDescTxt.append('
'+txtString+'
');\r\n };\r\n\r\n ImageSlider.prototype.appendLink = function (txtString, url, isExternal) {\r\n if (isExternal === 'True'){\r\n this.$imgDescTxt.append(''+txtString+'');\r\n } else {\r\n this.$imgDescTxt.append(''+txtString+'');\r\n }\r\n };\r\n\r\n ImageSlider.prototype.updateDesc = function(slideIndex){\r\n var $targetSlide = this.getSlide(slideIndex);\r\n var imgTxt = $targetSlide.find('img').attr('data-caption');\r\n var linkUrl = $targetSlide.find('img').attr('data-caption-link');\r\n var isExternal = $targetSlide.find('img').attr('data-caption-external-link');\r\n\r\n //Clear it first\r\n this.$imgDescTxt.html('');\r\n\r\n if(linkUrl){\r\n this.appendLink(imgTxt, linkUrl, isExternal)\r\n } else {\r\n this.setDescTxt(imgTxt);\r\n }\r\n };\r\n\r\n ImageSlider.prototype.slideStart = function(){\r\n var activeSlide = this.swiper.activeIndex;\r\n this.updateDesc(activeSlide)\r\n };\r\n\r\n ImageSlider.prototype.init = function () {\r\n var self = this;\r\n\r\n this.updateDesc(0);\r\n\r\n this.swiper = new Swiper(this.$swiperContainer, {\r\n pagination: {\r\n el: '.pagination-block',\r\n type: 'fraction',\r\n },\r\n navigation: {\r\n nextEl: '.swiper-button-next',\r\n prevEl: '.swiper-button-prev',\r\n },\r\n\r\n on: {\r\n slideChangeTransitionStart: function(){\r\n self.slideStart();\r\n }\r\n }\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.ImageSlider = ImageSlider;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function MainHeader(args) {\r\n\r\n this.defaults = {\r\n selectors: {\r\n mainHeader: '#main-header',\r\n navWrapper: '.nav-wrapper',\r\n searchWrapper: '.site-search',\r\n btnNavTrigger: '.btn-nav-trigger',\r\n btnOpenSearch: '.btn-search-trigger',\r\n btnOpenSearch_desktop: '.btn-search',\r\n btnCloseSearch: '.btn-close-search',\r\n searchInput: '#site-search'\r\n },\r\n\r\n state : {\r\n navOpen: false,\r\n }\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$mainHeader = $(this.options.selectors.mainHeader);\r\n this.$btnNavTrigger = this.parent(this.options.selectors.btnNavTrigger);\r\n this.$btnOpenSearch = this.parent(this.options.selectors.btnOpenSearch);\r\n this.$btnOpenSearch_desktop = this.parent(this.options.selectors.btnOpenSearch_desktop);\r\n this.$btnCloseSearch = this.parent(this.options.selectors.btnCloseSearch);\r\n this.$searchInput = this.parent(this.options.selectors.searchInput);\r\n\r\n this.bindEvents();\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n MainHeader.prototype.parent = function (selector) {\r\n return $(selector, this.$mainHeader);\r\n };\r\n\r\n /*\r\n Interface events -- mobile specific\r\n */\r\n MainHeader.prototype.openOffCanvasNav = function () {\r\n this.lockViewport();\r\n this.$btnNavTrigger.addClass('is-active');\r\n $('body').addClass('nav-open');\r\n this.options.state.navOpen = true;\r\n };\r\n\r\n MainHeader.prototype.closeOffCanvasNav = function () {\r\n this.unlockViewport();\r\n this.$btnNavTrigger.removeClass('is-active');\r\n $('body').removeClass('nav-open');\r\n this.options.state.navOpen = false;\r\n };\r\n\r\n /**\r\n * Shared interface events\r\n */\r\n MainHeader.prototype.lockViewport = function () {\r\n $('html').addClass('viewport-locked');\r\n };\r\n\r\n MainHeader.prototype.unlockViewport = function () {\r\n $('html').removeClass('viewport-locked');\r\n };\r\n\r\n\r\n MainHeader.prototype.openSearch = function () {\r\n $('body').addClass('search-open');\r\n this.$searchInput.focus();\r\n\r\n };\r\n\r\n MainHeader.prototype.closeSearch = function () {\r\n $('body').removeClass('search-open');\r\n this.$searchInput.blur();\r\n };\r\n\r\n\r\n MainHeader.prototype.bindEvents = function () {\r\n var self = this;\r\n\r\n this.$btnNavTrigger.click(function(){\r\n if (self.options.state.navOpen === false){\r\n self.openOffCanvasNav();\r\n } else {\r\n self.closeOffCanvasNav();\r\n }\r\n });\r\n\r\n this.$btnOpenSearch_desktop.click(function(){\r\n self.openSearch();\r\n });\r\n\r\n this.$btnOpenSearch.click(function(){\r\n self.openSearch();\r\n });\r\n\r\n this.$btnCloseSearch.click(function(){\r\n self.closeSearch();\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.MainHeader = MainHeader;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function PrimaryNav(args) {\r\n this.activeNavParent = null;\r\n\r\n this.defaults = {\r\n scrollOnOpen: true,\r\n scrollDelay: 250,\r\n scrollSpeed: 500,\r\n multipleOpen: false,\r\n selectors: {\r\n mainNav: '.main-nav',\r\n mainNavTrigger: '.main-trigger',\r\n mainNavSubNav: '.subnav',\r\n navWrapper: '.nav-wrapper'\r\n },\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$mainNav = $(this.options.selectors.mainNav);\r\n this.$mainNavTrigger = this.$mainNav.find(this.options.selectors.mainNavTrigger);\r\n this.$mainNavSubNav = this.$mainNav.find(this.options.selectors.mainNavSubNav);\r\n this.$navWrapper = this.$mainNav.parents(this.options.selectors.navWrapper);\r\n\r\n var self = this;\r\n\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')) {\r\n this.initMobileAccordion();\r\n }\r\n\r\n SVHA.Utility.StateManager.addOnEnter('desktop', function() {\r\n self.resetMobileAccordion();\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('mobile', function() {\r\n self.initMobileAccordion();\r\n });\r\n\r\n this.bindEvents();\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n PrimaryNav.prototype.parent = function (selector) {\r\n return $(selector, this.$container);\r\n };\r\n\r\n /*\r\n Interface events -- mobile specific\r\n */\r\n PrimaryNav.prototype.scrollToBtn = function (targetBtn){\r\n\r\n var btnPos = targetBtn.offset(); //Relative to document\r\n var offSet = 87; //Height of nav bar\r\n\r\n var scrollAmount = btnPos.top - offSet;\r\n\r\n if (scrollAmount != 0){\r\n this.$navWrapper.animate({\r\n scrollTop: '+='+scrollAmount+'px'\r\n }, this.options.scrollSpeed);\r\n }\r\n };\r\n\r\n\r\n PrimaryNav.prototype.openSubNavAccordion = function (parent, targetSubNav){\r\n parent.addClass('active');\r\n var openHeight = targetSubNav.attr('data-open-height');\r\n\r\n targetSubNav.css({\r\n maxHeight: openHeight+'px',\r\n display: 'block'\r\n });\r\n\r\n if (this.options.scrollOnOpen === true){\r\n var self = this;\r\n setTimeout(function(){\r\n self.scrollToBtn(parent);\r\n }, self.options.scrollDelay);\r\n }\r\n };\r\n\r\n PrimaryNav.prototype.closeSubNavAccordion = function (parent, targetSubNav){\r\n if (!targetSubNav){\r\n targetSubNav = parent.find(this.options.selectors.mainNavSubNav);\r\n }\r\n\r\n parent.removeClass('active');\r\n targetSubNav.css({\r\n maxHeight: 0\r\n });\r\n };\r\n\r\n /*\r\n Interface events -- desktop + large screens\r\n */\r\n PrimaryNav.prototype.showSubNav = function (parent){\r\n if(this.activeNavItem != null || undefined){\r\n this.hideSubNav(this.activeNavItem);\r\n }\r\n\r\n parent.addClass('active');\r\n this.activeNavItem = parent;\r\n\r\n };\r\n\r\n PrimaryNav.prototype.hideSubNav = function (parent){\r\n parent.removeClass('active');\r\n };\r\n\r\n\r\n /*\r\n Event binding and initialising methods\r\n */\r\n PrimaryNav.prototype.initMobileAccordion = function(){\r\n this.$mainNavSubNav.each(function(){\r\n var defaultHeight = $(this).height();\r\n\r\n $(this).attr('data-open-height', defaultHeight);\r\n $(this).css({\r\n display: 'block',\r\n maxHeight: '0px'\r\n });\r\n })\r\n };\r\n\r\n PrimaryNav.prototype.resetMobileAccordion = function(){\r\n this.$mainNavSubNav.each(function(){\r\n $(this).removeAttr(\"style\");\r\n })\r\n };\r\n\r\n /*\r\n Mobile event binding\r\n */\r\n PrimaryNav.prototype.bindEvents = function () {\r\n var self = this;\r\n this.$mainNavTrigger.click(function(){\r\n\r\n var $parentListItem = $(this).parent();\r\n var $targetSubNav = $(this).next(self.options.selectors.mainNavSubNav);\r\n\r\n if ($parentListItem.hasClass('active')) {\r\n\r\n //Target is active, lets close\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')) {\r\n\r\n self.closeSubNavAccordion($parentListItem, $targetSubNav);\r\n self.activeNavParent = null;\r\n\r\n } else {\r\n self.hideSubNav($parentListItem);\r\n }\r\n\r\n } else {\r\n\r\n //Target is NOT active, lets open\r\n if(SVHA.Utility.StateManager.ssm.isActive('mobile')) {\r\n\r\n if (self.activeNavParent && self.options.multipleOpen === false){\r\n self.closeSubNavAccordion(self.activeNavParent);\r\n }\r\n\r\n\r\n self.openSubNavAccordion($parentListItem, $targetSubNav);\r\n self.activeNavParent = $parentListItem;\r\n\r\n } else {\r\n self.showSubNav($parentListItem);\r\n }\r\n }\r\n });\r\n\r\n\r\n this.$mainNavTrigger.parents('li').hoverIntent({\r\n over: function(){},\r\n out: function(){\r\n var $elem = $(this);\r\n self.hideSubNav($elem);\r\n },\r\n timeout: 500\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.PrimaryNav = PrimaryNav;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","(function ($, window, undefined) {\r\n\r\n function _SampleWidget_(args) {\r\n\r\n this.defaults = {\r\n selectors: {\r\n widgetContainer: '.foo',\r\n widgetChild: '.bar'\r\n },\r\n\r\n timeOut: 500\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$widgetChild = this.parent(this.options.selectors.widgetChild);\r\n\r\n this.bindEvents();\r\n console.log(this.$widgetContainer);\r\n console.log('Sample widget ready');\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n _SampleWidget_.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n _SampleWidget_.prototype.bindEvents = function () {\r\n console.log('Sample Widget -- Event binding');\r\n // console.log(this.$widgetContainer);\r\n // console.log(this.$widgetChild)\r\n\r\n SVHA.Utility.StateManager.addOnEnter('sm', function() {\r\n console.log('Sample Module - SM enter')\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnLeave('sm', function() {\r\n console.log('Sample Module - SM leave')\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('md', function() {\r\n console.log('Sample Module - MD enter')\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnLeave('md', function() {\r\n console.log('Sample Module - MD leave')\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnEnter('lg', function() {\r\n console.log('Sample Module - LG enter')\r\n });\r\n\r\n SVHA.Utility.StateManager.addOnLeave('lg', function() {\r\n console.log('Sample Module - LG leave')\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets._SampleWidget_ = _SampleWidget_;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","var swiper = new Swiper(\".testimonialSwiper\", {\r\n pagination: {\r\n el: \".swiper-pagination\",\r\n clickable: true,\r\n },\r\n navigation: {\r\n nextEl: \".swiper-button-next\",\r\n prevEl: \".swiper-button-prev\",\r\n },\r\n});","(function ($, window, undefined) {\r\n\r\n function VideoPlayer(args) {\r\n\r\n this.defaults = {\r\n videoPlayer: null,\r\n selectors: {\r\n widgetContainer: '.video-player',\r\n videoElem: '.player-embed',\r\n btnPlay: '.btn-play-video'\r\n },\r\n\r\n };\r\n\r\n this.options = $.extend(true, {}, this.defaults, args);\r\n\r\n this.$widgetContainer = $(this.options.selectors.widgetContainer);\r\n this.$videoElem = this.parent(this.options.selectors.videoElem);\r\n this.$btnPlay = this.parent(this.options.selectors.btnPlay);\r\n\r\n\r\n\r\n this.initPlayer();\r\n this.bindEvents();\r\n }\r\n\r\n /**\r\n * Returns a jQuery element that is a child of the parent element\r\n * @param selector\r\n * @returns {*|HTMLElement}\r\n */\r\n VideoPlayer.prototype.parent = function (selector) {\r\n return $(selector, this.$widgetContainer);\r\n };\r\n\r\n VideoPlayer.prototype.initPlayer = function () {\r\n this.videoPlayer = new Plyr(this.$videoElem[0], {\r\n controls:[\r\n 'play',\r\n 'progress',\r\n 'current-time',\r\n 'mute',\r\n 'volume',\r\n 'captions',\r\n 'settings',\r\n 'pip',\r\n 'airplay',\r\n 'fullscreen'\r\n ]\r\n });\r\n };\r\n\r\n VideoPlayer.prototype.playVideo = function (selector) {\r\n this.$widgetContainer.addClass('video-playing');\r\n this.videoPlayer.play();\r\n };\r\n\r\n VideoPlayer.prototype.bindEvents = function () {\r\n var self = this;\r\n\r\n this.$btnPlay.click(function () {\r\n self.playVideo();\r\n });\r\n };\r\n\r\n window.SVHA = window.SVHA || {};\r\n window.SVHA.Widgets = window.SVHA.Widgets || {};\r\n window.SVHA.Widgets.VideoPlayer = VideoPlayer;\r\n\r\n})(jQuery, window);\r\n\r\n\r\n\r\n","\r\nvar api_base = \"/api/v1/\";\r\nvar na_icon = \"${data[i].aboutDescriptionPart1}
\r\n\r\n ${data[i].aboutDescriptionPart2} \r\n
\r\n\" + data[i].title + \"