
var loadingOverlay = document.querySelector('.loading');
function toggleLoading(event){
  if (event.keyCode !== 13) return;
  
  document.activeElement.blur();
  
  if (loadingOverlay.classList.contains('hidden')){
    loadingOverlay.classList.remove('hidden');
  } else {
    loadingOverlay.classList.add('hidden');
  }
}

document.addEventListener('keydown', toggleLoading);


// Function to handle lazy loading of images
function lazyLoadImages() {
	const images = document.querySelectorAll('img[loading="lazzy"]');
	const observer = new IntersectionObserver(entries => {
	  entries.forEach(entry => {
		if (entry.isIntersecting) {
		  const img = entry.target;
		  img.src = img.dataset.src; // Load the image source
		  img.removeAttribute('loading'); // Remove loading attribute
		  observer.unobserve(img); // Stop observing this image
		}
	  });
	});
	
	images.forEach(img => {
	  observer.observe(img); // Start observing each lazy image
	});
  }
  
  // Call the function when the document is ready
document.addEventListener('DOMContentLoaded', lazyLoadImages);

AOS.init({
	once: false,
	duration: 900,
});

jQuery(window).on('load scroll', function () {
	AOS.init({
		once: false,
		duration: 900,
	});
	// if ( jQuery(this).scrollTop() > 0 ) {
	// 	headerwrap.addClass( "sticky" );
	// } else {
	// 	headerwrap.removeClass( "sticky" );
	// }
});

jQuery( document ).ready( function () {
	// menu
	// jQuery('.menu > ul > li').each(function (index, element) {
	// 	var currentlimobile = jQuery(this).find('.mega-menu').length;
	// 	if (jQuery(currentlimobile).length == 1) {
	// 		 jQuery(`<div class='menu-arrow'><svg xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path id="Triangle" d="M5,0l5-8H0Z" transform="translate(0 8)" fill="#fff"/></svg></div>`).insertBefore(jQuery(this).find('.mega-menu'))
	// 	};
 	// });

	//  jQuery('.mobile-menu .menu > ul > li').each(function (index, element) {
	// 	var currentlimobile = jQuery(this).find('.sub-menu').length;
	// 	if (jQuery(currentlimobile).length == 1) {
	// 		 jQuery(`<div class='menu-arrow'><svg xmlns="http://www.w3.org/2000/svg" width="10" height="8" viewBox="0 0 10 8"><path id="Triangle" d="M5,0l5-8H0Z" transform="translate(0 8)" fill="#fff"/></svg></div>`).insertBefore(jQuery(this).find('.sub-menu'))
	// 	};
 	// });

	// jQuery("#desktop-bar").on('click', function () {
	// 	jQuery(this).toggleClass('active');
	// 	jQuery(this).find('.mega-menu').toggleClass('active');
	// });

	// jQuery("#toggle-mobile").on('click', function () {
	// 	jQuery(this).toggleClass('active');
	// 	jQuery('.mobile-menu').slideToggle();
	// });

	// jQuery(".mobile-menu .menu-arrow").on('click', function () {
	// 	jQuery(this).toggleClass('active');
	// 	jQuery(this).next('.sub-menu').slideToggle();
	// 	jQuery(this).parents('li').siblings().find('.mobile-menu').removeClass('active');
	// 	jQuery(this).parents('li').siblings().find('.sub-menu').slideUp();
	// });
	

	jQuery('.profile-info-btn').on('click', function(){
		jQuery(this).parents('.profile-detail-box').find('.profile-info').toggleClass('active');
	})


	jQuery( '.hero-slider' ).slick( {
		autoplay: true,
		autoplaySpeed: 5000,
		nextArrow: '.hero-next',
		prevArrow: '.hero-prev',
		arrows: true,
		dots: true,
		adaptiveHeight: true
	});

	jQuery( '.explore-sldier' ).slick( {
		autoplay: true,
		autoplaySpeed: 5000,
		nextArrow: '.explore-next',
		prevArrow: '.explore-prev',
		arrows: true,
		dots: false,
		adaptiveHeight: true
	});

	jQuery( '.home-devs-slider' ).slick( {
		slidesToShow: 4,
  		slidesToScroll: 4,
		autoplay: true,
		speed:1500,
		autoplaySpeed: 3000,
		arrows: false,
		dots: false,
		adaptiveHeight: false,
		responsive: [
			{
				breakpoint: 992,
				settings: {
					slidesToShow: 2,
  					slidesToScroll: 2,
				}
			},
			{
				breakpoint: 576,
				settings: {
					slidesToShow: 1,
  					slidesToScroll: 1,
				}
			}
		]
	});

	jQuery( '.home-news-slider' ).slick( {
		slidesToShow: 3,
  		slidesToScroll: 3,
		autoplay: true,
		speed:1500,
		autoplaySpeed: 3000,
		arrows: false,
		dots: false,
		adaptiveHeight: true,
		responsive: [
			{
				breakpoint: 992,
				settings: {
					slidesToShow: 2,
  					slidesToScroll: 2,
				}
			},
			{
				breakpoint: 576,
				settings: {
					slidesToShow: 1,
  					slidesToScroll: 1,
				}
			}
		]
	});

	jQuery('.profile-slider').slick({
		arrows:false,
		dots: false,
		infinite:true,
		speed:500,
		// autoplay:true,
		// autoplaySpeed: 3000,
		slidesToShow:1,
		slidesToScroll:1,
		asNavFor: '.profile-thumb-slider'
	});
	$('.profile-thumb-slider').slick({
		arrows:false,
		dots: false,
		slidesToShow: 8,
		slidesToScroll: 1,
		asNavFor: '.profile-slider',
		// centerMode: true,
		focusOnSelect: true,
		responsive: [
			{
				breakpoint: 1025,
				settings: {
					slidesToShow: 6,
				}
			},
			{
				breakpoint: 768,
				settings: {
					slidesToShow: 5,
				}
			},
			{
				breakpoint: 480,
				settings: {
					slidesToShow: 3,
				}
			}
		]
	});

	var $status = $('.custom-pagination');
	var $slickElement = $('.profile-detail-banner');
	$slickElement.on('init reInit afterChange', function (event, slick, currentSlide, nextSlide) {
		var i = (currentSlide ? currentSlide : 0) + 1;
		$status.text(i + '/' + slick.slideCount);
	});

	$slickElement.slick({
		autoplay: true,
		autoplaySpeed: 5000,
		arrows: false,
		dots: false,
		adaptiveHeight: true,
	});

// SVG Create
	jQuery(function(){
		jQuery('img.svg').each(function(){
			var $img = jQuery(this);
			var imgID = $img.attr('id');
			var imgClass = $img.attr('class');
			var imgURL = $img.attr('src');
			jQuery.get(imgURL, function(data) {
				var $svg = jQuery(data).find('svg');
				if(typeof imgID !== 'undefined') {
					$svg = $svg.attr('id', imgID);
				}
				if(typeof imgClass !== 'undefined') {
					$svg = $svg.attr('class', imgClass+' replaced-svg');
				}
				$svg = $svg.removeAttr('xmlns:a');
				if(!$svg.attr('viewBox') && $svg.attr('height') && $svg.attr('width')) {
					$svg.attr('viewBox', '0 0 ' + $svg.attr('height') + ' ' + $svg.attr('width'));
				}
				$img.replaceWith($svg);
			}, 'xml');
		});
	});
});

	//profile filter button

	// external js: isotope.pkgd.js

