<?php
if (!defined('STOREMATE_VERSION')) {
    // Replace the version number of the theme on each release.
    define('STOREMATE_VERSION', wp_get_theme()->get('Version'));
}
define('STOREMATE_DEBUG', defined('WP_DEBUG') && WP_DEBUG === true);
define('STOREMATE_DIR', trailingslashit(get_template_directory()));
define('STOREMATE_URL', trailingslashit(get_template_directory_uri()));

if (!function_exists('storemate_support')) :

    /**
     * Sets up theme defaults and registers support for various WordPress features.
     *
     * @since walker_fse 1.0.0
     *
     * @return void
     */
    function storemate_support()
    {
        // Add default posts and comments RSS feed links to head.
        add_theme_support('automatic-feed-links');
        // Add support for block styles.
        add_theme_support('wp-block-styles');
        add_theme_support('post-thumbnails');
        // Enqueue editor styles.
        add_editor_style('style.css');
    }

endif;
add_action('after_setup_theme', 'storemate_support');

/*----------------------------------------------------------------------------------
Enqueue Styles
-----------------------------------------------------------------------------------*/
if (!function_exists('storemate_styles')) :
    function storemate_styles()
    {
        // registering style for theme
        wp_enqueue_style('storemate-style', get_stylesheet_uri(), array(), STOREMATE_VERSION);
        wp_enqueue_style('storemate-blocks-style', get_template_directory_uri() . '/assets/css/blocks.css');
        wp_enqueue_style('storemate-aos-style', get_template_directory_uri() . '/assets/css/aos.css');
        if (is_rtl()) {
            wp_enqueue_style('storemate-rtl-css', get_template_directory_uri() . '/assets/css/rtl.css', 'rtl_css');
        }
        wp_enqueue_script('jquery');
        wp_enqueue_script('storemate-aos-scripts', get_template_directory_uri() . '/assets/js/aos.js', array(), STOREMATE_VERSION, true);
        wp_enqueue_script('storemate-scripts', get_template_directory_uri() . '/assets/js/storemate-scripts.js', array(), STOREMATE_VERSION, true);
    }
endif;

add_action('wp_enqueue_scripts', 'storemate_styles');

/**
 * Enqueue scripts for admin area
 */
function storemate_admin_style()
{
    $hello_notice_current_screen = get_current_screen();
    if (!empty($_GET['page']) && 'about-storemate' === $_GET['page'] || $hello_notice_current_screen->id === 'themes' || $hello_notice_current_screen->id === 'dashboard') {
        wp_enqueue_style('storemate-admin-style', get_template_directory_uri() . '/assets/css/admin-style.css', array(), STOREMATE_VERSION, 'all');
        wp_enqueue_script('storemate-admin-scripts', get_template_directory_uri() . '/assets/js/storemate-admin-scripts.js', array(), STOREMATE_VERSION, true);
        wp_localize_script('storemate-admin-scripts', 'storemate_admin_localize', array(
            'ajax_url' => admin_url('admin-ajax.php'),
            'nonce' => wp_create_nonce('storemate_admin_nonce')
        ));
        wp_enqueue_script('storemate-welcome-notice', get_template_directory_uri() . '/inc/admin/js/storemate-welcome-notice.js', array('jquery'), STOREMATE_VERSION, true);
        wp_localize_script('storemate-welcome-notice', 'storemate_localize', array(
            'ajax_url' => admin_url('admin-ajax.php'),
            'nonce' => wp_create_nonce('storemate_welcome_nonce'),
            'redirect_url' => admin_url('themes.php?page=_cozy_companions')
        ));
    }
}
add_action('admin_enqueue_scripts', 'storemate_admin_style');

/**
 * Enqueue assets scripts for both backend and frontend
 */
function storemate_block_assets()
{
    wp_enqueue_style('storemate-blocks-style', get_template_directory_uri() . '/assets/css/blocks.css');
}
add_action('enqueue_block_assets', 'storemate_block_assets');

/**
 * Load core file.
 */
require_once get_template_directory() . '/inc/core/init.php';

/**
 * Load welcome page file.
 */
require_once get_template_directory() . '/inc/admin/welcome-notice.php';

if (!function_exists('storemate_excerpt_more_postfix')) {
    function storemate_excerpt_more_postfix($more)
    {
        if (is_admin()) {
            return $more;
        }
        return '...';
    }
    add_filter('excerpt_more', 'storemate_excerpt_more_postfix');
}
function storemate_add_woocommerce_support()
{
    add_theme_support('woocommerce');
}
add_action('after_setup_theme', 'storemate_add_woocommerce_support');
