<?php

add_action( 'after_setup_theme', 'welding_workshop_after_setup_theme' );
function welding_workshop_after_setup_theme() {
    add_theme_support( 'title-tag' );
    add_theme_support( 'automatic-feed-links' );
    add_theme_support( "responsive-embeds" );
    add_theme_support( 'wp-block-styles' );
    add_theme_support( 'align-wide' );
    add_theme_support( 'post-thumbnails' );
    add_image_size( 'welding-workshop-featured-image', 2000, 1200, true );
    add_image_size( 'welding-workshop-thumbnail-avatar', 100, 100, true );

    // Set the default content width.
    $GLOBALS['content_width'] = 525;

    // Add theme support for Custom Logo.
    add_theme_support( 'custom-logo', array(
        'width'       => 250,
        'height'      => 250,
        'flex-width'  => true,
        'flex-height' => true,
    ) );

    add_theme_support( 'custom-background', array(
        'default-color' => 'ffffff'
    ) );

    add_theme_support( 'html5', array('comment-form','comment-list','gallery','caption',) );

}

// Add function after setup:
function welding_workshop_conditional_editor_styles() {
    
    add_editor_style( array( 'assets/css/editor-style.css') );
}
add_action( 'after_setup_theme', 'welding_workshop_conditional_editor_styles', 11 );

/**
 * Register widget area.
 */
