<?php
/**
 * Titan Notice Handler
 */

defined( 'ABSPATH' ) || exit;

define('BRIDAL_STORE_PREMIUM_DOCUMENTATION',__('https://preview.titanthemes.net/documentation/bridal-store-pro/','bridal-store'));
define('BRIDAL_STORE_SUPPORT',__('https://wordpress.org/support/theme/bridal-store/','bridal-store'));
define('BRIDAL_STORE_REVIEW',__('https://wordpress.org/support/theme/bridal-store/reviews/#new-post','bridal-store'));
define('BRIDAL_STORE_BUY_NOW',__('https://www.titanthemes.net/products/bridal-store-wordpress-theme','bridal-store'));
define('BRIDAL_STORE_DOC_URL',__('https://preview.titanthemes.net/documentation/bridal-store-lite/','bridal-store'));
define('BRIDAL_STORE_LIVE_DEMO',__('https://preview.titanthemes.net/bridal-store/','bridal-store'));
define('BRIDAL_STORE_BUNDLE',__('https://www.titanthemes.net/products/wordpress-theme-bundle','bridal-store'));

/**
 * Admin Hook
 */
function bridal_store_admin_menu_page() {
    $bridal_store_theme = wp_get_theme( get_template() );

    add_theme_page(
        $bridal_store_theme->display( 'Name' ),
        $bridal_store_theme->display( 'Name' ),
        'manage_options',
        'bridal-store',
        'bridal_store_do_admin_page'
    );
}
add_action( 'admin_menu', 'bridal_store_admin_menu_page' );

/**
 * Enqueue getting started styles and scripts
 */
function titan_widgets_backend_enqueue() {
    wp_enqueue_style(
        'titan-getting-started',
        get_template_directory_uri() . '/about-theme/about-theme.css'
    );

    // Enqueue your admin notice JS
    wp_enqueue_script(
        'titan-admin-notice',
        get_template_directory_uri() . '/about-theme/admin-notice-script.js',
        array('jquery'), // dependencies
        '1.0',
        true
    );

    // Pass PHP data to JS
    wp_localize_script(
        'titan-admin-notice',
        'bridal_store',
        array(
            'ajax_url' => admin_url('admin-ajax.php'),
            'nonce'    => wp_create_nonce('bridal_store_nonce'),
        )
    );
}
add_action( 'admin_enqueue_scripts', 'titan_widgets_backend_enqueue' );


/**
 * Class Titan_Notice_Handler
 */
class Titan_Notice_Handler {

    public static $nonce;

    /**
     * Empty Constructor
     */
    public function __construct() {
        // Activation notice
        add_action( 'switch_theme', array( $this, 'flush_dismiss_status' ) );
        add_action( 'admin_init', array( $this, 'getting_started_notice_dismissed' ) );
        add_action( 'admin_notices', array( $this, 'titan_theme_info_welcome_admin_notice' ), 3 );
        add_action( 'wp_ajax_bridal_store_dismissable_notice', array( $this, 'ajax_dismiss_notice' ) );
        add_action( 'wp_ajax_titan_getting_started', array( $this, 'titan_getting_started' ) );
    }

    /**
     * Display an admin notice linking to the about page
     */
    public function titan_theme_info_welcome_admin_notice() {
        $current_screen = get_current_screen();
        $bridal_store_theme = wp_get_theme();

        if ( is_admin() && ! get_user_meta( get_current_user_id(), 'gs_notice_dismissed' ) && $current_screen->base !== 'appearance_page_bridal-store' ) {
            echo '<div class="updated notice notice-success is-dismissible notice-get-started-class admin-notice" data-notice="getting_started_notice">';
            echo '<div class="admin-notice-content">';
            echo '<p><strong>' . sprintf( esc_html__( 'Welcome! Thank you for choosing %1$s.', 'bridal-store' ), esc_html( $bridal_store_theme->get( 'Name' ) ) ) . '</strong></p>';
            echo '<p class="plugin-notice">' . esc_html__( 'Thank you for choosing this theme. Use the Get Started guide to quickly set up and personalize your website.', 'bridal-store' ) . '</p>';
            echo '<div class="titan-buttons">';
            echo '<p><a href="' . esc_url( admin_url( 'themes.php?page=bridal-store' ) ) . '" class="titan-install-plugins button button-primary">' . sprintf( esc_html__( 'Get started with %s', 'bridal-store' ), esc_html( $bridal_store_theme->get( 'Name' ) ) ) . '</a></p>';
            echo '<p><a href="' . esc_url( BRIDAL_STORE_BUY_NOW ) . '" class="button button-secondary" target="_blank">' . esc_html__( 'GO FOR PREMIUM', 'bridal-store' ) . '</a></p>';
            echo '<p><a href="' . esc_url( BRIDAL_STORE_BUNDLE ) . '" class="button button-bundle" target="_blank">' . esc_html__( 'GET BUNDLE', 'bridal-store' ) . '</a></p>';
            echo '</div>';
            echo '</div>';
            echo '<div class="admin-notice-image">';
            echo '<img class="notice_img" width="100%" src="' . esc_url( get_template_directory_uri() . '/assets/images/notice.png' ) . '">';
            echo '</div>';
            echo '<a href="#" class="getting-started-notice-dismiss">Dismiss</a>';
            echo '</div>';
        }
    }