// init Isotope
var $grid = $('.grid').isotope({
  itemSelector: '.element-item',
  layoutMode: 'fitRows'
});
// filter functions
var filterFns = {
  // show if number is greater than 50
  numberGreaterThan50: function() {
    var number = $(this).find('.number').text();
    return parseInt( number, 10 ) > 50;
  },
  // show if name ends with -ium
  ium: function() {
    var name = $(this).find('.name').text();
    return name.match( /ium$/ );
  }
};
// bind filter button click
$('.filters-button-group').on( 'click', 'button', function() {
  var filterValue = $( this ).attr('data-filter');
  // use filterFn if matches value
  filterValue = filterFns[ filterValue ] || filterValue;
  $grid.isotope({ filter: filterValue });
});
// change active class on buttons
$('.filters-button-group').each( function( i, buttonGroup ) {
  var $buttonGroup = $( buttonGroup );
  $buttonGroup.on( 'click', 'button', function() {
    $buttonGroup.find('.active').removeClass('active');
    $( this ).addClass('active');
  });
});

jQuery(document).ready(function($) {
    // Handle login form submission
    $('#loginForm').submit(function(e) {
        e.preventDefault();
        
        var username = $('#loginUsername').val();
        var password = $('#loginPassword').val();
        
        // Make AJAX request to handle login logic
        $.ajax({
            url: ajaxurl, // WordPress AJAX handler
            type: 'POST',
            dataType: 'json',
            data: {
                action: 'login_action', // Custom action for login
                username: username,
                password: password
            },
            success: function(response) {
                // Handle login success
                console.log(response);
                alert('Login successful!');
            },
            error: function(jqXHR, textStatus, errorThrown) {
                // Handle login error
                console.error(textStatus, errorThrown);
                alert('Login failed!');
            }
        });
    });
    
    // Handle register form submission
    $('#registerForm').submit(function(e) {
        e.preventDefault();
        
        var username = $('#registerUsername').val();
        var email = $('#registerEmail').val();
        var password = $('#registerPassword').val();
        
        // Make AJAX request to handle registration logic
        $.ajax({
            url: ajaxurl, // WordPress AJAX handler
            type: 'POST',
            dataType: 'json',
            data: {
                action: 'register_action', // Custom action for registration
                username: username,
                email: email,
                password: password
            },
            success: function(response) {
                // Handle registration success
                console.log(response);
                alert('Registration successful!');
            },
            error: function(jqXHR, textStatus, errorThrown) {
                // Handle registration error
                console.error(textStatus, errorThrown);
                alert('Registration failed!');
            }
        });
    });
});