function initButtons(){detachEventHandlers();$("#btnProductSearch").click(function(){SubmitSearchForm()});$("#btnProductSearchSm").click(function(){SubmitSearchFormXS()});$("#btnRemoveSearchTerm").click(function(){removeSearchTerm()});$("#programSearchFilterButton").click(function(){showProgramSearchFilters()});$("#programSearchFilterDismiss").click(function(){dismissSearchFilters()});$("#programSearchFilterDismiss").keydown(function(n){(n.keyCode===13||n.keyCode===32)&&(n.preventDefault(),dismissSearchFilters())});$("#selectAllProgramClassifications").click(function(){selectAllClassifications()});$("#selectAllProgramClassificationsSm").click(function(){selectAllClassificationsSm()});$("#programClearFiltersButton").click(function(){clearAllFilters()});$("#programApplyFiltersButton").click(function(){applyAllFiltersSm()});$("#programResetFiltersButton").click(function(){clearAllFiltersSm()});$("#programSliderLeft").click(function(){programSlideLeft()});$("#programSliderRight").click(function(){programSlideRight()});let n;$(".programClassificationFilter").change(function(){clearTimeout(n);n=setTimeout("programClassificationOnClick()",1e3)});$(".programClassificationFilterSm").change(function(){clearTimeout(n);n=setTimeout("programClassificationSmOnClick()",1e3)});$(".programTagFilter").change(function(){clearTimeout(n);n=setTimeout("programTagOnClick()",1e3)});$(".programTagFilterSm").click(function(){programTagFilterSmOnClick()});$(".program-page-link").each(function(){var n=$(this);n.click(function(){programPageOnClick(n.data("id"))})});$(".program-next-page").click(function(){programNextPageOnClick()});$(".program-previous-page").click(function(){programPreviousPageOnClick()});$("#program-previous-slide").click(function(){navigate("backward",config)});$("#program-next-slide").click(function(){navigate("forward",config)});setSlidersStyle(config);setClassification();let t=$("#programFilterGroups .programFilterItem.active"),i=window.location.href;t.length===0&&i.indexOf("?classificationId")===-1?$("#programClearFiltersButton").prop("disabled",!0):$("#programClearFiltersButton").prop("disabled",!1)}function detachEventHandlers(){$("#btnProductSearch").off("click");$("#btnProductSearchSm").off("click");$("#btnRemoveSearchTerm").off("click");$("#programSearchFilterButton").off("click");$("#programSearchFilterDismiss").off("click");$("#selectAllProgramClassifications").off("click");$("#selectAllProgramClassificationsSm").off("click");$("#programClearFiltersButton").off("click");$("#programApplyFiltersButton").off("click");$("#programResetFiltersButton").off("click");$("#programSliderLeft").off("click");$("#programSliderRight").off("click");$(".programClassificationFilter").off("change");$(".programClassificationFilterSm").off("change");$(".programTagFilter").off("change");$(".programTagFilterSm").off("click");$(".program-page-link").each(function(){var n=$(this);n.off("click")});$(".program-next-page").off("click");$(".program-previous-page").off("click");$("#program-previous-slide").off("click");$("#program-next-slide").off("click")}function updateSearchResultsAnnouncement(n){const t=$(".program-results").text(),i=`${t} ${InnosoftProgramSearchLangTerms.ProgramSearch_FoundWithFilters} ${n}`;$("#programSearchResultsAnnouncement").text(i)}function getProgramTags(n){return new Promise((t,i)=>{$.ajax({type:"POST",url:"/program/GetProgramTagIds",data:{classificationIds:n},success:function(n){t(n)},error:function(n){i(n.statusText)}})})}function getProgramListItems(n,t){return new Promise((i,r)=>{$.ajax({type:"POST",url:"/program/GetFilteredPrograms",data:{classificationIds:n,tagIds:t},success:function(n){i(n)},error:function(n){r(n.statusText)}})})}function getFeaturedProgram(){return new Promise((n,t)=>{$.ajax({type:"GET",url:"/program/GetFeaturedPrograms",success:function(t){n(t)},error:function(n){t(n.statusText)}})})}function programPageOnClick(n){showProgramPageItems(n)}function showProgramPageItems(n){$(".program-list-item").each(function(){let t=$(this);t.data("page")===n?t.prop("hidden",!1):t.prop("hidden",!0)});changeActivePage(n)}function changeActivePage(n){actualPage=n;$(".program-page-link").each(function(){var i=$(this),r=i.data("id"),t,u;i.parent().removeClass("active");r===n&&i.parent().addClass("active");t=2;u=2;n===1?t=4:n===2?t=3:n===$(".program-page-link").length-1?t=1:n===$(".program-page-link").length&&(t=0);u=5-(t+1);r<n-u||r>n+t?i.parent().addClass("d-none"):i.parent().removeClass("d-none")});n===1?$(".program-previous-page").parent().addClass("disabled"):$(".program-previous-page").parent().removeClass("disabled");n===$(".program-page-link").length?$(".program-next-page").parent().addClass("disabled"):$(".program-next-page").parent().removeClass("disabled")}function programNextPageOnClick(){showProgramPageItems(actualPage+1)}function programPreviousPageOnClick(){showProgramPageItems(actualPage-1)}function programTagOnClick(){var n=[],t=[];$(".programClassificationFilter").each(function(){var t=$(this);t.prop("checked")&&n.push(t.data("id"))});$(".programTagFilter").each(function(){var n=$(this);n.prop("checked")&&t.push(n.data("id"))});loadSpinnerForProgram();getProgramListItems(n,t).then(n=>{hideFeaturedPrograms(),showProgramListItems(n),hideProgramSpinner(),initButtons(),loadPrices(),showProgramPageItems(1),$("#programSearchResultsAnnouncement").text($(".program-results").text())})}function programClassificationOnClick(){var n=[];clearTagFilters();$(".programClassificationFilter").each(function(){var t=$(this);t.prop("checked")&&n.push(t.data("id"))});n.length===1?pushNewUrl(!0,n[0]):pushNewUrl(!1);n.length>0?($(".tagFilter").prop("hidden",!0),getProgramTags(n).then(n=>{$(".programTagFilter").each(function(){var t=$(this);jQuery.inArray(t.data("id"),n.data)!==-1&&t.parent().prop("hidden",!1)})}),loadSpinnerForProgram(),getProgramListItems(n,[]).then(n=>{hideFeaturedPrograms(),showProgramListItems(n),hideProgramSpinner(),initButtons(),loadPrices(),showProgramPageItems(1),$("#programSearchResultsAnnouncement").text($(".program-results").text())})):($("#programClearFiltersButton").prop("disabled",!0),$(".tagFilter").prop("hidden",!1),hideProgramListItems(),showFeaturedPrograms())}function programClassificationSmOnClick(){$(".programFilterContainerMobile.tags").addClass("d-none");$(".programFilterContainerMobile.tags.loader").removeClass("d-none");$("#programResetFiltersButton").prop("disabled",!1);var n=[];$(".programClassificationFilterSm").each(function(){var t=$(this);t.prop("checked")&&n.push(t.data("id"))});n.length===1?pushNewUrl(!0,n[0]):pushNewUrl(!1);n.length>0?getProgramTags(n).then(n=>{$(".programTagFilterSm").each(function(){var t=$(this);jQuery.inArray(t.data("id"),n.data)===-1?(t.parent().prop("hidden",!0),t.parent().removeClass("active"),t.prop("checked",!1)):t.parent().prop("hidden",!1)}),setTimeout(()=>{$(".programFilterContainerMobile.tags").removeClass("d-none"),$(".programFilterContainerMobile.tags.loader").addClass("d-none")},200)}):($("#programResetFiltersButton").prop("disabled",!0),clearTagFiltersSm(),$(".tagFilterSm").prop("hidden",!1),setTimeout(()=>{$(".programFilterContainerMobile.tags").removeClass("d-none"),$(".programFilterContainerMobile.tags.loader").addClass("d-none")},200))}function programTagFilterSmOnClick(){var n=[],t=[];$(".programClassificationFilterSm").each(function(){var t=$(this);t.prop("checked")&&n.push(t.data("id"))});$(".programTagFilterSm").each(function(){var n=$(this);n.prop("checked")&&t.push(n.data("id"))});n.length===0&&t.length===0?$("#programResetFiltersButton").prop("disabled",!0):$("#programResetFiltersButton").prop("disabled",!1)}function applyAllFiltersSm(){var n=[],t=[];$(".programClassificationFilterSm").each(function(){var t=$(this);t.prop("checked")&&n.push(t.data("id"))});$(".programTagFilterSm").each(function(){var n=$(this);n.prop("checked")&&t.push(n.data("id"))});n.length>0||t.length>0?(loadSpinnerForProgram(),getProgramListItems(n,t).then(n=>{hideFeaturedPrograms(),dismissSearchFilters(),showProgramListItems(n),hideProgramSpinner(),initButtons(),loadPrices(),showProgramPageItems(1),$("#programSearchResultsAnnouncement").text($(".program-results").text())})):(showFeaturedPrograms(),dismissSearchFilters(),hideProgramListItems())}function clearAllFilters(){clearClassificationFilters();clearTagFilters();programClassificationOnClick();$("#selectAllProgramClassifications").prop("checked",!1);$("#programClearFiltersButton").prop("disabled",!0)}function clearAllFiltersSm(){clearClassificationFiltersSm();clearTagFiltersSm();programClassificationSmOnClick();$("#selectAllProgramClassificationsSm").prop("checked",!1);$("#programResetFiltersButton").prop("disabled",!0);hideProgramListItems();showFeaturedPrograms()}function selectAllClassificationsSm(){$("#selectAllProgramClassificationsSm").prop("checked")?($(".classificationFilterSm").addClass("active"),$(".classificationFilterSm").children().prop("checked",!0),programClassificationSmOnClick()):($(".classificationFilterSm").children().prop("checked",!1),$(".classificationFilterSm").removeClass("active"),programClassificationSmOnClick())}function setClassification(){let n=$("#SelectedProgramClassification").val();n!=="00000000-0000-0000-0000-000000000000"&&$(".programClassificationFilter").each(function(){var t=$(this);t.data("id")===n&&t.prop("checked",!0)})}function pushNewUrl(n,t){var i;n?(i="/Program?classificationId="+t,window.history.pushState("","",i)):(i="/Program",window.history.pushState("","",i))}function hideFeaturedPrograms(){$("#program-landing-page").attr("hidden",!0)}function showProgramListItems(n){$("#program-List-Item-Search").attr("hidden",!1);$("#program-List-Item-Search").html(n)}function showFeaturedPrograms(){var n=$("#program-landing-page");n.html().length<10&&getFeaturedProgram().then(t=>{n.html(t),initButtons(),loadPrices()});n.attr("hidden",!1)}function hideProgramListItems(){$("#program-List-Item-Search").attr("hidden",!0)}function clearClassificationFilters(){$(".classificationFilter").children().prop("checked",!1);$(".classificationFilter").removeClass("active")}function clearTagFilters(){$(".tagFilter").children().prop("checked",!1);$(".tagFilter").removeClass("active")}function clearClassificationFiltersSm(){$(".classificationFilterSm").children().prop("checked",!1);$(".classificationFilterSm").removeClass("active")}function clearTagFiltersSm(){$(".tagFilterSm").children().prop("checked",!1);$(".tagFilterSm").removeClass("active")}function selectAllClassifications(){$("#selectAllProgramClassifications").prop("checked")?($(".classificationFilter").addClass("active"),$(".classificationFilter").children().prop("checked",!0),programClassificationOnClick()):($(".classificationFilter").children().prop("checked",!1),$(".classificationFilter").removeClass("active"),programClassificationOnClick())}function loadSearchView(){$("#program-List-Item-Search").html().length>10&&$("#program-List-Item-Search").attr("hidden",!1)}function SubmitSearchForm(){$("#txtSearchId").val()!==""&&(setSearchTerm(),$("#SearchProgramForm").submit())}function SubmitSearchFormXS(){$("#txtSearchClId").val()!==""&&(setSearchTerm(),$("#SearchProgramFormXS").submit())}function setSearchTerm(){let n=$("#programFilterSearchTerm").val();$("#spanSearchTermRemoveButtonText").text(n);$("#programFilterSearchTerm").val(n);updateSearchResultsAnnouncement(n);$("#divFilteredBy").show()}function removeSearchTerm(){$("#filterSearchTerm").val("");$("#spanSearchTermRemoveButtonText").html("");$("#programFilterSearchTerm").val("");$("#divFilteredBy").hide();clearAllFilters()}function initMobileFilter(){$("#programSearchFilterButton .spinner-border").hide();$("#programSearchFilterButton .material-icons-round").show();let n=$("#programFilterGroupsSm .programFilterItem.active");n.length===0?$("#programResetFiltersButton").prop("disabled",!0):$("#programResetFiltersButton").prop("disabled",!1)}function showProgramSearchFilters(){$("#programSearchFilter").addClass("active");$(".overlay-secondary").addClass("active");$("html").addClass("overflow-hidden");$("#selectAllProgramClassificationsSm").focus();$("#programSearchFilterDismiss").attr("tabindex","0");$("#programApplyFiltersButton").attr("tabindex","0");$("#programResetFiltersButton").attr("tabindex","0");$(".programClassificationFilterSm").attr("tabindex","0");$(".programTagFilterSm").attr("tabindex","0")}function dismissSearchFilters(){$("#programSearchFilter").removeClass("active");$("#programSearchFilterButton").focus();$(".overlay-secondary").removeClass("active");$("html").removeClass("overflow-hidden");$("#programSearchFilterDismiss").attr("tabindex","-1");$("#programApplyFiltersButton").attr("tabindex","-1");$("#programResetFiltersButton").attr("tabindex","-1");$(".programClassificationFilterSm").attr("tabindex","-1");$(".programTagFilterSm").attr("tabindex","-1")}function loadPrices(n){var t=[],i;$(".programPricePlaceholder").each(function(){var i=$(this);i.html()!=="$0.00"&&i.data("page")===n&&t.push(i.data("id"))});i=JSON.stringify({ProgramIds:t,CourseOfferingIds:null});$.ajax({contentType:"application/json; charset=utf-8",datatype:"json",type:"POST",url:programListUrls.PriceAPI,data:i,success:function(n){n!==null&&$(".programPricePlaceholder").each(function(){var t=$(this);t.html()!=="$0.00"&&t.html(n[t.data("id")])})},error:function(){}});$(".programGridImage").each(function(){var t=$(this),i={productId:t.data("id")},r=programListUrls.ProductAPI;t.data("page")===n&&$.ajax({url:r,type:"GET",data:i,success:function(n){var i=$('<img class="card-img-top">');i.attr("src",n.Image);i.attr("alt",n.AltText);t.empty();i.appendTo(t)},error:function(){}})})}function loadSpinnerForImage(n){var t=new Spinner({lines:8,length:4,width:4,radius:8,color:"#000",speed:1,trail:20,shadow:!1,hwaccel:!1,zIndex:1}).spin(n)}function loadSpinnerForProgram(){$("#loading").fadeIn();var n=document.getElementById("loading"),t=new Spinner({lines:12,length:7,width:4,radius:10,color:"#000",speed:1,trail:60,shadow:!1,hwaccel:!1}).spin(n)}function hideProgramSpinner(){$("#loading").fadeOut()}function setSlidersStyle(n){document.querySelector("style").textContent+=`@media screen and (min-width:1180px) { .program-carousel-slide{ min-width: ${100/n.itemsToBeVisible}% } }`}function navigate(n,t){const i=document.getElementById("program-carousel"),r=i.querySelector(".program-carousel-container"),u=i.querySelector(".program-carousel-slide");let f=u.offsetWidth;r.scrollLeft=this.getNewScrollPosition(n,r,f,t)}function getNewScrollPosition(n,t,i,r){var u,f;const e=t.scrollWidth-i*r.itemsToBeVisible;return n==="forward"?(u=t.scrollLeft+i,u<=e?u:0):(f=t.scrollLeft-i,f>=0?f:e)}function playCarousel(n,t){const i=()=>{n.click(),setTimeout(i,t.speed)};i()}$(document).ready(function(){initMobileFilter();initButtons();loadPrices();loadSearchView();showProgramPageItems(1);var n=$("#programFilterSearchTerm").val();n!==""&&(setSearchTerm(),$("#divFilteredBy").show())});let actualPage;var programListUrls={PriceAPI:"/api/Price/GetPrices",ProductAPI:"/api/Product"};const config={autoload:!1,itemsToBeVisible:2,speed:5e3}