<?php
/**
 * IT Software Technology functions and definitions
 *
 * @link https://developer.wordpress.org/themes/basics/theme-functions/
 *
 * @package IT Software Technology
 */

if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_VERSION' ) ) {
	// Replace the version number of the theme on each release.
	define( 'IT_SOFTWARE_TECHNOLOGY_VERSION', wp_get_theme()->get( 'Version' ) );
}

if ( ! function_exists( 'it_software_technology_setup' ) ) :
	/**
	 * Sets up theme defaults and registers support for various WordPress features.
	 *
	 * Note that this function is hooked into the after_setup_theme hook, which
	 * runs before the init hook. The init hook is too late for some features, such
	 * as indicating support for post thumbnails.
	 */
	function it_software_technology_setup() {

		load_theme_textdomain( 'it-software-technology', get_template_directory() . '/languages' );

		// Add default posts and comments RSS feed links to head.
		add_theme_support( 'automatic-feed-links' );

		add_theme_support( 'align-wide' );

		add_theme_support( 'woocommerce' );

		// Add support for block styles.
		add_theme_support( 'wp-block-styles' );

		// Enqueue editor styles.
		add_editor_style( 'style.css' );

		// Add support for core custom logo.
		add_theme_support(
			'custom-logo',
			array(
				'height'      => 192,
				'width'       => 192,
				'flex-width'  => true,
				'flex-height' => true,
			)
		);

		// Experimental support for adding blocks inside nav menus
		add_theme_support( 'block-nav-menus' );

		// Add support for experimental link color control.
		add_theme_support( 'experimental-link-color' );

	}
endif;
add_action( 'after_setup_theme', 'it_software_technology_setup' );

function it_software_technology_scripts() {
    wp_enqueue_style('it-software-technology-style', get_stylesheet_uri(), array() );
    wp_enqueue_script('jquery-wow', get_template_directory_uri() . '/js/wow.js', array('jquery'), IT_SOFTWARE_TECHNOLOGY_VERSION );
    wp_enqueue_style('animate-css', get_template_directory_uri() . '/css/animate.css', array(), IT_SOFTWARE_TECHNOLOGY_VERSION );

    //font-awesome
    wp_enqueue_style( 'fontawesome', get_template_directory_uri() . '/font-awesome/css/all.css', array(), '6.7.0' );

    wp_enqueue_style( 'owl.carousel-style', get_template_directory_uri().'/css/owl.carousel.css', array(), IT_SOFTWARE_TECHNOLOGY_VERSION );
    
    wp_enqueue_script( 
        'owl-carousel',
        get_template_directory_uri() . '/js/owl.carousel.js', 
        array('jquery'), 
        IT_SOFTWARE_TECHNOLOGY_VERSION,
        true 
    );

    // Custom scripts should depend on Owl Carousel and jQuery
    wp_enqueue_script(
        'it-software-technology-custom-scripts', 
        get_template_directory_uri() . '/js/custom.js', 
        array('jquery', 'owl-carousel'), // Add owl-carousel dependency
        IT_SOFTWARE_TECHNOLOGY_VERSION, // Consistent versioning
        true 
    );
    
    wp_style_add_data( 'it-software-technology-style', 'rtl', 'replace' );
}
add_action( 'wp_enqueue_scripts', 'it_software_technology_scripts' );

/**
 * Enqueue block editor style
 */
function it_software_technology_block_editor_styles() {

	wp_enqueue_style( 'it-software-technology-block-patterns-style-editor', get_theme_file_uri( '/css/block-editor.css' ), false, '1.0', 'all' );
}
add_action( 'enqueue_block_editor_assets', 'it_software_technology_block_editor_styles' );


