jQuery(document).ready(function ($) {
  // Mobile Toggle
  $(".site-header--menu-control").click(function () {
    $("body").toggleClass("reveal-menu");
    $(".reveal-search").removeClass("reveal-search");
  });

  var vid = document.getElementById("media-video");

  $(".site-header--search-control").click(function () {
    $("body").toggleClass("reveal-search");
    vid.paused ? vid.play() : vid.pause();
    $(".reveal-menu").removeClass("reveal-menu");
    $(this).toggleClass("close");
    let title = "Open Search";

    if ($(this).hasClass("close")) {
      title = "Close Search";
    }
    $(this).attr("title", title);
    $(this).attr("aria-label", title);
  });

  $(".site-header--search-control---mobile").click(function () {
    $("body").toggleClass("reveal-search");
    $(".reveal-menu").removeClass("reveal-menu");
    $(".site-search").focus();
  });

  var findInsiders = function (elem) {
    var tabbable = elem.find("div, input, ul, li, a").filter(":visible");

    var firstTabbable = tabbable.first();
    var lastTabbable = tabbable.last();
    /*set focus on first input*/
    firstTabbable.focus();

    /*redirect last tab to first input*/
    lastTabbable.on("keydown", function (e) {
      if (e.which === 9 && !e.shiftKey) {
        e.preventDefault();
        firstTabbable.focus();
      }
    });

    /*redirect first shift+tab to last input*/
    firstTabbable.on("keydown", function (e) {
      if (e.which === 9 && e.shiftKey) {
        e.preventDefault();
        lastTabbable.focus();
      }
    });
  };

  $("#search_btn").click(function (e) {
    e.preventDefault();
    findInsiders($(".site-search"));
  });

  $(document).on("keydown", function (event) {
    if (event.key == "Escape") {
      $("body").removeClass("reveal-search");
      $("#search_btn").focus();
    }
  });

  $("#play-pause").click(function () {
    $(this).toggleClass("paused");
    vid.paused ? vid.play() : vid.pause();
  });
  $(".video-hero .hero-site .hero-text-section").click(function () {
    $("#play-pause").toggleClass("paused");
    vid.paused ? vid.play() : vid.pause();
  });

  $("button.alert-close-button").click(function () {
    $("section.alert").hide();
  });

  $("#filterOptions").click(function () {
    $(this).toggleClass("open");
    $(".filter-collapse").toggleClass("open");
  });

  // Open Filters
  $("#sas").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("sas_open");
  });
  $("#hajim").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("hajim_open");
  });
  $("#eastman").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("eastman_open");
  });
  $("#smd").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("smd_open");
  });
  $("#son").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("son_open");
  });
  $("#simon").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("simon_open");
  });
  $("#warner").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("warner_open");
  });
  $("#undergrad").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("under_open");
  });
  $("#grad").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("grad_open");
  });
  $("#certificate").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("cert_open");
  });
  $("#a-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("a_open");
  });
  $("#b-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("b_open");
  });
  $("#c-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("c_open");
  });
  $("#d-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("d_open");
  });
  $("#e-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("e_open");
  });
  $("#f-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("f_open");
  });
  $("#g-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("g_open");
  });
  $("#h-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("h_open");
  });
  $("#i-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("i_open");
  });
  $("#j-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("j_open");
  });
  $("#k-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("k_open");
  });
  $("#l-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("l_open");
  });
  $("#m-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("m_open");
  });
  $("#n-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("n_open");
  });
  $("#o-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("o_open");
  });
  $("#p-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("p_open");
  });
  $("#q-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("q_open");
  });
  $("#r-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("r_open");
  });
  $("#s-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("s_open");
  });
  $("#t-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("t_open");
  });
  $("#u-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("u_open");
  });
  $("#v-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("v_open");
  });
  $("#w-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("w_open");
  });
  $("#x-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("x_open");
  });
  $("#y-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("y_open");
  });
  $("#z-section").click(function () {
    $(this).toggleClass("on");
    $(".schools-wrapper").toggleClass("z_open");
  });

  //Close Filters
  $(".open-filters .sas").click(function () {
    $("#sas").removeClass("on");
    $(".schools-wrapper").removeClass("sas_open");
  });
  $(".open-filters .hajim").click(function () {
    $("#hajim").removeClass("on");
    $(".schools-wrapper").removeClass("hajim_open");
  });
  $(".open-filters .eastman").click(function () {
    $("#eastman").removeClass("on");
    $(".schools-wrapper").removeClass("eastman_open");
  });
  $(".open-filters .smd").click(function () {
    $("#smd").removeClass("on");
    $(".schools-wrapper").removeClass("smd_open");
  });
  $(".open-filters .son").click(function () {
    $("#son").removeClass("on");
    $(".schools-wrapper").removeClass("son_open");
  });
  $(".open-filters .simon").click(function () {
    $("#simon").removeClass("on");
    $(".schools-wrapper").removeClass("simon_open");
  });
  $(".open-filters .warner").click(function () {
    $("#warner").removeClass("on");
    $(".schools-wrapper").removeClass("warner_open");
  });
  $(".open-filters .undergrad").click(function () {
    $("#undergrad").removeClass("on");
    $(".schools-wrapper").removeClass("under_open");
  });
  $(".open-filters .grad").click(function () {
    $("#grad").removeClass("on");
    $(".schools-wrapper").removeClass("grad_open");
  });
  $(".open-filters .certificate").click(function () {
    $("#certificate").removeClass("on");
    $(".schools-wrapper").removeClass("cert_open");
  });
  $(".open-filters .a-section").click(function () {
    $("#a-section").removeClass("on");
    $(".schools-wrapper").removeClass("a_open");
  });
  $(".open-filters .b-section").click(function () {
    $("#b-section").removeClass("on");
    $(".schools-wrapper").removeClass("b_open");
  });
  $(".open-filters .c-section").click(function () {
    $("#c-section").removeClass("on");
    $(".schools-wrapper").removeClass("c_open");
  });
  $(".open-filters .d-section").click(function () {
    $("#d-section").removeClass("on");
    $(".schools-wrapper").removeClass("d_open");
  });
  $(".open-filters .e-section").click(function () {
    $("#e-section").removeClass("on");
    $(".schools-wrapper").removeClass("e_open");
  });
  $(".open-filters .f-section").click(function () {
    $("#f-section").removeClass("on");
    $(".schools-wrapper").removeClass("f_open");
  });
  $(".open-filters .g-section").click(function () {
    $("#g-section").removeClass("on");
    $(".schools-wrapper").removeClass("g_open");
  });
  $(".open-filters .h-section").click(function () {
    $("#h-section").removeClass("on");
    $(".schools-wrapper").removeClass("h_open");
  });
  $(".open-filters .i-section").click(function () {
    $("#i-section").removeClass("on");
    $(".schools-wrapper").removeClass("i_open");
  });
  $(".open-filters .j-section").click(function () {
    $("#j-section").removeClass("on");
    $(".schools-wrapper").removeClass("j_open");
  });
  $(".open-filters .k-section").click(function () {
    $("#k-section").removeClass("on");
    $(".schools-wrapper").removeClass("k_open");
  });
  $(".open-filters .l-section").click(function () {
    $("#l-section").removeClass("on");
    $(".schools-wrapper").removeClass("l_open");
  });
  $(".open-filters .m-section").click(function () {
    $("#m-section").removeClass("on");
    $(".schools-wrapper").removeClass("m_open");
  });
  $(".open-filters .n-section").click(function () {
    $("#n-section").removeClass("on");
    $(".schools-wrapper").removeClass("n_open");
  });
  $(".open-filters .o-section").click(function () {
    $("#o-section").removeClass("on");
    $(".schools-wrapper").removeClass("o_open");
  });
  $(".open-filters .p-section").click(function () {
    $("#p-section").removeClass("on");
    $(".schools-wrapper").removeClass("p_open");
  });
  $(".open-filters .q-section").click(function () {
    $("#q-section").removeClass("on");
    $(".schools-wrapper").removeClass("q_open");
  });
  $(".open-filters .r-section").click(function () {
    $("#r-section").removeClass("on");
    $(".schools-wrapper").removeClass("r_open");
  });
  $(".open-filters .s-section").click(function () {
    $("#s-section").removeClass("on");
    $(".schools-wrapper").removeClass("s_open");
  });
  $(".open-filters .t-section").click(function () {
    $("#t-section").removeClass("on");
    $(".schools-wrapper").removeClass("t_open");
  });
  $(".open-filters .u-section").click(function () {
    $("#u-section").removeClass("on");
    $(".schools-wrapper").removeClass("u_open");
  });
  $(".open-filters .v-section").click(function () {
    $("#v-section").removeClass("on");
    $(".schools-wrapper").removeClass("v_open");
  });
  $(".open-filters .w-section").click(function () {
    $("#w-section").removeClass("on");
    $(".schools-wrapper").removeClass("w_open");
  });
  $(".open-filters .x-section").click(function () {
    $("#x-section").removeClass("on");
    $(".schools-wrapper").removeClass("x_open");
  });
  $(".open-filters .y-section").click(function () {
    $("#y-section").removeClass("on");
    $(".schools-wrapper").removeClass("y_open");
  });
  $(".open-filters .z-section").click(function () {
    $("#z-section").removeClass("on");
    $(".schools-wrapper").removeClass("z_open");
  });

  $(".filter-title").click(function () {
    $(this).parent().toggleClass("close");
  });

  function checkForInput(element) {
    // element is passed to the function ^

    var $label = $(".school-name");
    var $section = $(".research_section.no-gray");

    if ($(element).val().length > 0) {
      $label.addClass("hide");
      $section.addClass("no-title");
    } else {
      $label.removeClass("hide");
      $section.removeClass("no-title");
    }
  }

  // The lines below are executed on page load
  $(".school-filters input").each(function () {
    checkForInput(this);
  });

  // The lines below (inside) are executed on change & keyup
  $(".school-filters input").on("change keyup", function () {
    checkForInput(this);
  });

  // Header Sticky
  $(window).scroll(function () {
    var scroll = $(window).scrollTop();

    if (scroll >= 75) {
      $(".site-header").addClass("fixed");
      $("body").addClass("push-down");
    } else {
      $(".site-header").removeClass("fixed");
      $("body").removeClass("push-down");
    }

    if (scroll >= 100) {
      $(".site-header").addClass("show-menu");
      $(".scroll-top").addClass("show-scroll-btn");
    } else {
      $(".site-header").removeClass("show-menu");
      $(".scroll-top").removeClass("show-scroll-btn");
    }
  });

  // Play and Pause
  var mediaVideo = $("#respect_video").get(0);

  $("#play-pause-button").click(function () {
    mediaVideo.play();
  });
  $(".close-button").click(function () {
    mediaVideo.pause();
  });

  // Show when on screen
  $.fn.visible = function (partial) {
    var $t = $(this),
      $w = $(window),
      viewTop = $w.scrollTop(),
      viewBottom = viewTop + $w.height(),
      _top = $t.offset().top,
      _bottom = _top + $t.height(),
      compareTop = partial === true ? _bottom : _top,
      compareBottom = partial === true ? _top : _bottom;

    return compareBottom <= viewBottom && compareTop >= viewTop;
  };

  var win = $(window);
  var animate = $(".animate");

  animate.each(function (i, el) {
    var el = $(el);
    if (el.visible(true)) {
      el.addClass("already-visible");
    }
  });
  win.scroll(function (event) {
    animate.each(function (i, el) {
      var el = $(el);
      if (el.visible(true)) {
        el.addClass("transition-in");
      }
    });
  });

  var main_bg = "";
  $(document).ready(function () {
    main_bg = $(".hero-image img");
  });
  $(document).ready(function () {
    main_text = $(".page-text--title");
  });
  $(window).scroll(function () {
    var st = $(window).scrollTop();
    $(main_bg).css({ transform: "translateY(" + (0 - st * 0.05) + "px" });
  });
});

$(document).ready(function () {
  var no_para = "";
  $(document).ready(function () {
    no_para = $(".no-parallax img");
  });
  $(window).scroll(function () {
    $(no_para).css({ transform: "translateY(" + 0 + "px" });
  });
});

function searchFunction() {
  // Declare variables
  var input, filter, ul, li, a, i, txtValue;
  input = document.getElementById("myInput");
  filter = input.value.toUpperCase();
  ul = document.getElementById("programs_wrapper");
  li = ul.getElementsByTagName("p");

  // Loop through all list items, and hide those who don't match the search query
  for (i = 0; i < li.length; i++) {
    a = li[i].getElementsByTagName("a")[0];
    txtValue = a.textContent || a.innerText;
    if (txtValue.toUpperCase().indexOf(filter) > -1) {
      li[i].style.display = "";
    } else {
      li[i].style.cssText = "display:none !important";
    }
  }
}
