/**
 * 高管简历区块交互功能
 * 
 * @package Nenghui_Energy_Theme
 */

(function($) {
    'use strict';

    // 等待DOM加载完成
    $(document).ready(function() {
        initExecutiveProfiles();
    });

    /**
     * 初始化高管简历功能
     */
    function initExecutiveProfiles() {
        $('.executive-profiles-block').each(function() {
            const $block = $(this);
            
            // 移除加载状态
            $block.removeClass('loading');
        });
        
        // 初始化响应式处理
        handleResponsive();
        
        // 初始化动画效果
        initAnimations();
        
        // 初始化懒加载
        initLazyLoading();
    }



    /**
     * 响应式处理
     */
    function handleResponsive() {
        const isMobile = window.innerWidth <= 768;
        
        $('.executive-profiles-block').each(function() {
            const $block = $(this);
            
            if (isMobile) {
                $block.addClass('mobile-view');
            } else {
                $block.removeClass('mobile-view');
            }
        });
    }

    // 窗口大小改变时重新处理响应式
    $(window).on('resize', debounce(function() {
        handleResponsive();
    }, 250));

    /**
     * 防抖函数
     * @param {Function} func 要防抖的函数
     * @param {number} wait 等待时间
     * @param {boolean} immediate 是否立即执行
     */
    function debounce(func, wait, immediate) {
        let timeout;
        return function executedFunction() {
            const context = this;
            const args = arguments;
            
            const later = function() {
                timeout = null;
                if (!immediate) func.apply(context, args);
            };
            
            const callNow = immediate && !timeout;
            clearTimeout(timeout);
            timeout = setTimeout(later, wait);
            
            if (callNow) func.apply(context, args);
        };
    }

    /**
     * 懒加载图片（如果有头像图片的话）
     */
    function initLazyLoading() {
        if ('IntersectionObserver' in window) {
            const imageObserver = new IntersectionObserver((entries, observer) => {
                entries.forEach(entry => {
                    if (entry.isIntersecting) {
                        const img = entry.target;
                        img.src = img.dataset.src;
                        img.classList.remove('lazy');
                        imageObserver.unobserve(img);
                    }
                });
            });

            document.querySelectorAll('img[data-src]').forEach(img => {
                imageObserver.observe(img);
            });
        }
    }

    /**
     * 添加动画效果
     */
    function initAnimations() {
        if ('IntersectionObserver' in window) {
            // 使用 Intersection Observer 来触发动画
            const animationObserver = new IntersectionObserver((entries) => {
                entries.forEach(entry => {
                    if (entry.isIntersecting) {
                        entry.target.classList.add('animate');
                    }
                });
            }, {
                threshold: 0.1,
                rootMargin: '0px 0px -50px 0px'
            });

            // 观察所有高管卡片
            document.querySelectorAll('.executive-card').forEach(card => {
                animationObserver.observe(card);
            });
        }
    }

})(jQuery);