{"version":3,"sources":["main.js"],"names":["isRTL","$","attr","winWidth","window","width","winHeight","height","jsCoverSlider","jsCoverthumbSlider","headerHeight","outerHeight","utilsPath","customVariables","assetsURL","waiting","endScrollHandle","formatNumbers","bindFormatNumb","clickfunction","initFilterPopup","initMobSlider","dataSrc","switcher","galleryFancyBox","validation","scrollToSec","checkImgMissing","browserDetect","on","initSelect2","initSelect2multiselect","initDatepicker","initRangeslider","initRangesliderPrice","counter","initslidermob","initslidermob1","initslidermob2","ChangeToSvg","toggleMenu","dataTrim","loadRecaptcha","videoPlayerInit","length","initMap","customScrollBar","menuclose","menuOpen","fixedToScroll","scroll","setslideHeight","setTimeout","svgLogoFix","addClass","removeClass","each","slick","onTopCheck","clearTimeout","document","keyup","e","keyCode","bodyWrapper","hasClass","closePopup","find","bracketOn","finalHtml","get","closest","pString","innerHTML","pStringAngle1","splitArrayString","finalArray","forEach","item","index","postSplit","postSplitAdded","itemInner","indexInner","push","i","replace","split","arrayVar","seperator","firstArray","firstArrayaAdded","ellipsis","text","html","charLimit","parseInt","TrimLength","maxLength","trim","substring","lastIndexOf","element","_self","apiKey","script","createElement","onload","grecaptcha","ready","execute","action","then","token","src","async","head","appendChild","$img","imgID","imgClass","imgURL","data","$svg","removeAttr","replaceWith","elementInViewport2","el","top","offsetTop","left","offsetLeft","offsetWidth","offsetHeight","offsetParent","pageYOffset","innerHeight","pageXOffset","innerWidth","rush","sdx","position","wx","scrollTop","dp","dds","thisValue","parent","navigator","sayswho","ua","userAgent","tem","M","match","test","exec","slice","join","appName","appVersion","splice","userAgentData","platform","elementInViewport","ele","$this","prop","animate","Counter","duration","easing","step","now","Math","ceil","preventDefault","toggleClass","slideToggle","slidesToShow","slidesToScroll","arrows","fade","asNavFor","rtl","infinite","draggable","dots","centerMode","focusOnSelect","centerPadding","swipeToSlide","responsive","breakpoint","settings","target","targetSlides","maxHeight","not","speed","variableWidth","bannerPrev","bannerNext","pauseOnHover","pauseOnDotsHover","autoplay","autoplaySpeed","appendDots","customPaging","slider","currentSlideLabel","totalSlidesLabel","slideCount","appendArrows","prevArrow","nextArrow","delayAutoPlay","pauseAttachedSlider","parentClass","slickSlider1","slickSlider2","hover","slickItem","totalSlide","curSlide","getPrecentage","slicprogressbar","parents","appendDotsdiv","appendArrowsdiv","event","currentSlide","$slides","css","$slideTrack","nextSlide","tarPar","tarPlace","dataClass","select2","dropdownParent","minimumResultsForSearch","Infinity","placeholder","dir","theme","multiple","tags","closeOnSelect","$searchfield","evt","uldiv","siblings","count","flatpickr","dateFormat","mode","minDate","onReady","selectedDateCore","selectedDate","weekdayContainer","innerText","dropdownopen","dropdownclose","ionRangeSlider","grid","min","max","from","max_postfix","onStart","input","hide","show","onChange","onUpdate","minval","maxval","maxpostfix","applyMaxHeight","receiver","getMaxHeight","heights","map","apply","click","searchBar","sliderPrice","datePicker","select","select1","val","reset","trigger","location","lat","lng","google","maps","Map","getElementById","zoom","center","disableDefaultUI","fullscreenControl","zoomControl","validator","addMethod","value","validate","errorElement","errorClass","success","label","is","groupName","undefined","errorPlacement","error","className","invalidHandler","errors","numberOfInvalids","message","submitHandler","currentStep","ignore","valid","apiUrl","formName","ajax","type","url","serialize","headers","__RequestVerificationToken","resp","thanksPage","href","XMLHttpRequest","textStatus","errorThrown","complete","submitbtntext","btnadditionmarkup","children","nextbtntext","$target","v","eq","rules","intl","number","highlight","unhighlight","form","formSubmit","inputValue","checkFieldval","intlTelInput","initialCountry","separateDialCode","dropdownContainer","body","utilsScript","processLoop","tabber","tabTarget","stop","swapActive","animationTime","totalNav","mCustomScrollbar","hamPosition","getBoundingClientRect","posTop","topPos","makInt","fixedSidebar","anchor","section","$thisAnchor","$thisSection","targetSection","sectionPos","offset","moveTo","attribute","revert","slideUp","slideDown","footerOffset","scrollOffset","sidebarHeight","forFixedOffset","forBottomOffset","winScroll","touchmoved","gdd","has","videoPopup","etarget","videoUrl","vidPlayer","videoClass","videoWidth","videoHeight","videoType","videoPoster","techOrder","$content","fancybox","open","content","beforeShow","afterShow","videojs","poster","play","opacity","beforeClose","dispose","videoPlayerIdIndex","thisId","player","thisSrc","prevEffect","nextEffect","closeBtn","helpers","title","isDateSupported","setAttribute","isDateSupportedVariable","mask","observeDOM","MutationObserver","WebKitMutationObserver","obj","callback","nodeType","mutationObserver","observe","childList","subtree","addEventListener","m","image","querySelectorAll","naturalHeight","fonts"],"mappings":"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","file":"scripts.js","sourcesContent":["var isRTL = $(\"html\").attr(\"dir\") == \"rtl\" ? true : false,\r\n  winWidth = $(window).width(),\r\n  winHeight = $(window).height(),\r\n  jsCoverSlider = $(\".js-cover-slider\"),\r\n  jsCoverthumbSlider = $(\".js-cover-thumb-slider\"),\r\n  headerHeight = $(\".c-main-header\").outerHeight(),\r\n  utilsPath = customVariables.assetsURL + \"/js/utils.js\",\r\n  waiting = false,\r\n  endScrollHandle;\r\n\r\n// add numbers into their own span tags\r\nformatNumbers();\r\nbindFormatNumb();\r\n\r\n$(function () {\r\n  clickfunction();\r\n  initFilterPopup();\r\n  initMobSlider();\r\n  dataSrc();\r\n  switcher();\r\n  galleryFancyBox();\r\n  validation(\".form-validation\");\r\n  scrollToSec(\".js-scroll-anchor\", \".js-scroll-sec\");\r\n  bindFormatNumb();\r\n  checkImgMissing();\r\n  browserDetect();\r\n});\r\n\r\n$(window).on(\"load\", function () {\r\n  initSelect2(\".js-select2\");\r\n  initSelect2multiselect(\".js-select2-multi\");\r\n  initDatepicker(\".js-flatpickr\");\r\n  initRangeslider(\".js-rangeSlider\");\r\n  initRangesliderPrice(\".js-rangeSlider-price\");\r\n  // applyMaxHeight('.sh-height', '.sh-height');\r\n  counter();\r\n  initMobSlider();\r\n  initslidermob();\r\n  initslidermob1();\r\n  initslidermob2();\r\n  ChangeToSvg();\r\n  toggleMenu();\r\n  dataTrim();\r\n  loadRecaptcha(\".js-recaptcha\");\r\n  // mask();\r\n  videoPlayerInit();\r\n  galleryFancyBox();\r\n  if ($(\"#map\").length > 0) {\r\n    initMap();\r\n  }\r\n  // setTimeout(function() {\r\n  //     addVideoPlugin();\r\n  // }, 4000);\r\n  customScrollBar();\r\n  menuclose();\r\n  menuOpen();\r\n  fixedToScroll();\r\n  scroll();\r\n  setslideHeight(\".js-mob-slider-1\");\r\n  setslideHeight(\".js-mob-slider-2\");\r\n  setslideHeight(\".js-mob-slider-3\");\r\n  bindFormatNumb();\r\n  checkImgMissing();\r\n  setTimeout(function () {\r\n    svgLogoFix();\r\n  }, 100);\r\n  $(\"html\").addClass(\"font-ready\");\r\n  svgLogoFix();\r\n  setTimeout(function () {\r\n    $(\"html\").addClass(\"dom-ready\");\r\n  }, 200);\r\n});\r\n\r\n$(window).on(\"resize orientationchange\", function () {\r\n  // Do on resize\r\n  (winWidth = $(window).width()), (winHeight = $(window).height());\r\n  // applyMaxHeight('.sh-height', '.sh-height');\r\n  initMobSlider();\r\n  initslidermob();\r\n  initslidermob1();\r\n  initslidermob2();\r\n  switcher();\r\n  fixedToScroll();\r\n  winWidth >= 992 ? $(\"html\").removeClass(\"open-filter-popup\") : false;\r\n  if ($(\".slick-initialized\").length > 0) {\r\n    $(\".slick-initialized\").each(function () {\r\n      $(this).slick(\"setPosition\");\r\n    });\r\n  }\r\n  setslideHeight(\".js-mob-slider-1\");\r\n  setslideHeight(\".js-mob-slider-2\");\r\n  setslideHeight(\".js-mob-slider-3\");\r\n});\r\n\r\n$(window).on(\"scroll\", function () {\r\n  //Do on Scroll\r\n  counter();\r\n  onTopCheck();\r\n  scroll();\r\n  if (waiting) {\r\n    return;\r\n  }\r\n  waiting = true;\r\n  // clear previous scheduled endScrollHandle\r\n  clearTimeout(endScrollHandle);\r\n  // scroll('dontRush');\r\n  setTimeout(function () {\r\n    waiting = false;\r\n  }, 100);\r\n  // schedule an extra execution of scroll() after 200ms\r\n  // in case the scrolling stops in next 100ms\r\n  endScrollHandle = setTimeout(function () {\r\n    scroll();\r\n  }, 200);\r\n});\r\n$(document).keyup(function (e) {\r\n  if (e.keyCode == 27) {\r\n    if ($(bodyWrapper).hasClass(\"menu-open\")) {\r\n      $(\".js-toggle-menu\").removeClass(\"menu-open\");\r\n      $(bodyWrapper).removeClass(\"menu-open\");\r\n      closePopup();\r\n      $(\".js-langSelector\").find(\"ul\").removeClass(\"active\");\r\n      $(\".menu-sec\").removeClass(\"is--active\");\r\n      setTimeout(function () {\r\n        $(\"body, html\").removeClass(\"menu-open\");\r\n      }, 350);\r\n      $(\".js-childDropdown\").removeClass(\"active\");\r\n    }\r\n  }\r\n});\r\n\r\nfunction bindFormatNumb() {\r\n  $(\"select:not(select.num-format-on-change)\").on(\"change\", function () {\r\n    setTimeout(function () {\r\n      formatNumbers();\r\n    }, 10);\r\n  });\r\n  $(\"select\").addClass(\"num-format-on-change\");\r\n  formatNumbers();\r\n}\r\nfunction formatNumbers() {\r\n  $(`p, \r\n    h1, \r\n    h2, \r\n    h3, \r\n    h4, \r\n    h5, \r\n    h6, \r\n    li:not(.hamburger), \r\n    option, \r\n    a:not(.header-wrapper a)`).each(function () {\r\n    var bracketOn = false;\r\n    var finalHtml = \"\";\r\n    if (\r\n      $(\".number-format\", this).get(0) ||\r\n      ($(this).hasClass(\"num--formatted\") &&\r\n        !$(this).closest(\".select2-dropdown\").get(0))\r\n    ) {\r\n      return;\r\n    }\r\n\r\n    var pString = this.innerHTML;\r\n    var pStringAngle1 = splitArrayString(pString, \"<\");\r\n    var finalArray = [];\r\n    pStringAngle1.forEach(function (item, index) {\r\n      var postSplit = splitArrayString(item, \">\");\r\n      var postSplitAdded = [];\r\n\r\n      if (postSplit.length > 1) {\r\n        postSplit.forEach(function (itemInner, indexInner) {\r\n          finalArray.push(itemInner);\r\n          if (postSplit.length > indexInner + 3) {\r\n            finalArray.push(\">\");\r\n          }\r\n        });\r\n      } else {\r\n        finalArray.push(item);\r\n      }\r\n    });\r\n\r\n    finalArray.forEach(function (i) {\r\n      if (i == \"<\") {\r\n        bracketOn = true;\r\n      } else if (i == \">\") {\r\n        bracketOn = false;\r\n      }\r\n\r\n      if (!bracketOn) {\r\n        finalHtml += i.replace(\r\n          /\\b(\\d+)\\b/g,\r\n          `<custom-numb class=\"number-format\">$1</custom-numb>`\r\n        );\r\n      } else {\r\n        finalHtml += i;\r\n      }\r\n    });\r\n\r\n    if (finalHtml.split(\"custom-numb\")[1]) {\r\n      this.innerHTML = finalHtml;\r\n    }\r\n    $(this).addClass(\"num--formatted\");\r\n  });\r\n}\r\n\r\nfunction splitArrayString(arrayVar, seperator) {\r\n  var firstArray = arrayVar.split(seperator);\r\n  var firstArrayaAdded = [];\r\n  firstArray.forEach(function (item, index) {\r\n    firstArrayaAdded.push(item);\r\n    if (firstArray.length > index + 1) {\r\n      firstArrayaAdded.push(seperator);\r\n    }\r\n  });\r\n  return firstArrayaAdded;\r\n}\r\n\r\n// data trim\r\nfunction dataTrim() {\r\n  var ellipsis = \"...\";\r\n  $(\"[data-trim]\").each(function () {\r\n    var text = $(this).html();\r\n    var charLimit = parseInt($(this).attr(\"data-trim\"));\r\n    $(this).html(TrimLength(text, charLimit));\r\n    $(this).addClass(\"is--trimmed\");\r\n  });\r\n\r\n  function TrimLength(text, maxLength) {\r\n    text = $.trim(text);\r\n    if (text.length > maxLength) {\r\n      text = text.substring(0, maxLength - ellipsis.length);\r\n      return text.substring(0, text.lastIndexOf(\" \")) + ellipsis;\r\n    } else return text;\r\n  }\r\n}\r\n// Recaptcha\r\nfunction loadRecaptcha(element) {\r\n  var _self = $(element);\r\n  if (_self.length > 0) {\r\n    var apiKey = _self.attr(\"data-apiKey\");\r\n    var script = document.createElement(\"script\");\r\n    script.onload = function () {\r\n      grecaptcha.ready(function () {\r\n        grecaptcha\r\n          .execute(apiKey, {\r\n            action: \"homepage\",\r\n          })\r\n          .then(function (token) {});\r\n      });\r\n    };\r\n    script.src = \"https://www.google.com/recaptcha/api.js?render=\" + apiKey;\r\n    script.async = true;\r\n    document.head.appendChild(script);\r\n  }\r\n}\r\n// Recaptcha\r\n// change to svg\r\nfunction ChangeToSvg() {\r\n  $(\"img.js-tosvg\").each(function () {\r\n    var $img = $(this);\r\n    var imgID = $img.attr(\"id\");\r\n    var imgClass = $img.attr(\"class\");\r\n    var imgURL = $img.attr(\"src\");\r\n    $.get(\r\n      imgURL,\r\n      function (data) {\r\n        var $svg = $(data).find(\"svg\");\r\n        if (typeof imgID !== \"undefined\") {\r\n          $svg = $svg.attr(\"id\", imgID);\r\n        }\r\n        if (typeof imgClass !== \"undefined\") {\r\n          $svg = $svg.attr(\"class\", imgClass + \" insvg\");\r\n        }\r\n        $svg = $svg.removeAttr(\"xmlns:a\");\r\n        if (\r\n          !$svg.attr(\"viewBox\") &&\r\n          $svg.attr(\"height\") &&\r\n          $svg.attr(\"width\")\r\n        ) {\r\n          $svg.attr(\r\n            \"viewBox\",\r\n            \"0 0 \" + $svg.attr(\"height\") + \" \" + $svg.attr(\"width\")\r\n          );\r\n        }\r\n        $img.replaceWith($svg);\r\n        svgLogoFix();\r\n        setTimeout(function () {\r\n          svgLogoFix();\r\n        }, 100);\r\n        setTimeout(function () {\r\n          svgLogoFix();\r\n        }, 500);\r\n        setTimeout(function () {\r\n          svgLogoFix();\r\n        }, 1000);\r\n      },\r\n      \"xml\"\r\n    );\r\n  });\r\n}\r\nfunction svgLogoFix() {\r\n  $(\r\n    \".header-logo, .footer-logo, .social-footer-btn, .social-icons, .map-info, .main-nav\"\r\n  ).each(function () {\r\n    $(\"g[clip-path]\", this).attr(\"clip-path\", \"\");\r\n  });\r\n}\r\nfunction elementInViewport2(el) {\r\n  var top = el.offsetTop;\r\n  var left = el.offsetLeft;\r\n  var width = el.offsetWidth;\r\n  var height = el.offsetHeight;\r\n  while (el.offsetParent) {\r\n    el = el.offsetParent;\r\n    top += el.offsetTop;\r\n    left += el.offsetLeft;\r\n  }\r\n  return (\r\n    top < window.pageYOffset + window.innerHeight &&\r\n    left < window.pageXOffset + window.innerWidth &&\r\n    top + height > window.pageYOffset &&\r\n    left + width > window.pageXOffset\r\n  );\r\n}\r\nvar scroll = function (rush) {\r\n  $(\"[data-link]\").each(function () {\r\n    var sdx = $(this).position().top;\r\n    var wx = $(window).scrollTop();\r\n    var dp = winHeight / 10;\r\n    var dds = $(this).position().top - $(window).scrollTop();\r\n    if (elementInViewport2(this)) {\r\n      var thisValue = $(this).attr(\"data-link\");\r\n      if (dds < dp) {\r\n        $(\".js-scroll-anchor li\").removeClass(\"active\");\r\n        $('.js-scroll-anchor a[href=\"#' + thisValue + '\"]')\r\n          .parent()\r\n          .addClass(\"active\");\r\n      }\r\n    }\r\n  });\r\n};\r\nfunction browserDetect() {\r\n  navigator.sayswho = (function () {\r\n    var ua = navigator.userAgent,\r\n      tem,\r\n      M =\r\n        ua.match(\r\n          /(opera|chrome|safari|firefox|msie|trident(?=\\/))\\/?\\s*(\\d+)/i\r\n        ) || [];\r\n    if (/trident/i.test(M[1])) {\r\n      tem = /\\brv[ :]+(\\d+)/g.exec(ua) || [];\r\n      return \"IE \" + (tem[1] || \"\");\r\n    }\r\n    if (M[1] === \"Chrome\") {\r\n      tem = ua.match(/\\b(OPR|Edge)\\/(\\d+)/);\r\n      if (tem != null) return tem.slice(1).join(\"\").replace(\"OPR\", \"Opera\");\r\n    }\r\n    M = M[2] ? [M[1], M[2]] : [navigator.appName, navigator.appVersion, \"-?\"];\r\n    if ((tem = ua.match(/version\\/(\\d+)/i)) != null) M.splice(1, 1, tem[1]);\r\n    return M.join(\" \");\r\n  })();\r\n  $(\"body\").addClass(navigator.sayswho);\r\n  $(\"body\").addClass(navigator.userAgentData.platform);\r\n}\r\nfunction onTopCheck() {\r\n  $(window).scrollTop() > 250\r\n    ? $(\"body\").addClass(\"is--not-on-top\")\r\n    : $(\"body\").removeClass(\"is--not-on-top\");\r\n}\r\n// counter start\r\nfunction elementInViewport(el) {\r\n  var top = el.offsetTop;\r\n  var left = el.offsetLeft;\r\n  var width = el.offsetWidth;\r\n  var height = el.offsetHeight;\r\n\r\n  while (el.offsetParent) {\r\n    el = el.offsetParent;\r\n    top += el.offsetTop;\r\n    left += el.offsetLeft;\r\n  }\r\n\r\n  return (\r\n    top >= window.pageYOffset &&\r\n    left >= window.pageXOffset &&\r\n    top + height <= window.pageYOffset + window.innerHeight &&\r\n    left + width <= window.pageXOffset + window.innerWidth\r\n  );\r\n}\r\nfunction counter() {\r\n  $(\".js-counter\").each(function (i, ele) {\r\n    var $this = $(ele);\r\n    if (elementInViewport(ele) && !$this.hasClass(\"has--complete\")) {\r\n      $this.prop(\"Counter\", 0).animate(\r\n        {\r\n          Counter: $this.data(\"value\"),\r\n        },\r\n        {\r\n          duration: 4000,\r\n          easing: \"swing\",\r\n          step: function (now) {\r\n            $this.text(Math.ceil(now));\r\n          },\r\n        }\r\n      );\r\n      $this.addClass(\"has--complete\");\r\n    }\r\n  });\r\n}\r\n// counter end\r\nfunction toggleMenu() {\r\n  $(document).on(\"click\", \".js-toggle-menu\", function (e) {\r\n    e.preventDefault();\r\n    $(this).toggleClass(\"menu-open\");\r\n    $(bodyWrapper).toggleClass(\"menu-open\");\r\n  });\r\n  $(document).on(\"click\", \".js-toggleMobileMenu\", function (e) {\r\n    e.preventDefault();\r\n    $(this).toggleClass(\"menu-open\");\r\n    $(\".js-mobSubmenu\").slideToggle();\r\n  });\r\n}\r\njsCoverSlider.slick({\r\n  slidesToShow: 1,\r\n  slidesToScroll: 1,\r\n  arrows: false,\r\n  fade: true,\r\n  asNavFor: jsCoverthumbSlider,\r\n  rtl: isRTL,\r\n  infinite: true,\r\n  draggable: false,\r\n});\r\njsCoverthumbSlider.slick({\r\n  slidesToShow: 4,\r\n  slidesToScroll: 1,\r\n  asNavFor: jsCoverSlider,\r\n  dots: false,\r\n  arrows: false,\r\n  centerMode: false,\r\n  focusOnSelect: true,\r\n  centerPadding: 0,\r\n  infinite: false,\r\n  swipeToSlide: true,\r\n  rtl: isRTL,\r\n  draggable: false,\r\n  responsive: [\r\n    {\r\n      breakpoint: 992,\r\n      settings: {\r\n        slidesToShow: 2,\r\n        slidesToScroll: 1,\r\n        infinite: true,\r\n      },\r\n    },\r\n    {\r\n      breakpoint: 768,\r\n      settings: {\r\n        slidesToShow: 1,\r\n        slidesToScroll: 1,\r\n        infinite: true,\r\n      },\r\n    },\r\n  ],\r\n});\r\n\r\nfunction setslideHeight(target) {\r\n  var target = $(target);\r\n  var targetSlides = target.find(\r\n    \".c-upholder.sh-height, .b-thumb-wrapper-inner\"\r\n  );\r\n  var maxHeight = 0;\r\n  if (target.hasClass(\"slick-initialized\")) {\r\n    targetSlides.each(function () {\r\n      targetSlides.removeAttr(\"style\");\r\n      if ($(this).height() > maxHeight) {\r\n        maxHeight = $(this).height();\r\n      }\r\n      targetSlides.height(maxHeight);\r\n    });\r\n  }\r\n}\r\nfunction initslidermob2() {\r\n  if ($(\".js-mob-slider-3\").length > 0) {\r\n    if (winWidth < 1200) {\r\n      if (!$(\".js-mob-slider-3\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-3\").slick({\r\n          dots: false,\r\n          arrows: false,\r\n          infinite: false,\r\n          slidesToShow: 3,\r\n          slidesToScroll: 1,\r\n          rtl: isRTL,\r\n          responsive: [\r\n            {\r\n              breakpoint: 1200,\r\n              settings: {\r\n                slidesToShow: 2,\r\n                slidesToScroll: 1,\r\n              },\r\n            },\r\n            {\r\n              breakpoint: 768,\r\n              settings: {\r\n                slidesToShow: 1,\r\n                slidesToScroll: 1,\r\n              },\r\n            },\r\n          ],\r\n        });\r\n      }\r\n    } else {\r\n      if ($(\".js-mob-slider-3\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-3.slick-initialized\").each(function () {\r\n          $(this).slick(\"unslick\");\r\n        });\r\n      }\r\n    }\r\n  }\r\n}\r\nfunction initslidermob1() {\r\n  if ($(\".js-mob-slider-2\").length > 0) {\r\n    if (winWidth < 1401) {\r\n      if (!$(\".js-mob-slider-2\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-2\").slick({\r\n          dots: false,\r\n          arrows: false,\r\n          infinite: false,\r\n          slidesToShow: 3,\r\n          slidesToScroll: 1,\r\n          rtl: isRTL,\r\n          responsive: [\r\n            {\r\n              breakpoint: 1200,\r\n              settings: {\r\n                slidesToShow: 2,\r\n                slidesToScroll: 1,\r\n              },\r\n            },\r\n            {\r\n              breakpoint: 768,\r\n              settings: {\r\n                slidesToShow: 1,\r\n                slidesToScroll: 1,\r\n              },\r\n            },\r\n          ],\r\n        });\r\n      }\r\n    } else {\r\n      if ($(\".js-mob-slider-2\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-2.slick-initialized\").each(function () {\r\n          $(this).slick(\"unslick\");\r\n        });\r\n      }\r\n    }\r\n  }\r\n}\r\nfunction initslidermob() {\r\n  if ($(\".js-mob-slider-1\").length > 0) {\r\n    // $('.js-mob-slider-1').on('setPosition', function (event, slick, direction) {\r\n    //     $(' .b-thumb-wrapper-inner').each(function () {\r\n    //         $(' .b-thumb-wrapper-inner').removeAttr('style')\r\n    //         setTimeout(() => {\r\n    //             var maxHeight = 0;\r\n    //             if ($(this).height() > maxHeight) {\r\n    //               maxHeight = $(this).height();\r\n    //             }\r\n    //             $(' .b-thumb-wrapper-inner').height(maxHeight);\r\n    //         }, 400);\r\n    //     });\r\n    // });\r\n    if (winWidth < 1201) {\r\n      if (!$(\".js-mob-slider-1\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-1\").slick({\r\n          dots: false,\r\n          arrows: false,\r\n          infinite: false,\r\n          slidesToShow: 2,\r\n          slidesToScroll: 1,\r\n          rtl: isRTL,\r\n          responsive: [\r\n            {\r\n              breakpoint: 767,\r\n              settings: {\r\n                slidesToShow: 1,\r\n                slidesToScroll: 1,\r\n              },\r\n            },\r\n          ],\r\n        });\r\n      }\r\n    } else {\r\n      if ($(\".js-mob-slider-1\").hasClass(\"slick-initialized\")) {\r\n        $(\".js-mob-slider-1.slick-initialized\").each(function () {\r\n          $(this).slick(\"unslick\");\r\n        });\r\n      }\r\n    }\r\n  }\r\n}\r\nfunction initMobSlider() {\r\n  if (winWidth < 1200) {\r\n    if ($(\".js-mob-slider\").length > 0) {\r\n      $(\".js-mob-slider\").each(function () {\r\n        $(this)\r\n          .not(\".slick-initialized\")\r\n          .slick({\r\n            dots: false,\r\n            arrows: false,\r\n            infinite: false,\r\n            speed: 300,\r\n            slidesToShow: 5,\r\n            slidesToScroll: 1,\r\n            variableWidth: false,\r\n            centerMode: false,\r\n            swipeToSlide: true,\r\n            rtl: isRTL,\r\n            responsive: [\r\n              {\r\n                breakpoint: 992,\r\n                settings: {\r\n                  slidesToShow: 3,\r\n                  slidesToScroll: 1,\r\n                },\r\n              },\r\n              {\r\n                breakpoint: 575,\r\n                settings: {\r\n                  slidesToShow: 1,\r\n                  slidesToScroll: 1,\r\n                },\r\n              },\r\n            ],\r\n          });\r\n      });\r\n    }\r\n  } else {\r\n    $(\".js-mob-slider.slick-initialized\").each(function () {\r\n      $(this).slick(\"unslick\");\r\n    });\r\n  }\r\n  if (winWidth < 768) {\r\n    if ($(\".js-vision-wrapper\").length > 0) {\r\n      $(\".js-vision-wrapper\").each(function () {\r\n        $(this).not(\".slick-initialized\").slick({\r\n          dots: false,\r\n          arrows: false,\r\n          infinite: false,\r\n          speed: 300,\r\n          slidesToShow: 1,\r\n          slidesToScroll: 1,\r\n          variableWidth: false,\r\n          centerMode: false,\r\n          swipeToSlide: true,\r\n          rtl: isRTL,\r\n        });\r\n      });\r\n    }\r\n  } else {\r\n    $(\".js-vision-wrapper.slick-initialized\").each(function () {\r\n      $(this).slick(\"unslick\");\r\n    });\r\n  }\r\n}\r\nif (isRTL) {\r\n  var bannerPrev =\r\n    '<button class=\"slick-prev slick-arrow\" aria-label=\"Previous\" type=\"button\" style=\"\"><img src=\"' +\r\n    customVariables.assetsURL +\r\n    '/img/icons/arrow-left-black.svg\" alt=\"caret-left\" class=\"js-tosvg tosvg\" /></button>';\r\n  var bannerNext =\r\n    '<button class=\"slick-next slick-arrow\" aria-label=\"Next\" type=\"button\" style=\"\"><img src=\"' +\r\n    customVariables.assetsURL +\r\n    '/img/icons/arrow-right-black.svg\" alt=\"caret-right\" class=\"js-tosvg tosvg\" /></button>';\r\n} else {\r\n  var bannerPrev =\r\n    '<button class=\"slick-prev slick-arrow\" aria-label=\"Previous\" type=\"button\" style=\"\"><img src=\"' +\r\n    customVariables.assetsURL +\r\n    '/img/icons/arrow-left-black.svg\" alt=\"caret-left\" class=\"js-tosvg tosvg\" /></button>';\r\n  var bannerNext =\r\n    '<button class=\"slick-next slick-arrow\" aria-label=\"Next\" type=\"button\" style=\"\"><img src=\"' +\r\n    customVariables.assetsURL +\r\n    '/img/icons/arrow-right-black.svg\" alt=\"caret-right\" class=\"js-tosvg tosvg\" /></button>';\r\n}\r\n$(\".js-captionSlider\").slick({\r\n  pauseOnHover: true,\r\n  pauseOnDotsHover: true,\r\n  autoplay: true,\r\n  autoplaySpeed: 4000,\r\n  slidesToShow: 1,\r\n  slidesToScroll: 1,\r\n  dots: true,\r\n  arrows: false,\r\n  fade: true,\r\n  infinite: true,\r\n  rtl: isRTL,\r\n  asNavFor: \".js-figureSlider, .js-figureCaptionSlider\",\r\n  appendDots: \".js-slideNumber\",\r\n  draggable: false,\r\n  responsive: [\r\n    {\r\n      breakpoint: 1024,\r\n      settings: {\r\n        draggable: true,\r\n      },\r\n    },\r\n  ],\r\n  customPaging: function (slider, i) {\r\n    var currentSlideLabel = \"0\";\r\n    var totalSlidesLabel = \"0\";\r\n    if (i > 8) {\r\n      currentSlideLabel = \"\";\r\n    }\r\n    if (slider.slideCount > 8) {\r\n      totalSlidesLabel = \"\";\r\n    }\r\n    return currentSlideLabel + (i + 1);\r\n  },\r\n});\r\n$(\".js-figureSlider\").slick({\r\n  pauseOnHover: true,\r\n  pauseOnDotsHover: true,\r\n  autoplay: true,\r\n  autoplaySpeed: 4000,\r\n  slidesToShow: 1,\r\n  slidesToScroll: 1,\r\n  dots: false,\r\n  arrows: true,\r\n  fade: true,\r\n  infinite: true,\r\n  rtl: isRTL,\r\n  appendArrows: \".homeCarouselNav\",\r\n  prevArrow: bannerPrev,\r\n  nextArrow: bannerNext,\r\n  asNavFor: \".js-captionSlider, .js-figureCaptionSlider\",\r\n  draggable: false,\r\n  responsive: [\r\n    {\r\n      breakpoint: 1024,\r\n      settings: {\r\n        draggable: true,\r\n      },\r\n    },\r\n    {\r\n      breakpoint: 767,\r\n      settings: {\r\n        appendArrows: \".homeCarouselNav\",\r\n      },\r\n    },\r\n  ],\r\n});\r\ndelayAutoPlay(\".js-figureSlider\");\r\ndelayAutoPlay(\".js-captionSlider\");\r\npauseAttachedSlider(\r\n  \".js-figureSlider, .js-captionSlider\",\r\n  \".js-figureSlider\",\r\n  \".js-captionSlider\"\r\n);\r\n$(\".js-figureCaptionSlider\").slick({\r\n  autoplay: true,\r\n  slidesToShow: 1,\r\n  slidesToScroll: 1,\r\n  dots: false,\r\n  arrows: false,\r\n  fade: false,\r\n  draggable: false,\r\n  infinite: false,\r\n  rtl: isRTL,\r\n  asNavFor: \".js-captionSlider, .js-figureSlider\",\r\n});\r\nfunction pauseAttachedSlider(parentClass, slickSlider1, slickSlider2) {\r\n  $(parentClass).hover(\r\n    function () {\r\n      $(slickSlider1).slick(\"slickPause\");\r\n      $(slickSlider2).slick(\"slickPause\");\r\n    },\r\n    function () {\r\n      $(slickSlider1).slick(\"slickPlay\");\r\n      $(slickSlider2).slick(\"slickPlay\");\r\n    }\r\n  );\r\n}\r\nfunction delayAutoPlay(slickItem) {\r\n  $(slickItem).slick(\"slickPause\");\r\n  setTimeout(function () {\r\n    $(slickItem).slick(\"slickPlay\");\r\n  }, 2000);\r\n}\r\n\r\nif ($(\".js-tickets-detail\").length > 0) {\r\n  $(\".js-tickets-detail\").each(function () {\r\n    var totalSlide,\r\n      curSlide,\r\n      getPrecentage,\r\n      slicprogressbar = $(this)\r\n        .parents()\r\n        .closest(\".c-sec-tickets\")\r\n        .find(\"#slick-progress\"),\r\n      appendDotsdiv = $(this)\r\n        .parents()\r\n        .closest(\".c-sec-tickets\")\r\n        .find(\".js-slickIndicator\"),\r\n      appendArrowsdiv = $(this)\r\n        .parents()\r\n        .closest(\".c-sec-tickets\")\r\n        .find(\".js-sliderArrow\");\r\n\r\n    $(this).on(\"init\", function (event, slick) {\r\n      curSlide = slick.currentSlide + 1;\r\n      totalSlide = slick.slideCount;\r\n      getPrecentage = (curSlide / totalSlide) * 100;\r\n      slicprogressbar.find(\"span\").width(getPrecentage + \"%\");\r\n    });\r\n    $(this)\r\n      .slick({\r\n        autoplay: false,\r\n        slidesToShow: 1,\r\n        slidesToScroll: 1,\r\n        dots: true,\r\n        arrows: true,\r\n        fade: false,\r\n        draggable: true,\r\n        infinite: false,\r\n        focusOnSelect: true,\r\n        rtl: isRTL,\r\n        appendDots: appendDotsdiv,\r\n        appendArrows: appendArrowsdiv,\r\n        prevArrow: bannerPrev,\r\n        nextArrow: bannerNext,\r\n\r\n        customPaging: function (slider, i) {\r\n          var currentSlideLabel = \"0\";\r\n          var totalSlidesLabel = \"0\";\r\n          if (i > 8) {\r\n            currentSlideLabel = \"\";\r\n          }\r\n          if (slider.slideCount > 8) {\r\n            totalSlidesLabel = \"\";\r\n          }\r\n          return (\r\n            \"<small>\" +\r\n            currentSlideLabel +\r\n            (i + 1) +\r\n            \"</small><small>\" +\r\n            totalSlidesLabel +\r\n            slider.slideCount +\r\n            \"</small>\"\r\n          );\r\n        },\r\n      })\r\n      .on(\"setPosition\", function (event, slick) {\r\n        slick.$slides.css(\"height\", slick.$slideTrack.height() + \"px\");\r\n      });\r\n    $(this).on(\r\n      \"beforeChange\",\r\n      function (event, slick, currentSlide, nextSlide) {\r\n        curSlide = nextSlide + 1;\r\n        totalSlide = slick.slideCount;\r\n        getPrecentage = (curSlide / totalSlide) * 100;\r\n        slicprogressbar.find(\"span\").width(getPrecentage + \"%\");\r\n      }\r\n    );\r\n  });\r\n}\r\n// select2\r\nfunction initSelect2(target) {\r\n  var target = $(target);\r\n  target.each(function (i, e) {\r\n    var tarPar = $(e).parent(\".select2-box\");\r\n    var tarPlace = $(e).data(\"placeholder\");\r\n    var dataClass = $(e).data(\"class\");\r\n    $(e).select2({\r\n      dropdownParent: tarPar,\r\n      minimumResultsForSearch: Infinity,\r\n      width: \"100%\",\r\n      placeholder: tarPlace,\r\n      dir: isRTL,\r\n      theme: dataClass,\r\n    });\r\n    $(e).on(\"select2:open\", function (e) {\r\n      setTimeout(function () {\r\n        formatNumbers();\r\n      }, 10);\r\n    });\r\n  });\r\n}\r\nfunction initSelect2multiselect(target) {\r\n  var target = $(target);\r\n  target.each(function (i, e) {\r\n    var tarPar = $(e).parent(\".select2-box\");\r\n    var tarPlace = $(e).data(\"placeholder\");\r\n    var dataClass = $(e).data(\"class\");\r\n    $(e).select2({\r\n      dropdownParent: tarPar,\r\n      minimumResultsForSearch: Infinity,\r\n      width: \"100%\",\r\n      placeholder: tarPlace,\r\n      multiple: true,\r\n      tags: false,\r\n      dir: isRTL,\r\n      closeOnSelect: false,\r\n      theme: dataClass,\r\n    });\r\n    $(e).on(\"select2:opening select2:closing\", function (event) {\r\n      var $searchfield = $(e).parent().find(\".select2-search__field\");\r\n      $searchfield.prop(\"disabled\", true);\r\n    });\r\n    $(e).on(\"select2:select select2:unselect\", function (evt) {\r\n      var uldiv = $(e).siblings(\"span.select2\").find(\"ul\");\r\n      var count = uldiv.find(\"li\").length - 1;\r\n      if (count == 0) {\r\n        uldiv.html(\"<li>\" + tarPlace + \"</li>\");\r\n      } else {\r\n        uldiv.html(\"<li>\" + tarPlace + \" (\" + (count - 1) + \")</li>\");\r\n      }\r\n    });\r\n  });\r\n}\r\nfunction initDatepicker(target) {\r\n  var target = $(target);\r\n  target.each(function (i, e) {\r\n    var tarPar = $(e).parent(\".datepicker-box\");\r\n    $(e).flatpickr({\r\n      dateFormat: \"m-d-Y\",\r\n      mode: \"range\",\r\n      minDate: \"today\",\r\n      onReady: function (selectedDateCore, selectedDate, element) {\r\n        $(element.weekdayContainer)\r\n          .find(\".flatpickr-weekday\")\r\n          .each(function (i, el) {\r\n            el.innerText = el.innerText.replace(\"Sun\", \"S\");\r\n            el.innerText = el.innerText.replace(\"Mon\", \"M\");\r\n            el.innerText = el.innerText.replace(\"Tue\", \"T\");\r\n            el.innerText = el.innerText.replace(\"Wed\", \"W\");\r\n            el.innerText = el.innerText.replace(\"Thu\", \"T\");\r\n            el.innerText = el.innerText.replace(\"Fri\", \"F\");\r\n            el.innerText = el.innerText.replace(\"Sat\", \"S\");\r\n          });\r\n      },\r\n    });\r\n  });\r\n}\r\n// select2 end\r\n// dropdowns\r\nfunction dropdownopen(target) {\r\n  $(\"body\").addClass(\"is--dropdown\");\r\n  $(target).addClass(\"is--active\");\r\n  $(target).parent(\".dropdown-box\").addClass(\"show-dd\");\r\n}\r\nfunction dropdownclose() {\r\n  $(\"body\").removeClass(\"is--dropdown\");\r\n  $(\".js-dropdownbtn\").removeClass(\"is--active\");\r\n  $(\".js-dropdownbtn\").parent(\".dropdown-box\").removeClass(\"show-dd\");\r\n}\r\n// dropdowns end\r\n// range slider\r\nfunction initRangeslider(target) {\r\n  var target = $(target);\r\n  target.each(function (i, e) {\r\n    $(e).ionRangeSlider({\r\n      grid: false,\r\n      min: 0,\r\n      max: 40,\r\n      from: 0,\r\n      max_postfix: \"+ hours\",\r\n      onStart: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        if (data.from > 0) {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").hide();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").show();\r\n        }\r\n      },\r\n      onChange: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        if (data.from > 0) {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").hide();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").show();\r\n        } else {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").show();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").hide();\r\n        }\r\n      },\r\n      onUpdate: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        if (data.from > 0) {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").hide();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").show();\r\n        } else {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").show();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").hide();\r\n        }\r\n      },\r\n    });\r\n  });\r\n}\r\nfunction initRangesliderPrice(target) {\r\n  var target = $(target);\r\n  var minval = target.data(\"minval\") !== \"\" ? target.data(\"minval\") : 0;\r\n  var maxval = target.data(\"maxval\") !== \"\" ? target.data(\"maxval\") : 5000;\r\n  var maxpostfix = target.data(\"maxpostfix\");\r\n  target.each(function (i, e) {\r\n    $(e).ionRangeSlider({\r\n      grid: false,\r\n      min: minval,\r\n      max: maxval,\r\n      from: 0,\r\n      max_postfix: maxpostfix,\r\n      onStart: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n      },\r\n      onChange: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        if (data.from > 0) {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").hide();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").show();\r\n        } else {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").show();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").hide();\r\n        }\r\n      },\r\n      onUpdate: function (data) {\r\n        $(data.input)\r\n          .parent(\".rangeSlider\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        $(data.input)\r\n          .parents(\".dropdown-box\")\r\n          .find(\".js-rang-val\")\r\n          .text(data.from);\r\n        if (data.from > 0) {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").hide();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").show();\r\n        } else {\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-holder\").show();\r\n          $(data.input).parents(\".dropdown-box\").find(\".palce-value\").hide();\r\n        }\r\n      },\r\n    });\r\n  });\r\n}\r\n\r\nfunction applyMaxHeight(receiver, target) {\r\n  $(target).removeAttr(\"style\");\r\n  var maxHeight = getMaxHeight(receiver);\r\n  $(target).outerHeight(maxHeight);\r\n}\r\n\r\nfunction getMaxHeight(target) {\r\n  var heights = $(target)\r\n    .map(function () {\r\n      return $(this).outerHeight();\r\n    })\r\n    .get();\r\n  return Math.max.apply(null, heights);\r\n}\r\n\r\n// range slider end\r\n// Filter Popup\r\nfunction initFilterPopup() {\r\n  // Open Filter\r\n  $(\".js-filter-popup:not(.js-filter-popup--binded)\").click(function (e) {\r\n    e.preventDefault();\r\n    $(\"html\").addClass(\"open-filter-popup\");\r\n  });\r\n  $(\".js-filter-popup\").addClass(\"js-filter-popup--binded\");\r\n\r\n  // Close Filter\r\n  $(\".js-filter-popup-close:not(.js-filter-popup-close--binded)\").click(\r\n    function (e) {\r\n      e.preventDefault();\r\n      $(\"html\").removeClass(\"open-filter-popup\");\r\n    }\r\n  );\r\n  $(\".js-filter-popup-close\").addClass(\"js-filter-popup-close--binded\");\r\n\r\n  // Reset Filter\r\n  $(\".js-filter-popup-reset:not(.js-filter-popup-reset--binded)\").click(\r\n    function (e) {\r\n      e.preventDefault();\r\n      var searchBar = $(\".mobile-filter .search-box input\");\r\n      var slider = $(\".mobile-filter .js-rangeSlider\");\r\n      var sliderPrice = $(\".mobile-filter .js-rangeSlider-price\");\r\n      var datePicker = $(\".mobile-filter .js-flatpickr\");\r\n      var select = $(\".js-select2-multi\");\r\n      var select1 = $(\".js-select2\");\r\n\r\n      if (searchBar.get(0)) {\r\n        searchBar.val(\"\");\r\n      }\r\n      if (slider.get(0)) {\r\n        slider.data(\"ionRangeSlider\").reset();\r\n      }\r\n      if (sliderPrice.get(0)) {\r\n        sliderPrice.data(\"ionRangeSlider\").reset();\r\n      }\r\n\r\n      if (datePicker.get(0)) {\r\n        initDatepicker(\".mobile-filter .js-flatpickr\");\r\n      }\r\n\r\n      if (select.get(0)) {\r\n        select.val(0).trigger(\"change\");\r\n      }\r\n\r\n      if (select1.get(0)) {\r\n        select1.val(0).trigger(\"change\");\r\n      }\r\n    }\r\n  );\r\n  $(\".js-filter-popup-reset\").addClass(\"js-filter-popup-reset--binded\");\r\n}\r\n// Filter Popup end\r\n// contact map\r\nvar map;\r\nfunction initMap() {\r\n  var location = {\r\n    lat: 24.4102401,\r\n    lng: 54.4213751,\r\n  };\r\n  map = new google.maps.Map(document.getElementById(\"map\"), {\r\n    zoom: 14,\r\n    center: location,\r\n    disableDefaultUI: true,\r\n    fullscreenControl: true,\r\n    zoomControl: true,\r\n  });\r\n}\r\n$.validator.addMethod(\"validEmail\", (value) => /\\S+@\\S+\\.\\S+/.test(value));\r\n$.validator.addMethod(\"validWeb\", (value) =>\r\n  /^(?:http(s)?:\\/\\/)?[\\w.-]+(?:\\.[\\w\\.-]+)+[\\w\\-\\._~:/?#[\\]@!\\$&'\\(\\)\\*\\+,;=.]+$/gi.test(\r\n    value\r\n  )\r\n);\r\n\r\n// validation\r\n$(function () {\r\n  $(\".js-info-form\").validate({\r\n    errorElement: \"span\",\r\n    errorClass: \"invalid\",\r\n    success: function (label, element) {\r\n      if ($(element).is(\":checkbox\")) {\r\n        var groupName = $(element).attr(\"name\");\r\n        if (groupName != undefined && groupName != \"\") {\r\n          $(\"input[name='\" + groupName + \"']\").each(function () {\r\n            $(this).removeClass(\"invalid\").addClass(\"valid\");\r\n          });\r\n        }\r\n      } else {\r\n        $(element)\r\n          .parents(\".control-group\")\r\n          .removeClass(\"invalid\")\r\n          .addClass(\"valid\");\r\n      }\r\n    },\r\n    errorPlacement: function (error, element) {\r\n      if (element.is(\":checkbox\")) {\r\n        var groupName = element.attr(\"name\");\r\n        if (groupName != undefined && groupName != \"\") {\r\n          $(\"input[name='\" + groupName + \"']\").each(function () {\r\n            $(this).addClass(\"invalid\");\r\n          });\r\n        }\r\n      } else {\r\n        element.parents(\".control-group\").addClass(error[0].className);\r\n      }\r\n    },\r\n    invalidHandler: function (event, validator) {\r\n      // 'this' refers to the form\r\n      var errors = validator.numberOfInvalids();\r\n      if (errors) {\r\n        var message =\r\n          errors == 1\r\n            ? \"You missed 1 field. It has been highlighted\"\r\n            : \"You missed \" + errors + \" fields. They have been highlighted\";\r\n        if (isRTL) {\r\n          message =\r\n            errors == 1\r\n              ? \"You missed 1 field. It has been highlighted RTL\"\r\n              : \"You missed \" +\r\n                errors +\r\n                \" fields. They have been highlighted RTL\";\r\n        }\r\n        $(\".js-info-form div.error span\").html(message);\r\n        $(\".js-info-form div.error\").show();\r\n      } else {\r\n        $(\".js-info-form div.error\").hide();\r\n      }\r\n    },\r\n    submitHandler: function () {\r\n      var currentStep = $(\".steps-remaining\").attr(\"data-current-step\");\r\n      if (currentStep == 2) {\r\n        $(\".js-info-form\").validate().settings.ignore = [];\r\n        if ($(\".js-info-form\").valid()) {\r\n          $(\".js-info-form .success-message\").hide();\r\n          $(\".js-info-form div.error\").hide();\r\n\r\n          var apiUrl = \"\";\r\n          var formName = $(\"#formname\").val();\r\n          if (formName == \"info-form\") {\r\n            apiUrl = \"/api/sitecore/Forms/SchoolFormSubmission\";\r\n          }\r\n\r\n          $(\".js-info-form\").each(function () {\r\n            var token = $('input[name=\"__RequestVerificationToken\"]').val();\r\n            $this = $(this);\r\n            $this.addClass(\"isloading\");\r\n            $.ajax({\r\n              type: \"POST\",\r\n              url: apiUrl,\r\n              data: $(this).serialize(),\r\n              headers: { __RequestVerificationToken: token },\r\n              success: function (resp) {\r\n                if (resp != undefined && resp.message == \"success\") {\r\n                  setTimeout(function () {\r\n                    var thanksPage = $(\"#hdnThanksUrl\").val();\r\n                    if (thanksPage != undefined && thanksPage != \"\") {\r\n                      window.location.href = thanksPage;\r\n                    } else {\r\n                      // Then reset the form\r\n                      $($this)[0].reset();\r\n                      $(\".js-select\").val(\"\").trigger(\"change\");\r\n                      $($this).removeClass(\"isloading\");\r\n                      $(\".js-info-form .success-message\").show();\r\n                      $(\"input[type=text], textarea\").val(\"\");\r\n                    }\r\n                  }, 1500);\r\n                } else {\r\n                  $($this).removeClass(\"isloading\");\r\n                  $(\".js-info-form .error-message\").show();\r\n                }\r\n              },\r\n              error: function (XMLHttpRequest, textStatus, errorThrown) {\r\n                $($this).removeClass(\"isloading\");\r\n              },\r\n              complete: function () {},\r\n            });\r\n          });\r\n        }\r\n      } else {\r\n        $(\".js-info-form\").validate().settings.ignore = \":hidden\";\r\n        if (\r\n          currentStep != undefined &&\r\n          currentStep != \"\" &&\r\n          currentStep >= 1 &&\r\n          currentStep < 2\r\n        ) {\r\n          currentStep++;\r\n          if (currentStep > 1) {\r\n            $(\".c-btn-back\").show();\r\n          } else if (currentStep == 1) {\r\n            $(\".c-btn-back\").hide();\r\n          }\r\n          if (currentStep == 2) {\r\n            var submitbtntext = $(\"#submitbtntext\").val();\r\n            var btnadditionmarkup =\r\n              '<img src=\"' +\r\n              customVariables.assetsURL +\r\n              '/img/icons/arrow-right-black.svg\" alt=\"caret-left\" class=\"js-tosvg tosvg\" />';\r\n            $(\".btn-text-js\").html(submitbtntext + btnadditionmarkup);\r\n            ChangeToSvg();\r\n          }\r\n\r\n          $(\".steps-remaining\").attr(\"data-current-step\", currentStep);\r\n          $(\".form-steps-2\").children().removeClass(\"step--active\");\r\n          $(\".form-steps-2 .step-\" + currentStep).addClass(\"step--active\");\r\n          $(\".js-info-form div.error\").hide();\r\n          $(\".steps-remaining\").text(\"0\" + currentStep);\r\n        }\r\n      }\r\n    },\r\n  });\r\n\r\n  $(\".c-btn-back\").click(function () {\r\n    $(\".js-info-form\").validate().settings.ignore = \":hidden\";\r\n    var currentStep = $(\".steps-remaining\").attr(\"data-current-step\");\r\n    if (\r\n      currentStep != undefined &&\r\n      currentStep != \"\" &&\r\n      currentStep > 1 &&\r\n      currentStep <= 4\r\n    ) {\r\n      currentStep--;\r\n      $(\".steps-remaining\").attr(\"data-current-step\", currentStep);\r\n      $(\".form-steps-2\").children().removeClass(\"step--active\");\r\n      $(\".form-steps-2 .step-\" + currentStep).addClass(\"step--active\");\r\n      $(\".steps-remaining\").text(\"0\" + currentStep);\r\n      $(\".js-info-form div.error\").hide();\r\n\r\n      var nextbtntext = $(\"#nextbtntext\").val();\r\n      var btnadditionmarkup =\r\n        '<img src=\"' +\r\n        customVariables.assetsURL +\r\n        '/img/icons/arrow-right-black.svg\" alt=\"caret-left\" class=\"js-tosvg tosvg\" />';\r\n      $(\".btn-text-js\").html(nextbtntext + btnadditionmarkup);\r\n      ChangeToSvg();\r\n\r\n      if (currentStep == 1) {\r\n        $(\".c-btn-back\").hide();\r\n      }\r\n      return false;\r\n    }\r\n  });\r\n});\r\nfunction validation(target) {\r\n  if ($(target).length) {\r\n    var $target = $(target);\r\n    $target.each(function (i, e) {\r\n      var v = $target.eq(i).validate({\r\n        errorElement: \"span\",\r\n        errorClass: \"invalid-field\",\r\n        rules: {\r\n          intl: {\r\n            number: true,\r\n          },\r\n        },\r\n        highlight: function (element) {\r\n          $(element).parents(\".form-group\").addClass(\"invalid-field\");\r\n          $(element)\r\n            .parents(\".input-wrapper\")\r\n            .addClass(\"invalid-field-wrapper\");\r\n        },\r\n        unhighlight: function (element) {\r\n          $(element).parents(\".form-group\").removeClass(\"invalid-field\");\r\n          $(element)\r\n            .parents(\".input-wrapper\")\r\n            .removeClass(\"invalid-field-wrapper\");\r\n        },\r\n        errorPlacement: function (error, element) {},\r\n        submitHandler: function (form) {\r\n          formSubmit(form);\r\n        },\r\n      });\r\n    });\r\n  }\r\n}\r\n$(document).on(\"focus\", \".js-input-focus\", function (e) {\r\n  $(this).parent().addClass(\"is--focus\");\r\n});\r\n$(document).on(\"blur\", \".js-input-focus\", function (e) {\r\n  inputValue = $(this).val().length;\r\n  if (!inputValue > 0) {\r\n    $(this).parent().removeClass(\"is--focus\");\r\n  }\r\n});\r\nfunction checkFieldval(element) {\r\n  $(element).each(function (i, index) {\r\n    inputValue = $(index).val().length;\r\n    if (inputValue > 0) {\r\n      $(index).parent().addClass(\"is--focus\");\r\n    }\r\n  });\r\n}\r\nif ($(\".js-intl-input\").length) {\r\n  $(\".js-intl-input\").each(function () {\r\n    var input = this;\r\n    window.intlTelInput(input, {\r\n      initialCountry: \"ae\",\r\n      separateDialCode: true,\r\n      dropdownContainer: document.body,\r\n      utilsScript: utilsPath,\r\n      rtl: true,\r\n    });\r\n  });\r\n}\r\nvar processLoop = false; // keeping auto scroll off -- switch to true to turn it on\r\nfunction tabber(target) {\r\n  var $this = $(target);\r\n  $this.find('a[data-toggle=\"tab\"]').click(function (e) {\r\n    e.preventDefault();\r\n    var tabTarget = $(this).attr(\"href\");\r\n    $this.find(\".tab-pane\").removeClass(\"active\");\r\n    $this.find('a[data-toggle=\"tab\"]').parent().removeClass(\"active\");\r\n    $(tabTarget).addClass(\"active\").stop();\r\n    $(this).parent().addClass(\"active\");\r\n  });\r\n}\r\nfunction swapActive(index, animationTime) {\r\n  if (processLoop == true) {\r\n    $(\".nav-tabs li\").removeClass(\"active\");\r\n    $(\".tab-content div\").removeClass(\"active\");\r\n    $(\".nav-tabs li\").eq(index).addClass(\"active\");\r\n    $(\".tab-content div\").eq(index).addClass(\"active\");\r\n  }\r\n  totalNav = $(\".nav-tabs li\").length;\r\n  if (index == totalNav - 1) {\r\n    index = 0;\r\n  } else {\r\n    index++;\r\n  }\r\n  setTimeout(function () {\r\n    swapActive(index);\r\n  }, 3000);\r\n}\r\n$(\".js-tabber\").hover(\r\n  function () {\r\n    processLoop = false;\r\n  },\r\n  function () {\r\n    processLoop = false; // keeping auto scroll off -- switch to true to turn it on\r\n  }\r\n);\r\ntabber(\".js-tabber\");\r\nswapActive(0, 3000);\r\n\r\nfunction customScrollBar() {\r\n  $(\".js-custom-scroll-bar\").mCustomScrollbar();\r\n  $(\".js-menuscroll-desktop\").mCustomScrollbar();\r\n  $(\".c-event-banner .event-txt-box .time\").mCustomScrollbar({\r\n    theme: \"minimal-dark\",\r\n    // setHeight: 150,\r\n  });\r\n  // if (winWidth < 992) {\r\n  //     $('.js-custom-scroll-bar').mCustomScrollbar(\"destroy\");\r\n  // }\r\n}\r\n// menu\r\n$(document).on(\"click\", \".menu-sec.is--active\", function (e) {\r\n  if ($(e.target).closest(\".menu-inner, .main-nav\").length === 0) {\r\n    $(\".menu-sec .close-menu\").click();\r\n  }\r\n});\r\nfunction menuOpen() {\r\n  $(\".hamburger a\").each(function (index) {\r\n    $(this).on(\"click\", function (e) {\r\n      e.preventDefault();\r\n      hamPosition = $(this)[0].getBoundingClientRect();\r\n      // $('.close-menu').css({\r\n      //     'left': hamPosition.left,\r\n      //     'top': hamPosition.top,\r\n      // })\r\n      $(\".menu-sec\").addClass(\"is--active\");\r\n      setTimeout(function () {\r\n        $(\"body, html\").addClass(\"menu-open\");\r\n      }, 100);\r\n      if (winWidth < 992) {\r\n        var posTop = \"-\" + $(window).scrollTop();\r\n        $(\"html\").css({\r\n          position: \"fixed\",\r\n          top: posTop + \"px\",\r\n        });\r\n      }\r\n    });\r\n  });\r\n}\r\nfunction menuclose() {\r\n  $(\".close-menu\").on(\"click\", function (e) {\r\n    e.preventDefault();\r\n    $(\".menu-sec\").removeClass(\"is--active\");\r\n    setTimeout(function () {\r\n      $(\"body, html\").removeClass(\"menu-open\");\r\n    }, 350);\r\n    if (winWidth < 992) {\r\n      var topPos = $(\"html\").css(\"top\");\r\n      if (topPos != \"0px\") {\r\n        var makInt = topPos.split(\"-\")[1].split(\"px\")[0];\r\n      }\r\n      $(\"html\").css({\r\n        position: \"relative\",\r\n        top: \"auto\",\r\n      });\r\n      $(window).scrollTop(parseInt(makInt));\r\n    }\r\n  });\r\n}\r\nvar fixedSidebar = $(\".js-fixed-sidebar\").height();\r\n$(\".js-scroll-sec\").css(\"minHeight\", fixedSidebar + 100);\r\nfunction scrollToSec(anchor, section) {\r\n  var $thisAnchor = $(anchor);\r\n  var $thisSection = $(section);\r\n  $thisAnchor.find(\"a\").click(function (e) {\r\n    e.preventDefault();\r\n    $thisAnchor.find(\"a\").parent().removeClass(\"active\");\r\n    $(this).parent().addClass(\"active\");\r\n    var targetSection = $(this).attr(\"href\").split(\"#\")[1];\r\n    var sectionPos = $thisSection\r\n      .find('[data-link=\"' + targetSection + '\"]')\r\n      .offset().top;\r\n    moveTo(sectionPos);\r\n  });\r\n}\r\nfunction moveTo(position) {\r\n  var headerHeight = $(\".c-sticky-header\").outerHeight();\r\n  $(\"html, body\").animate(\r\n    {\r\n      scrollTop: position - headerHeight,\r\n    },\r\n    \"slow\"\r\n  );\r\n}\r\n$(document).on(\"click\", \".c-collapseable\", function (e) {\r\n  if (winWidth < 768) {\r\n    var attribute = $(this).attr(\"data-accordion\");\r\n    var revert = $(this).attr(\"data-revert\");\r\n    e.preventDefault();\r\n    if (revert) {\r\n      $(\"[data-accordion], .c-collapseable\").not(this).removeClass(\"showing\");\r\n      $(\".detail-box, .accordion-content\").not(attribute).slideUp(\"slow\");\r\n    }\r\n    if (!attribute) {\r\n      if ($(this).hasClass(\"showing\")) {\r\n        $(this).removeClass(\"showing\");\r\n        $(this).siblings(\".detail-box\").slideUp();\r\n      } else {\r\n        $(\".c-collapseable\").removeClass(\"showing\");\r\n        $(\".detail-box\").slideUp();\r\n        $(this).addClass(\"showing\");\r\n        $(this).siblings(\".detail-box\").slideDown();\r\n      }\r\n    } else {\r\n      $(this).toggleClass(\"showing\");\r\n      $(attribute).slideToggle(\"slow\");\r\n    }\r\n  }\r\n});\r\nfunction fixedToScroll() {\r\n  if ($(\".js-fixed-sidebar\").length > 0) {\r\n    $(\".js-fixed-sidebar\").css(\r\n      \"width\",\r\n      $(\".js-fixed-sidebar\").parent().width()\r\n    );\r\n    var footerOffset = $(\".c-main-footer\").offset().top;\r\n    var scrollOffset = $(\".js-fixed-sidebar\").offset().top;\r\n    var sidebarHeight = $(\".js-fixed-sidebar\").outerHeight();\r\n    var forFixedOffset = scrollOffset - headerHeight + 26;\r\n    var forBottomOffset = footerOffset - 70 - sidebarHeight - headerHeight;\r\n    $(window).scroll(function () {\r\n      var winScroll = $(this).scrollTop();\r\n      if (winScroll > forFixedOffset) {\r\n        $(\".js-fixed-sidebar\").addClass(\"is--fixed\");\r\n        $(\".js-fixed-sidebar\").removeClass(\"is--bottom\");\r\n        if (winScroll > forBottomOffset) {\r\n          $(\".js-fixed-sidebar\").addClass(\"is--bottom\");\r\n        }\r\n      } else {\r\n        $(\".js-fixed-sidebar\").removeClass(\"is--fixed is--bottom\");\r\n      }\r\n    });\r\n  }\r\n}\r\n\r\n// Video functionality\r\nvar touchmoved = false;\r\nfunction clickfunction() {\r\n  $(document)\r\n    .on(\"touchend click\", \".js-dropdownbtn:not(.is--active)\", function () {\r\n      if (touchmoved != true) {\r\n        dropdownclose();\r\n        dropdownopen($(this));\r\n      }\r\n    })\r\n    .on(\"touchend click\", \".js-dropdownbtn.is--active\", function () {\r\n      if (touchmoved != true) {\r\n        dropdownclose();\r\n      }\r\n    })\r\n    .on(\"touchend click\", function (e) {\r\n      if (touchmoved != true) {\r\n        var gdd = $(\".dropdown-box\");\r\n        if (!gdd.is(e.target) && gdd.has(e.target).length === 0) {\r\n          dropdownclose();\r\n        }\r\n      }\r\n    })\r\n    .on(\"touchend click\", \".js-videoPopup\", function () {\r\n      if (touchmoved != true) {\r\n        videoPopup($(this));\r\n      }\r\n    })\r\n    .on(\"touchend click\", \".parent-cl\", function (e) {\r\n      if (touchmoved != true) {\r\n        $(this).parents(\".video-box\").toggleClass(\"play-video\");\r\n        var etarget = $(e.target);\r\n        // if (winWidth < 1300) {\r\n        //     if (etarget.parents('.video-box').hasClass('play-video')) {\r\n        //         etarget[0].play();\r\n        //     } else {\r\n        //         etarget[0].pause();\r\n        //     }\r\n        // }\r\n      }\r\n    })\r\n    .on(\"touchmove\", function (e) {\r\n      touchmoved = true;\r\n    })\r\n    .on(\"touchstart\", function () {\r\n      touchmoved = false;\r\n    });\r\n}\r\nfunction videoPopup(target) {\r\n  var $target = $(target);\r\n  var videoUrl;\r\n  var vidPlayer = null;\r\n  if (winWidth < 768) {\r\n    videoUrl = $target.data(\"mobile-url\");\r\n  } else {\r\n    videoUrl = $target.data(\"desktop-url\");\r\n  }\r\n  var videoClass = $target.data(\"video-class\");\r\n  var videoWidth = $target.data(\"width\");\r\n  var videoHeight = $target.data(\"height\");\r\n\r\n  var videoType = $target.data(\"video-type\");\r\n  if (videoUrl.split(\".mp4\")[1] !== undefined) {\r\n    videoType = \"video/mp4\";\r\n  }\r\n\r\n  var videoPoster = $target.data(\"video-poster\") || null;\r\n  var techOrder = [\"html5\", \"youtube\"];\r\n  var $content =\r\n    '<div class=\"popup-video op-0\"><video id=\"lightboxVideo\" width=\"' +\r\n    videoWidth +\r\n    '\" height=\"' +\r\n    videoHeight +\r\n    '\" preload=\"auto\" controls autoplay class=\"video-js vjs-layout-large\" data-setup=\"{}\"><source src=\"' +\r\n    videoUrl +\r\n    '\" type=\"video/mp4\" /><p class=\"vjs-no-js\">To view this video please enable JavaScript, and consider upgrading to a web browser that <a href=\"https://videojs.com/html5-video-support/\" target=\"_blank\" rel=\"noopener noreferrer\">supports HTML5 video</a></p></video></div>';\r\n  $.fancybox.open({\r\n    type: \"html\",\r\n    content: $content,\r\n    beforeShow: function () {\r\n      $(\"body\").addClass(\"is--videopopup\");\r\n      $(\".fancybox-container\").addClass(videoClass);\r\n    },\r\n    afterShow: function () {\r\n      vidPlayer = videojs(\"lightboxVideo\", function () {\r\n        techOrder;\r\n      });\r\n      vidPlayer.src({\r\n        type: videoType === \"youtube\" ? \"video/youtube\" : \"video/mp4\",\r\n        src:\r\n          videoType === \"youtube\"\r\n            ? \"https://www.youtube.com/watch?v=\" + videoUrl\r\n            : videoUrl,\r\n      });\r\n      if (videoPoster) vidPlayer.poster(videoPoster);\r\n      vidPlayer.on(\"ready\", function () {\r\n        vidPlayer.play();\r\n      });\r\n      $(\".popup-video\").animate(\r\n        {\r\n          opacity: \"1\",\r\n        },\r\n        500\r\n      );\r\n    },\r\n    beforeClose: function () {\r\n      $(\"body\").removeClass(\"is--videopopup\");\r\n      videojs(\"lightboxVideo\").dispose();\r\n    },\r\n  });\r\n}\r\nvar videoPlayerIdIndex = 1;\r\nfunction videoPlayerInit() {\r\n  $(\".my-video-js:not(.my-video-js--updated)\").each(function () {\r\n    $(this).on(\"pause\", function () {\r\n      $(this).parents(\".video-box\").removeClass(\"play-video\");\r\n    });\r\n    $(this).on(\"play\", function () {\r\n      $(this).parents(\".video-box\").addClass(\"play-video\");\r\n    });\r\n    var thisId = $(this).attr(\"id\");\r\n    $(this).addClass(\"video-js\");\r\n    if (!thisId == \"\") {\r\n      thisId = \"video-id-\" + videoPlayerIdIndex;\r\n      $(this).attr(\"id\", thisId);\r\n    }\r\n    var player = videojs(thisId);\r\n    videoPlayerIdIndex++;\r\n    $(this).addClass(\"my-video-js--updated\");\r\n  });\r\n}\r\nfunction dataSrc() {\r\n  if (winWidth < 768) {\r\n    $(\"[data-mobile-src]\").each(function () {\r\n      var thisSrc = $(this).attr(\"data-mobile-src\");\r\n      $(this).attr(\"src\", thisSrc);\r\n    });\r\n    $(\"[data-mobile-poster]\").each(function () {\r\n      var thisSrc = $(this).attr(\"data-mobile-poster\");\r\n      $(this).attr(\"poster\", thisSrc);\r\n    });\r\n  } else {\r\n    $(\"[data-desktop-src]\").each(function () {\r\n      var thisSrc = $(this).attr(\"data-desktop-src\");\r\n      $(this).attr(\"src\", thisSrc);\r\n    });\r\n    $(\"[data-desktop-poster]\").each(function () {\r\n      var thisSrc = $(this).attr(\"data-desktop-poster\");\r\n      $(this).attr(\"poster\", thisSrc);\r\n    });\r\n  }\r\n}\r\n// switcher\r\nfunction switcher() {\r\n  if (winWidth < 1200) {\r\n    $(\".web-switch\").click(function () {\r\n      if ($(this).attr(\"trigger\") === \"0\") {\r\n        $(this).attr(\"trigger\", \"1\");\r\n        $(this).addClass(\"is--open\");\r\n      } else {\r\n        $(this).attr(\"trigger\", \"0\");\r\n        $(this).removeClass(\"is--open\");\r\n      }\r\n    });\r\n  }\r\n}\r\n// switcher\r\n// fancy box\r\nfunction galleryFancyBox() {\r\n  $(document).ready(function () {\r\n    $(\".fancybox-gallery\").each(function (i, e) {\r\n      $(e).fancybox({\r\n        prevEffect: \"none\",\r\n        nextEffect: \"none\",\r\n        closeBtn: false,\r\n        helpers: {\r\n          title: { type: \"inside\" },\r\n        },\r\n      });\r\n    });\r\n  });\r\n}\r\n// fancy box\r\nvar isDateSupported = function () {\r\n  var input = document.createElement(\"input\");\r\n  var value = \"a\";\r\n  input.setAttribute(\"type\", \"date\");\r\n  input.setAttribute(\"value\", value);\r\n  return input.value !== value;\r\n};\r\nvar isDateSupportedVariable = isDateSupported();\r\nif (!isDateSupportedVariable) {\r\n  $('[type=\"date\"]').each(function () {\r\n    $(this).attr(\"type\", \"text\");\r\n    $(this).mask(\"00/00/0000\");\r\n  });\r\n}\r\n\r\n// if images missing - send hint to dom.\r\ncheckImgMissing();\r\nfunction checkImgMissing() {\r\n  $(\".b-thumb-content-wrap, #divProgramContent\").each(function () {\r\n    if (\r\n      (!$(\".b-thumb-img img\", this).get(0) ||\r\n        !$(\".b-thumb-img img\", this).attr(\"src\")) &&\r\n      !$(\"video\", this).get(0)\r\n    ) {\r\n      $(this).addClass(\"img--missing\");\r\n    }\r\n  });\r\n}\r\n\r\nvar observeDOM = (function () {\r\n  var MutationObserver =\r\n    window.MutationObserver || window.WebKitMutationObserver;\r\n\r\n  return function (obj, callback) {\r\n    if (!obj || obj.nodeType !== 1) return;\r\n\r\n    if (MutationObserver) {\r\n      // define a new observer\r\n      var mutationObserver = new MutationObserver(callback);\r\n\r\n      // have the observer observe foo for changes in children\r\n      mutationObserver.observe(obj, { childList: true, subtree: true });\r\n      return mutationObserver;\r\n    }\r\n\r\n    // browser support fallback\r\n    else if (window.addEventListener) {\r\n      obj.addEventListener(\"DOMNodeInserted\", callback, false);\r\n      obj.addEventListener(\"DOMNodeRemoved\", callback, false);\r\n    }\r\n  };\r\n})();\r\n\r\nobserveDOM($(\"#divProgramContent, #galleryList\")[0], function (m) {\r\n  checkImgMissing();\r\n  videoPlayerInit();\r\n});\r\n\r\n// In AR the p tag is missing so adding it through JS\r\n$(\".c-home-banner .c-tab-info .tab-content .tab-pane\").each(function () {\r\n  if (!$(\"p\", this).get(0)) {\r\n    this.innerHTML = \"<p>\" + this.innerHTML + \"</p>\";\r\n  }\r\n});\r\n\r\n// FOUC Issue\r\nwindow.addEventListener(\"load\", (event) => {\r\n  var image = document.querySelectorAll(\"img\");\r\n  image.forEach(function () {\r\n    if (this.complete && this.naturalHeight !== 0) {\r\n      ChangeToSvg();\r\n      $(this).css(\"opacity\", 1);\r\n    }\r\n  });\r\n});\r\n\r\ndocument.fonts.ready.then(function () {\r\n  $(\"html\").addClass(\"font-ready\");\r\n});\r\n"]}