<?php
/**
* Enqueue scripts and styles
*
* @package GridFeel WordPress Theme
* @copyright Copyright (C) 2025 ThemesDNA
* @license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPLv2 or later
* @author ThemesDNA <themesdna@gmail.com>
*/

function gridfeel_scripts() {
    wp_enqueue_style('gridfeel-maincss', get_stylesheet_uri(), array(), null);
    wp_enqueue_style('fontawesome', get_template_directory_uri() . '/assets/css/all.min.css', array(), null );
    wp_enqueue_style('gridfeel-webfont', '//fonts.googleapis.com/css?family=Roboto+Slab:400,700|Oswald:400,700|Frank+Ruhl+Libre:400,700|Bree+Serif&amp;display=swap', array(), null);

    $gridfeel_primary_menu_active = false;
    if ( gridfeel_is_primary_menu_active() ) {
        $gridfeel_primary_menu_active = true;
    }
    $gridfeel_secondary_menu_active = false;
    if ( gridfeel_is_secondary_menu_active() ) {
        $gridfeel_secondary_menu_active = true;
    }

    $gridfeel_sticky_menu_active = false;
    $gridfeel_sticky_mobile_menu_active = false;
    if ( gridfeel_is_sticky_menu_active() ) {
        $gridfeel_sticky_menu_active = true;
    }
    if ( gridfeel_is_sticky_mobile_menu_active() ) {
        $gridfeel_sticky_mobile_menu_active = true;
    }

    $gridfeel_fitvids_active = false;
    if ( gridfeel_is_fitvids_active() ) {
        $gridfeel_fitvids_active = true;
    }
    if ( $gridfeel_fitvids_active ) {
        wp_enqueue_script('fitvids', get_template_directory_uri() .'/assets/js/jquery.fitvids.min.js', array( 'jquery' ), null, true);
    }

    $gridfeel_backtotop_active = false;
    if ( gridfeel_is_backtotop_active() ) {
        $gridfeel_backtotop_active = true;
    }

    $gridfeel_sticky_sidebar_active = true;
    if ( is_page_template( array( 'template-full-width-page.php', 'template-full-width-page-sidebar.php', 'template-full-width-post.php', 'template-full-width-post-sidebar.php' ) ) ) {
       $gridfeel_sticky_sidebar_active = false;
    }
    if ( is_404() ) {
        $gridfeel_sticky_sidebar_active = false;
    }
    if ( $gridfeel_sticky_sidebar_active ) {
        wp_enqueue_script('ResizeSensor', get_template_directory_uri() .'/assets/js/ResizeSensor.min.js', array( 'jquery' ), null, true);
        wp_enqueue_script('theia-sticky-sidebar', get_template_directory_uri() .'/assets/js/theia-sticky-sidebar.min.js', array( 'jquery' ), null, true);
    }

    wp_enqueue_script('gridfeel-navigation', get_template_directory_uri() . '/assets/js/navigation.js', array(), null, true );
    wp_enqueue_script('gridfeel-skip-link-focus-fix', get_template_directory_uri() . '/assets/js/skip-link-focus-fix.js', array(), null, true );
    wp_enqueue_script('gridfeel-customjs', get_template_directory_uri() .'/assets/js/custom.js', array( 'jquery', 'imagesloaded' ), null, true);
    wp_localize_script( 'gridfeel-customjs', 'gridfeel_ajax_object',
        array(
            'ajaxurl' => esc_url_raw( admin_url( 'admin-ajax.php' ) ),
            'primary_menu_active' => $gridfeel_primary_menu_active,
            'secondary_menu_active' => $gridfeel_secondary_menu_active,
            'sticky_menu_active' => $gridfeel_sticky_menu_active,
            'sticky_mobile_menu_active' => $gridfeel_sticky_mobile_menu_active,
            'sticky_sidebar_active' => $gridfeel_sticky_sidebar_active,
            'fitvids_active' => $gridfeel_fitvids_active,
            'backtotop_active' => $gridfeel_backtotop_active,
        )
    );

    if ( is_singular() && comments_open() && get_option( 'thread_comments' ) ) {
        wp_enqueue_script( 'comment-reply' );
    }
}
add_action( 'wp_enqueue_scripts', 'gridfeel_scripts' );

/**
 * Enqueue styles for the block-based editor.
 */
function gridfeel_block_editor_styles() {
    wp_enqueue_style( 'gridfeel-block-editor-style', get_template_directory_uri() . '/assets/css/editor-blocks.css', array(), null );
}
add_action( 'enqueue_block_editor_assets', 'gridfeel_block_editor_styles' );

/**
 * Enqueue customizer styles.
 */
function gridfeel_enqueue_customizer_styles() {
    wp_enqueue_style( 'gridfeel-customizer-styles', get_template_directory_uri() . '/inc/admin/css/customizer-style.css', array(), null );
    wp_enqueue_style('fontawesome', get_template_directory_uri() . '/assets/css/all.min.css', array(), null );
}
add_action( 'customize_controls_enqueue_scripts', 'gridfeel_enqueue_customizer_styles' );