function it_software_technology_init_setup() {

	require_once get_theme_file_path( '/inc/customizer.php' );

	// Add block patterns
	require get_template_directory() . '/inc/block-patterns.php';

	/**
     * Demo Import
     */
    require get_parent_theme_file_path( '/inc/get-started/demo-import-settings.php' );

    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_FREE_THEME_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_FREE_THEME_URL', 'https://www.seothemesexpert.com/products/it-software-technology-theme' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_PRO_THEME_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_PRO_THEME_URL', 'https://www.seothemesexpert.com/products/technology-wordpress-theme' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_FREE_DOC_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_FREE_DOC_URL', 'https://demo.seothemesexpert.com/documentation/it-software-technology-free/' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_DEMO_THEME_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_DEMO_THEME_URL', 'https://demo.seothemesexpert.com/it-software-technology-pro/' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_RATE_THEME_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_RATE_THEME_URL', 'https://wordpress.org/support/theme/it-software-technology/reviews/' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_SUPPORT_THEME_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_SUPPORT_THEME_URL', 'https://wordpress.org/support/theme/it-software-technology/' );
    }
    if ( ! defined( 'IT_SOFTWARE_TECHNOLOGY_THEME_BUNDLE_URL' ) ) {
        define( 'IT_SOFTWARE_TECHNOLOGY_THEME_BUNDLE_URL', 'https://www.seothemesexpert.com/products/wordpress-theme-bundle' );
    }
}
add_action( 'after_setup_theme', 'it_software_technology_init_setup' );


// Show Admin Notice
function it_software_technology_promo_notice() {
    if (get_option('it_software_technology_notice_dismissed')) {
        return;
    }

    if (isset($_GET['page']) && $_GET['page'] === 'itsoftwaretechnology-wizard') {
        return;
    }

    $it_software_technology_theme = wp_get_theme();
    $it_software_technology_theme_title = $it_software_technology_theme->get( 'Name' );
    $it_software_technology_theme_version = $it_software_technology_theme->get( 'Version' );

    ?>
    <div class="notice it-software-technology-notice is-dismissible">
        <div>
            <h3>
                <span><?php echo esc_html( '(Version: ' . $it_software_technology_theme_version . ')' ); ?></span><br>
                <?php esc_html_e( 'Thank you for choosing,', 'it-software-technology'); ?>
                <?php echo esc_html( $it_software_technology_theme_title ); ?> <?php esc_html_e( '!!!', 'it-software-technology'); ?>
            </h3>
            <p><?php esc_html_e( 'Welcome! You can now easily start building your website using our beautiful and user-friendly themes. No need to worry about setup — with our one-click demo importer, your site can look just like the demo in minutes. All the tools and information you need to get started are right here!', 'it-software-technology'); ?></p>
            <a class="button button-primary it-software-technology-buy-now" href="<?php echo esc_url(admin_url('themes.php?page=itsoftwaretechnology-wizard')); ?>" target="_blank">
                <?php esc_html_e( 'Get Started', 'it-software-technology') ?>
            </a>
            <a class="button button-primary it-software-technology-bundle-button" target="_blank" href="<?php echo esc_url( IT_SOFTWARE_TECHNOLOGY_THEME_BUNDLE_URL ); ?>">
                <?php echo esc_html__( 'Get All 60+ Themes @ $79', 'it-software-technology' ); ?>
            </a>
        </div>
        <div class="it-software-technology-image-wrap">
            <img src="<?php echo esc_url(get_stylesheet_directory_uri() . '/screenshot.png'); ?>">
        </div>
        <canvas id="it-software-technology-notice-confetti"></canvas>
    </div>
    <?php
}
add_action('admin_notices', 'it_software_technology_promo_notice');

add_action('wp_ajax_it_software_technology_dismiss_notice', 'it_software_technology_dismiss_notice');
function it_software_technology_dismiss_notice() {
    update_option('it_software_technology_notice_dismissed', true);
    wp_send_json_success();
}

add_action('after_switch_theme', 'it_software_technology_reset_notice_on_activation');
function it_software_technology_reset_notice_on_activation() {
    delete_option('it_software_technology_notice_dismissed');
}

function it_software_technology_enqueue_admin_assets() {
    wp_enqueue_script(
        'it-software-technology-confetti',
        get_template_directory_uri() . '/inc/get-started/assets/js/confetti/confetti.min.js',
        ['jquery'],
        null,
        true
    );

    wp_enqueue_script(
        'it-software-technology-notice-confetti-js',
        get_template_directory_uri() . '/inc/get-started/assets/js/plugin-update-notice.js',
        ['it-software-technology-confetti'],
        null,
        true
    );

    wp_enqueue_script(
        'it-software-technology-notice-dismiss',
        get_template_directory_uri() . '/inc/get-started/assets/js/notice-dismiss.js',
        ['jquery'],
        null,
        true
    );
}
add_action('admin_enqueue_scripts', 'it_software_technology_enqueue_admin_assets');