    public function getting_started_notice_dismissed() {
        if ( isset( $_GET['gs-notice-dismissed'] ) ) {
            add_user_meta( get_current_user_id(), 'gs_notice_dismissed', 'true' );
        }
    }

    public function flush_dismiss_status() {
        delete_user_meta( get_current_user_id(), 'gs_notice_dismissed' );
    }

    public function ajax_dismiss_notice() {
        if ( isset( $_POST['type'] ) && $_POST['type'] === 'getting_started_notice' ) {
            add_user_meta( get_current_user_id(), 'gs_notice_dismissed', 'true' );
        }
        wp_die();
    }

}

new Titan_Notice_Handler();


/**
 * Render admin page.
 *
 * @since 1.0.0
 */
function bridal_store_do_admin_page() { 
    $bridal_store_theme = wp_get_theme(); ?>
    <div class="bridal-store-themeinfo-page--wrapper">
        <div class="free&pro">
            <div id="bridal-store-admin-about-page-1">
                <div class="theme-detail">
                   <div class="bridal-store-admin-card-header-1">
                    <div class="bridal-store-header-left">
                        <h2>
                            <?php echo esc_html( $bridal_store_theme->Name ); ?> <span><?php echo esc_html($bridal_store_theme['Version']);?></span>
                        </h2>
                        <p>
                            <?php
                            echo wp_kses_post( apply_filters( 'titan_theme_description', esc_html( $bridal_store_theme->get( 'Description' ) ) ) );
                        ?>
                        </p>
                    </div>
                    <div class="bridal-store-header-right">
                        <div class="bridal-store-pro-button">
                            <a href="<?php echo esc_url( BRIDAL_STORE_BUY_NOW ); ?>" class="bridal-store-button button-primary" target="_blank" rel="noreferrer">
                                <?php esc_html_e( 'UPGRADE TO PREMIUM', 'bridal-store' ); ?>
                            </a>
                        </div>
                    </div>
                </div>   
                </div>   
                <div class="bridal-store-features">
                    <div class="bridal-store-features-box">
                        <h3><?php esc_html_e( 'PREMIUM DEMONSTRATION', 'bridal-store' ); ?></h3>
                        <p><?php esc_html_e( 'Effortlessly create and customize your website by arranging text, images, and other elements using the Gutenberg editor, making web design easy and accessible for all skill levels.', 'bridal-store' ); ?></p>
                        <a href="<?php echo esc_url( BRIDAL_STORE_LIVE_DEMO ); ?>" class="bridal-store-button button-secondary-1" target="_blank" rel="noreferrer">
                                <?php esc_html_e( 'DEMONSTRATION', 'bridal-store' ); ?>
                            </a>
                    </div>
                    <div class="bridal-store-features-box">
                        <h3><?php esc_html_e( 'REVIEWS', 'bridal-store' ); ?></h3>
                        <p><?php esc_html_e( 'We would be happy to hear your thoughts and value your evaluation.', 'bridal-store' ); ?></p>
                        <a href="<?php echo esc_url( BRIDAL_STORE_REVIEW ); ?>" class="bridal-store-button button-secondary-1" target="_blank" rel="noreferrer">
                                <?php esc_html_e( 'REVIEWS', 'bridal-store' ); ?>
                            </a>
                    </div>
                    <div class="bridal-store-features-box">
                        <h3><?php esc_html_e( '24/7 SUPPORT', 'bridal-store' ); ?></h3>
                        <p><?php esc_html_e( 'Please do not hesitate to contact us at support if you need help installing our lite theme. We are prepared to assist you!', 'bridal-store' ); ?></p>
                        <a href="<?php echo esc_url( BRIDAL_STORE_SUPPORT ); ?>" class="bridal-store-button button-secondary-1" target="_blank" rel="noreferrer">
                            <?php esc_html_e( 'SUPPORT', 'bridal-store' ); ?>
                        </a>
                    </div>
                    <div class="bridal-store-features-box">
                        <h3><?php esc_html_e( 'THEME INSTRUCTION', 'bridal-store' ); ?></h3>
                        <p><?php esc_html_e( 'If you need assistance configuring and setting up the theme, our tutorial is available. A fast and simple method for setting up the theme.', 'bridal-store' ); ?></p>
                        <a href="<?php echo esc_url( BRIDAL_STORE_DOC_URL ); ?>" class="bridal-store-button button-secondary-1" target="_blank" rel="noreferrer">
                                <?php esc_html_e( 'DOCUMENTATION', 'bridal-store' ); ?>
                            </a>
                    </div>
                </div>   
            </div>
            <div id="bridal-store-admin-about-page-2">
                <div class="bridal-store-pro-button bundle">
                    <div class="bundle-content">
                        <h3 class="bundle-head"><?php esc_html_e( 'Get All Themes In Single Pack', 'bridal-store' ); ?></h3>
                        <p class="bundle-para"><?php esc_html_e( 'From customization to optimization, this bundle gives you the flexibility to create stunning websites.', 'bridal-store' ); ?></p>
                        <a href="<?php echo esc_url( BRIDAL_STORE_BUNDLE ); ?>" class="bridal-store-button bundle" target="_blank" rel="noreferrer">
                            <?php esc_html_e( 'BUY THEME BUNDLE', 'bridal-store' ); ?>
                        </a>
                    </div>
                    <div class="bundle-image">
                        <img class="img_bundle" width="100%" src="<?php echo esc_url( get_template_directory_uri() . '/assets/images/bundle.png' ); ?>" alt="<?php esc_attr_e('logo', 'bridal-store'); ?>">
                    </div>
                </div> 
                <div class="theme-detail">
                   <div class="bridal-store-admin-card-header-1">
                        <div class="bridal-store-header-left-pro"> 
                            <h2><?php esc_html_e( 'The premium version of this theme will be available for you to enhance or unlock our premium features.', 'bridal-store' ); ?></h2>
                        </div>
                        <div class="bridal-store-header-right-2">
                            <div class="bridal-store-pro-button">
                                <a href="<?php echo esc_url( BRIDAL_STORE_BUY_NOW ); ?>" class="bridal-store-button button-primary-1 buy-now" target="_blank" rel="noreferrer">
                                    <?php esc_html_e( 'GO TO PREMIUM', 'bridal-store' ); ?>
                                </a>
                            </div>
                            <div class="bridal-store-pro-button">
                                <a href="<?php echo esc_url( BRIDAL_STORE_LIVE_DEMO ); ?>" class="bridal-store-button button-primary-1 pro-demo" target="_blank" rel="noreferrer">
                                    <?php esc_html_e( 'PREMIUM DEMO', 'bridal-store' ); ?>
                                </a>
                            </div>
                            <div class="bridal-store-pro-button">
                                <a href="<?php echo esc_url( BRIDAL_STORE_PREMIUM_DOCUMENTATION ); ?>" class="bridal-store-button button-primary-1 buy-now" target="_blank" rel="noreferrer">
                                    <?php esc_html_e( 'PRO DOCUMENTATION', 'bridal-store' ); ?>
                                </a>
                            </div>  
                        </div>
                    </div>
                    <div class="bridal-store-admin-card-header-2">
                        <img class="img_responsive" style="width: 100%;" src="<?php echo esc_url( $bridal_store_theme->get_screenshot() ); ?>" />
                    </div> 
                </div>    
            </div>
        </div>
    </div>
<?php } ?>