HEX
Server: Apache
System: Linux sg2plzcpnl509433.prod.sin2.secureserver.net 4.18.0-553.54.1.lve.el8.x86_64 #1 SMP Wed Jun 4 13:01:13 UTC 2025 x86_64
User: qhl5pt3kkb1d (10888259)
PHP: 8.3.30
Disabled: NONE
Upload Files
File: /home/qhl5pt3kkb1d/public_html/tstp-old/js/course.js
/* JS Document */



/******************************



[Table of Contents]



1. Vars and Inits

2. Set Header

3. Init Menu

4. Init Header Search

5. Init Tabs

6. Init Accordions

7. Init Dropdowns





******************************/



$(document).ready(function()

{

	"use strict";



	/* 



	1. Vars and Inits



	*/



	var header = $('.header');

	var menuActive = false;

	var menu = $('.menu');

	var burger = $('.hamburger');



	setHeader();



	$(window).on('resize', function()

	{

		setHeader();

	});



	$(document).on('scroll', function()

	{

		setHeader();

	});



	initMenu();

	initHeaderSearch();

	initTabs();

	initAccordions();

	initDropdowns();



	/* 



	2. Set Header



	*/



	function setHeader()

	{

		if($(window).scrollTop() > 100)

		{

			header.addClass('scrolled');

		}

		else

		{

			header.removeClass('scrolled');

		}

	}



	/* 



	3. Init Menu



	*/



	function initMenu()

	{

		if($('.menu').length)

		{

			var menu = $('.menu');

			if($('.hamburger').length)

			{

				burger.on('click', function()

				{

					if(menuActive)

					{

						closeMenu();

					}

					else

					{

						openMenu();



						$(document).one('click', function cls(e)

						{

							if($(e.target).hasClass('menu_mm'))

							{

								$(document).one('click', cls);

							}

							else

							{

								closeMenu();

							}

						});

					}

				});

			}

		}

	}



	function openMenu()

	{

		menu.addClass('active');

		menuActive = true;

	}



	function closeMenu()

	{

		menu.removeClass('active');

		menuActive = false;

	}



	/* 



	4. Init Header Search



	*/



	function initHeaderSearch()

	{

		if($('.search_button').length)

		{

			$('.search_button').on('click', function()

			{

				if($('.header_search_container').length)

				{

					$('.header_search_container').toggleClass('active');

				}

			});

		}

	}



	/* 



	5. Init Tabs



	*/



	function initTabs()

	{

		if($('.tab').length)

		{

			$('.tab').on('click', function()

			{

				$('.tab').removeClass('active');

				$(this).addClass('active');

				var clickedIndex = $('.tab').index(this);



				var panels = $('.tab_panel');

				panels.removeClass('active');

				$(panels[clickedIndex]).addClass('active');

			});

		}

	}



	/* 



	6. Init Accordions



	*/



	function initAccordions()

	{

		if($('.accordion').length)

		{

			var accs = $('.accordion');



			accs.each(function()

			{

				var acc = $(this);



				if(acc.hasClass('active'))

				{

					var panel = $(acc.next());

					var panelH = panel.prop('scrollHeight') + "px";

					

					if(panel.css('max-height') == "0px")

					{

						panel.css('max-height', panel.prop('scrollHeight') + "px");

					}

					else

					{

						panel.css('max-height', "0px");

					} 

				}



				acc.on('click', function()

				{

					if(acc.hasClass('active'))

					{

						acc.removeClass('active');

						var panel = $(acc.next());

						var panelH = panel.prop('scrollHeight') + "px";

						

						if(panel.css('max-height') == "0px")

						{

							panel.css('max-height', panel.prop('scrollHeight') + "px");

						}

						else

						{

							panel.css('max-height', "0px");

						} 

					}

					else

					{

						acc.addClass('active');

						var panel = $(acc.next());

						var panelH = panel.prop('scrollHeight') + "px";

						

						if(panel.css('max-height') == "0px")

						{

							panel.css('max-height', panel.prop('scrollHeight') + "px");

						}

						else

						{

							panel.css('max-height', "0px");

						} 

					}

				});

			});

		}

	}



	/* 



	7. Init Dropdowns



	*/



	function initDropdowns()

	{

		if($('.dropdowns li').length)

		{

			var dropdowns = $('.dropdowns li');



			dropdowns.each(function()

			{

				var dropdown = $(this);

				if(dropdown.hasClass('has_children'))

				{

					if(dropdown.hasClass('active'))

					{

						var panel = $(dropdown.find('> ul'));

						var panelH = panel.prop('scrollHeight') + "px";



						if(panel.css('max-height') == "0px")

						{

							panel.css('max-height', panel.prop('scrollHeight') + "px");

						}

						else

						{

							panel.css('max-height', "0px");

						}

					}



					dropdown.find(' > .dropdown_item').on('click', function()

					{

						var panel = $(dropdown.find('> ul'));

						var panelH = panel.prop('scrollHeight') + "px";

						dropdown.toggleClass('active');



						if(panel.css('max-height') == "0px")

						{

							panel.css('max-height', panel.prop('scrollHeight') + "px");

						}

						else

						{

							panel.css('max-height', "0px");

						}

					});

				}

			});

		}

	}



});