<?php
/**
 * Organic Online Shop functions and definitions
 *
 * @link https://developer.wordpress.org/themes/basics/theme-functions/
 *
 * @package Organic Online Shop
 */

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

if ( ! function_exists( 'organic_online_shop_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 organic_online_shop_setup() {

		load_theme_textdomain( 'organic-online-shop', 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', 'organic_online_shop_setup' );

function organic_online_shop_scripts() {
    wp_enqueue_style('organic-online-shop-style', get_stylesheet_uri(), array() );
    wp_enqueue_script('jquery-wow', get_template_directory_uri() . '/js/wow.js', array('jquery'), ORGANIC_ONLINE_SHOP_VERSION );
    wp_enqueue_style('animate-css', get_template_directory_uri() . '/css/animate.css', array(), ORGANIC_ONLINE_SHOP_VERSION );

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

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

    // Custom scripts should depend 
    wp_enqueue_script(
        'organic-online-shop-custom-scripts', 
        get_template_directory_uri() . '/js/custom.js', 
        array('jquery',), 
        ORGANIC_ONLINE_SHOP_VERSION, // Consistent versioning
        true 
    );
    
    wp_style_add_data( 'organic-online-shop-style', 'rtl', 'replace' );
}
add_action( 'wp_enqueue_scripts', 'organic_online_shop_scripts' );

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

	wp_enqueue_style( 'organic-online-shop-block-patterns-style-editor', get_theme_file_uri( '/css/block-editor.css' ), false, '1.0', 'all' );
}
add_action( 'enqueue_block_editor_assets', 'organic_online_shop_block_editor_styles' );


function organic_online_shop_init_setup() {

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

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

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

    if ( ! defined( 'ORGANIC_ONLINE_SHOP_FREE_THEME_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_FREE_THEME_URL', 'https://www.seothemesexpert.com/products/organic-online-shop' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_PRO_THEME_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_PRO_THEME_URL', 'https://www.seothemesexpert.com/products/organic-wordpress-theme' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_FREE_DOC_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_FREE_DOC_URL', 'https://demo.seothemesexpert.com/documentation/organic-online-shop-free/' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_DEMO_THEME_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_DEMO_THEME_URL', 'https://demo.seothemesexpert.com/organic-online-shop/' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_RATE_THEME_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_RATE_THEME_URL', 'https://wordpress.org/support/theme/organic-online-shop/reviews/' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_SUPPORT_THEME_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_SUPPORT_THEME_URL', 'https://wordpress.org/support/theme/organic-online-shop/' );
    }
    if ( ! defined( 'ORGANIC_ONLINE_SHOP_THEME_BUNDLE_URL' ) ) {
        define( 'ORGANIC_ONLINE_SHOP_THEME_BUNDLE_URL', 'https://www.seothemesexpert.com/products/wordpress-theme-bundle' );
    }
}
add_action( 'after_setup_theme', 'organic_online_shop_init_setup' );


// Show Admin Notice
function organic_online_shop_promo_notice() {
    if (get_option('organic_online_shop_notice_dismissed')) {
        return;
    }

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

    $organic_online_shop_theme = wp_get_theme();
    $organic_online_shop_theme_title = $organic_online_shop_theme->get( 'Name' );
    $organic_online_shop_theme_version = $organic_online_shop_theme->get( 'Version' );

    ?>
    <div class="notice organic-online-shop-notice is-dismissible">
        <div>
            <h3>
                <span><?php echo esc_html( '(Version: ' . $organic_online_shop_theme_version . ')' ); ?></span><br>
                <?php esc_html_e( 'Thank you for choosing,', 'organic-online-shop'); ?>
                <?php echo esc_html( $organic_online_shop_theme_title ); ?> <?php esc_html_e( '!!!', 'organic-online-shop'); ?>
            </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!', 'organic-online-shop'); ?></p>
            <a class="button button-primary organic-online-shop-buy-now" href="<?php echo esc_url(admin_url('themes.php?page=organiconlineshop-wizard')); ?>" target="_blank">
                <?php esc_html_e( 'Get Started', 'organic-online-shop') ?>
            </a>
            <a class="button button-primary organic-online-shop-bundle-button" target="_blank" href="<?php echo esc_url( ORGANIC_ONLINE_SHOP_THEME_BUNDLE_URL ); ?>">
                <?php echo esc_html__( 'Get All 60+ Themes @ $79', 'organic-online-shop' ); ?>
            </a>
        </div>
        <div class="organic-online-shop-image-wrap">
            <img src="<?php echo esc_url(get_stylesheet_directory_uri() . '/screenshot.png'); ?>">
        </div>
        <canvas id="organic-online-shop-notice-confetti"></canvas>
    </div>
    <?php
}
add_action('admin_notices', 'organic_online_shop_promo_notice');

add_action('wp_ajax_organic_online_shop_dismiss_notice', 'organic_online_shop_dismiss_notice');
function organic_online_shop_dismiss_notice() {
    update_option('organic_online_shop_notice_dismissed', true);
    wp_send_json_success();
}

add_action('after_switch_theme', 'organic_online_shop_reset_notice_on_activation');
function organic_online_shop_reset_notice_on_activation() {
    delete_option('organic_online_shop_notice_dismissed');
}

function organic_online_shop_enqueue_admin_assets() {
    wp_enqueue_script(
        'organic-online-shop-confetti',
        get_template_directory_uri() . '/inc/get-started/assets/js/confetti/confetti.min.js',
        ['jquery'],
        null,
        true
    );

    wp_enqueue_script(
        'organic-online-shop-notice-confetti-js',
        get_template_directory_uri() . '/inc/get-started/assets/js/plugin-update-notice.js',
        ['organic-online-shop-confetti'],
        null,
        true
    );

    wp_enqueue_script(
        'organic-online-shop-notice-dismiss',
        get_template_directory_uri() . '/inc/get-started/assets/js/notice-dismiss.js',
        ['jquery'],
        null,
        true
    );
}
add_action('admin_enqueue_scripts', 'organic_online_shop_enqueue_admin_assets');