<div class="theme-offer">
<?php

    function creamy_bakery_create_customizer_nav_menu() {
        // ------- Create Nav Menu --------
        $creamy_bakery_menuname = 'Primary';
        $creamy_bakery_menulocation = 'primary';
        $creamy_bakery_menu_exists = wp_get_nav_menu_object($creamy_bakery_menuname);

        if (!$creamy_bakery_menu_exists) {
            $creamy_bakery_menu_id = wp_create_nav_menu($creamy_bakery_menuname);

            wp_update_nav_menu_item($creamy_bakery_menu_id, 0, array(
                'menu-item-title' => __('Home', 'creamy-bakery'),
                'menu-item-url' => home_url('/'),
                'menu-item-status' => 'publish',
            ));

            wp_update_nav_menu_item($creamy_bakery_menu_id, 0, array(
                'menu-item-title' => __('About Us', 'creamy-bakery'),
                'menu-item-url' => home_url('/index.php/about-us/'),
                'menu-item-status' => 'publish',
            ));

            wp_update_nav_menu_item($creamy_bakery_menu_id, 0, array(
                'menu-item-title' => __('Services', 'creamy-bakery'),
                'menu-item-url' => home_url('/index.php/services/'),
                'menu-item-status' => 'publish',
            ));

            wp_update_nav_menu_item($creamy_bakery_menu_id, 0, array(
                'menu-item-title' => __('Pages', 'creamy-bakery'),
                'menu-item-url' => home_url('/index.php/pages/'),
                'menu-item-status' => 'publish',
            ));

            wp_update_nav_menu_item($creamy_bakery_menu_id, 0, array(
                'menu-item-title' => __('Blog', 'creamy-bakery'),
                'menu-item-url' => home_url('/index.php/blog/'),
                'menu-item-status' => 'publish',
            ));

            // Set menu to location
            $creamy_bakery_locations = get_theme_mod('nav_menu_locations');
            if (!is_array($creamy_bakery_locations)) {
                $creamy_bakery_locations = array();
            }
            $creamy_bakery_locations[$creamy_bakery_menulocation] = $creamy_bakery_menu_id;
            set_theme_mod('nav_menu_locations', $creamy_bakery_locations);
        }
    }

    // POST and update the customizer and other related data of Creamy Bakery
    if (isset($_POST['submit'])) {

        // -------- Plugin Installation and Activation (WooCommerce & Classic Widgets) -------- //
        include_once(ABSPATH . 'wp-admin/includes/plugin.php');
        include_once(ABSPATH . 'wp-admin/includes/plugin-install.php');
        include_once(ABSPATH . 'wp-admin/includes/class-wp-upgrader.php');
        include_once(ABSPATH . 'wp-admin/includes/file.php');
        include_once(ABSPATH . 'wp-admin/includes/misc.php');

        // Plugin list
        $creamy_bakery_plugins = array(
            array(
                'slug' => 'woocommerce',
                'file' => 'woocommerce/woocommerce.php',
                'download_url' => 'https://downloads.wordpress.org/plugin/woocommerce.zip'
            ),
            array(
                'slug' => 'classic-widgets',
                'file' => 'classic-widgets/classic-widgets.php',
                'download_url' => 'https://downloads.wordpress.org/plugin/classic-widgets.zip'
            )
        );

        foreach ($creamy_bakery_plugins as $plugin) {
            $installed_plugins = get_plugins();

            // Install the plugin if it's not installed
            if (!isset($installed_plugins[$plugin['file']])) {
                $upgrader = new Plugin_Upgrader();
                $upgrader->install($plugin['download_url']);
            }

            // Activate the plugin if it's not active
            if (file_exists(WP_PLUGIN_DIR . '/' . $plugin['file']) && !is_plugin_active($plugin['file'])) {
                activate_plugin($plugin['file']);
            }
        }

        // ------- Create Menu --------
        creamy_bakery_create_customizer_nav_menu();

        // ------- Create Pages --------
        function create_demo_page($title, $content = '', $template = '') {
            $page_id = creamy_bakery_get_page_id_by_title($title);
        
            if (!$page_id) {
                $page_data = array(
                    'post_type'    => 'page',
                    'post_title'   => $title,
                    'post_content' => $content,
                    'post_status'  => 'publish',
                    'post_author'  => 1,
                );
        
                $page_id = wp_insert_post($page_data);
        
                if ($template && !is_wp_error($page_id)) {
                    update_post_meta($page_id, '_wp_page_template', $template);
                }
            }
        
            return $page_id;
        }
        

        $creamy_bakery_home_id = create_demo_page('Home', '', 'home/home.php');
        update_option('page_on_front', $creamy_bakery_home_id);
        update_option('show_on_front', 'page');

        create_demo_page('Pages', '<p>Lorem Ipsum ...</p>');
        create_demo_page('About Us', '<p>Lorem Ipsum ...</p>');
        create_demo_page('Services', '<p>Service description...</p>');

        // Create blog page and assign it to display posts
        $blog_page_id = create_demo_page('Blog');
        update_option('page_for_posts', $blog_page_id);

        // Create the nav menu
        creamy_bakery_create_customizer_nav_menu();

        // ------- Set Theme Mods --------
        set_theme_mod('creamy_bakery_topbar_phone_number', '1(868) 225-6155 ');
        set_theme_mod('creamy_bakery_topbar_email_id', 'admin@example.com');
        set_theme_mod('creamy_bakery_topbar_reserve_button_link', '#');

        set_theme_mod('creamy_bakery_social_media1_heading', 'www.facebook.com');
        set_theme_mod('creamy_bakery_social_media2_heading', 'www.instagram.com');
        set_theme_mod('creamy_bakery_social_media3_heading', 'www.twitter.com');
        set_theme_mod('creamy_bakery_social_media4_heading', 'www.youtube.com');
        set_theme_mod('creamy_bakery_social_media5_heading', 'https://www.pinterest.com/');
        set_theme_mod('creamy_bakery_social_media6_heading', 'https://www.linkedin.com/');

        // ------- Banner Section --------
        
        set_theme_mod("creamy_bakery_banner_image", get_template_directory_uri() . "/img/banner.png");
        set_theme_mod("creamy_bakery_banner_small_head", 'THE UNIQUE');
        set_theme_mod("creamy_bakery_banner_heading", 'Golden Crust');
        set_theme_mod("creamy_bakery_banner_text", 'Lorem ipsum dolor sit amet, tetur piscing elit. Suspendisse smod congue bibendum.');
        set_theme_mod("creamy_bakery_banner_button_link", '#');
        set_theme_mod("creamy_bakery_banner_right_image1", get_template_directory_uri() . "/img/slide1.jpg");
        set_theme_mod("creamy_bakery_banner_right_image2", get_template_directory_uri() . "/img/slide2.jpg");
        set_theme_mod("creamy_bakery_banner_right_image3", get_template_directory_uri() . "/img/slide3.jpg");
        set_theme_mod("creamy_bakery_banner_right_image4", get_template_directory_uri() . "/img/slide4.jpg");
        // ------- PRODUCT Section -------

        set_theme_mod('creamy_bakery_product_section_bg_image', get_template_directory_uri() . '/img/product-bg.png');
        set_theme_mod('creamy_bakery_product_main_heading', 'Cake');
        set_theme_mod('creamy_bakery_product_main_text', 'Lorem ipsum dolor sit amet, tetur piscing elit. Suspendisse smod congue bibendum. Lorem ipsum dolor sit amet');
        set_theme_mod('creamy_bakery_product_left_image', get_template_directory_uri() . '/img/product-left.jpg');

        set_theme_mod( 'creamy_bakery_product_count', '3' );
        $creamy_bakery_product_category = wp_create_category('cake-product'); 
        set_theme_mod('creamy_bakery_product_category', get_cat_name($creamy_bakery_product_category));

        wp_insert_term(
        'cake-product', // the term
        'product_cat', // the taxonomy
        array(
        'description'=> '',
        'slug' => 'cake-product',
        'term_id'=>12,
        'term_taxonomy_id'=>34,
        ));

        $creamy_bakery_product_title = array('Pecan Pie', 'Croissants','Tiramisu');

        if ( class_exists( 'WooCommerce' ) ) {
        for($i=1;$i<=3;$i++) {
            $title = $creamy_bakery_product_title[$i - 1];
            $content = 'Lorem ipsum dolor sit amet, tetur piscing elit. Suspendisse smod congue bibendum.';

            // Create post object
            $creamy_bakery_post = array(
            'post_title'    => wp_strip_all_tags( $title ),
            'post_content'  => $content,
            'post_status'   => 'publish',
            'post_type'     => 'product',
            'product_cat'   => array($creamy_bakery_product_category)
            );

            // Insert the post into the database
            $creamy_bakery_product_id = wp_insert_post( $creamy_bakery_post );


            // Gets term object from Tree in the database.
            $term = get_term_by('name', 'cake-product', 'product_cat');
            wp_set_object_terms($creamy_bakery_product_id, $term->term_id, 'product_cat');

            update_post_meta( $creamy_bakery_product_id, '_price', '$42' );
            update_post_meta( $creamy_bakery_product_id, '_sale_price', "$42" );
            update_post_meta( $creamy_bakery_product_id, '_regular_price', "$42" );

            $creamy_bakery_product_image_url = get_template_directory_uri().'/img/prod'.$i.'.png';

            $creamy_bakery_product_image_name = 'prod'.$i.'.png';
            $creamy_bakery_product_upload_dir       = wp_upload_dir(); 
            // Set upload folder
            $creamy_bakery_product_image_data       = file_get_contents($creamy_bakery_product_image_url); 
            
            // Get image data
            $creamy_bakery_product_unique_file_name = wp_unique_filename( $creamy_bakery_product_upload_dir['path'], $creamy_bakery_product_image_name ); 
            // Generate unique name
            $filename= basename( $creamy_bakery_product_unique_file_name ); 
            // Create image file name
            // Check folder permission and define file location
            if( wp_mkdir_p( $creamy_bakery_product_upload_dir['path'] ) ) {
                $file = $creamy_bakery_product_upload_dir['path'] . '/' . $filename;
            } else {
                $file = $creamy_bakery_product_upload_dir['basedir'] . '/' . $filename;
            }
            
            // Create the image  file on the server
            if ( ! function_exists( 'WP_Filesystem' ) ) {
                require_once( ABSPATH . 'wp-admin/includes/file.php' );
            }
            
            WP_Filesystem();
            global $wp_filesystem;
            
            if ( ! $wp_filesystem->put_contents( $file, $creamy_bakery_product_image_data, FS_CHMOD_FILE ) ) {
                wp_die( 'Error saving file!' );
            }

            $wp_filetype = wp_check_filetype( $filename, null );
            $creamy_bakery_product_attachment = array(
                'post_mime_type' => $wp_filetype['type'],
                'post_title'     => sanitize_file_name( $filename ),
                'post_content'   => '',
                'post_type'     => 'product',
                'post_status'    => 'inherit'
            );
            $attach_id = wp_insert_attachment( $creamy_bakery_product_attachment, $file, $creamy_bakery_product_id );
            require_once(ABSPATH . 'wp-admin/includes/image.php');
            $attach_data = wp_generate_attachment_metadata( $attach_id, $file );
            wp_update_attachment_metadata( $attach_id, $attach_data );
            set_post_thumbnail( $creamy_bakery_product_id, $attach_id );
            }
        }

        echo '<div class="success">Demo Import Successful</div>';
    }
?>

<ul>
    <li>
        <hr>
        <?php if (!isset($_POST['submit'])) : ?>
            <?php echo esc_html__('Click on the below button to get demo content installed.', 'creamy-bakery'); ?>
            <br>
            <form id="demo-importer-form" action="" method="POST" onsubmit="return confirm('Do you really want to do this?');">
                <input class="run-btn" type="submit" name="submit" value="<?php echo esc_attr('Run Importer', 'creamy-bakery'); ?>">
            </form>
        <?php else: ?>
            <div class="visit">
                <a href="<?php echo esc_url(home_url()); ?>" class="button button-primary button-large run-btn" style="margin-top: 10px;" target="_blank">View Site</a>
            </div>
        <?php endif; ?>
        <hr>
    </li>
</ul>
</div>