function welding_workshop_widgets_init() {
    register_sidebar( array(
        'name'          => __( 'Blog Sidebar', 'welding-workshop' ),
        'id'            => 'sidebar-1',
        'description'   => __( 'Add widgets here to appear in your sidebar on blog posts and archive pages.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Page Sidebar', 'welding-workshop' ),
        'id'            => 'sidebar-2',
        'description'   => __( 'Add widgets here to appear in your sidebar on pages.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Sidebar 3', 'welding-workshop' ),
        'id'            => 'sidebar-3',
        'description'   => __( 'Add widgets here to appear in your sidebar on blog posts and archive pages.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Footer 1', 'welding-workshop' ),
        'id'            => 'footer-1',
        'description'   => __( 'Add widgets here to appear in your footer.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Footer 2', 'welding-workshop' ),
        'id'            => 'footer-2',
        'description'   => __( 'Add widgets here to appear in your footer.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Footer 3', 'welding-workshop' ),
        'id'            => 'footer-3',
        'description'   => __( 'Add widgets here to appear in your footer.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );

    register_sidebar( array(
        'name'          => __( 'Footer 4', 'welding-workshop' ),
        'id'            => 'footer-4',
        'description'   => __( 'Add widgets here to appear in your footer.', 'welding-workshop' ),
        'before_widget' => '<section id="%1$s" class="widget %2$s">',
        'after_widget'  => '</section>',
        'before_title'  => '<h3 class="widget-title">',
        'after_title'   => '</h3>',
    ) );
}
add_action( 'widgets_init', 'welding_workshop_widgets_init' );

// enqueue styles for child theme
function welding_workshop_enqueue_styles() {

    // Bootstrap
    wp_enqueue_style( 'bootstrap-css', get_theme_file_uri( '/assets/css/bootstrap.css' ) );

    // Theme block stylesheet.
    wp_enqueue_style( 'welding-workshop-block-style', get_theme_file_uri( '/assets/css/blocks.css' ), array( 'welding-workshop-child-style' ), '1.0' );

    // enqueue parent styles
    wp_enqueue_style('construction-hub-style', get_template_directory_uri() .'/style.css');

    // enqueue child styles
    wp_enqueue_style('welding-workshop-child-style', get_stylesheet_directory_uri() .'/style.css', array('construction-hub-style'));

    require get_theme_file_path( '/tp-theme-color.php' );
    wp_add_inline_style( 'welding-workshop-child-style',$construction_hub_tp_theme_css );


    wp_enqueue_script( 'welding-workshop-custom-scripts-jquery', get_theme_file_uri() . '/assets/js/custom.js', array('jquery'),'' ,true );

    wp_enqueue_script( 'comment-reply', '/wp-includes/js/comment-reply.min.js', array(), false, true );

    $construction_hub_body_font_family = get_theme_mod('construction_hub_body_font_family', '');

    $construction_hub_heading_font_family = get_theme_mod('construction_hub_heading_font_family', '');

    $construction_hub_tp_theme_css = '
        body{
            font-family: '.esc_html($construction_hub_body_font_family).'!important;
        }
        h1{
            font-family: '.esc_html($construction_hub_heading_font_family).' !important;
        }
        h2{
            font-family: '.esc_html($construction_hub_heading_font_family).' !important;
        }
        h3{
            font-family: '.esc_html($construction_hub_heading_font_family).'!important;
        }
        h4{
            font-family: '.esc_html($construction_hub_heading_font_family).'!important;
        }
        h5{
            font-family: '.esc_html($construction_hub_heading_font_family).'!important;
        }
        h6{
            font-family: '.esc_html($construction_hub_heading_font_family).'!important;
        }
        #theme-sidebar .wp-block-search .wp-block-search__label{
            font-family: '.esc_html($construction_hub_heading_font_family).'!important;
        }
    ';
    wp_add_inline_style('construction-hub-style', $construction_hub_tp_theme_css);
    
}
add_action('wp_enqueue_scripts', 'welding_workshop_enqueue_styles');

function welding_workshop_admin_scripts() {
    // Backend CSS
    wp_enqueue_style( 'welding-workshop-backend-css', get_theme_file_uri( '/assets/css/customizer.css' ) );
}
add_action( 'admin_enqueue_scripts', 'welding_workshop_admin_scripts' );

function welding_workshop_theme_setup() {

    require get_stylesheet_directory() . '/customizer/customizer.php';

    require get_theme_file_path( '/customizer/customize-control-toggle.php' );

    if ( ! defined( 'CONSTRUCTION_HUB_PRO_THEME_NAME' ) ) {
        define( 'CONSTRUCTION_HUB_PRO_THEME_NAME', esc_html__( 'Welding Workshop Pro', 'welding-workshop' ));
    }
    if ( ! defined( 'CONSTRUCTION_HUB_PRO_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_PRO_THEME_URL', esc_url('https://www.themespride.com/products/workshop-wordpress-theme'));
    }
    if ( ! defined( 'CONSTRUCTION_HUB_FREE_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_FREE_THEME_URL', 'https://www.themespride.com/products/free-welding-wordpress-theme' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_DEMO_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_DEMO_THEME_URL', 'https://page.themespride.com/welding-workshop-pro/' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_DOCS_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_DOCS_THEME_URL', 'https://page.themespride.com/demo/docs/welding-workshop/' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_DOCS_URL' ) ) {
        define( 'CONSTRUCTION_HUB_DOCS_URL', 'https://page.themespride.com/demo/docs/welding-workshop/' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_RATE_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_RATE_THEME_URL', 'https://wordpress.org/support/theme/welding-workshop/reviews/#new-post' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_CHANGELOG_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_CHANGELOG_THEME_URL', get_stylesheet_directory() . '/readme.txt' );
    }
    if ( ! defined( 'CONSTRUCTION_HUB_SUPPORT_THEME_URL' ) ) {
        define( 'CONSTRUCTION_HUB_SUPPORT_THEME_URL', 'https://wordpress.org/support/theme/welding-workshop' );
    }

    define('WELDING_WORKSHOP_CREDIT',__('https://www.themespride.com/products/free-welding-wordpress-theme','welding-workshop') );
    if ( ! function_exists( 'welding_workshop_credit' ) ) {
        function welding_workshop_credit(){
            echo "<a href=".esc_url(WELDING_WORKSHOP_CREDIT)." target='_blank'>".esc_html__(get_theme_mod('construction_hub_footer_text',__('Welding Workshop WordPress Theme','welding-workshop')))."</a>";
        }
    }

}
add_action( 'after_setup_theme', 'welding_workshop_theme_setup' );

function welding_workshop_sanitize_choices( $input, $setting ) {
    global $wp_customize;
    $control = $wp_customize->get_control( $setting->id );
    if ( array_key_exists( $input, $control->choices ) ) {
        return $input;
    } else {
        return $setting->default;
    }
}

function welding_workshop_sanitize_number_absint( $number, $setting ) {
    // Ensure $number is an absolute integer (whole number, zero or greater).
    $number = absint( $number );

    // If the input is an absolute integer, return it; otherwise, return the default
    return ( $number ? $number : $setting->default );
}
