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

    function ticket_booking_create_customizer_nav_menu() {
        // ------- Create Nav Menu --------
        $ticket_booking_menuname = 'Primary';
        $ticket_booking_menulocation = 'primary';
        $ticket_booking_menu_exists = wp_get_nav_menu_object($ticket_booking_menuname);

        if (!$ticket_booking_menu_exists) {
            $ticket_booking_menu_id = wp_create_nav_menu($ticket_booking_menuname);

            wp_update_nav_menu_item($ticket_booking_menu_id, 0, array(
                'menu-item-title' => __('Home', 'ticket-booking'),
                'menu-item-url' => home_url('/'),
                'menu-item-status' => 'publish',
            ));

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

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

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

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

            // Set menu to location
            $ticket_booking_locations = get_theme_mod('nav_menu_locations');
            if (!is_array($ticket_booking_locations)) {
                $ticket_booking_locations = array();
            }
            $ticket_booking_locations[$ticket_booking_menulocation] = $ticket_booking_menu_id;
            set_theme_mod('nav_menu_locations', $ticket_booking_locations);
        }
    }

    // POST and update the customizer and other related data of Ticket Booking
    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
        $ticket_booking_plugins = array(
            array(
                'slug' => 'classic-widgets',
                'file' => 'classic-widgets/classic-widgets.php',
                'download_url' => 'https://downloads.wordpress.org/plugin/classic-widgets.zip'
            )
        );

        foreach ($ticket_booking_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 --------
        ticket_booking_create_customizer_nav_menu();

        // ------- Create Pages --------
        function create_demo_page($title, $content = '', $template = '') {
            $page_id = ticket_booking_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;
        }
        

        $ticket_booking_home_id = create_demo_page('Home', '', 'home/home.php');
        update_option('page_on_front', $ticket_booking_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
        ticket_booking_create_customizer_nav_menu();
        // ------- Set Theme Mods --------

        set_theme_mod('ticket_booking_topbar_book_button_link', '#');
        set_theme_mod('ticket_booking_header_phone_number', '+1800-123-123');
        set_theme_mod('ticket_booking_header_phone_head', 'For Any Query');
        
        set_theme_mod('ticket_booking_social_media1_heading', 'www.facebook.com');
        set_theme_mod('ticket_booking_social_media2_heading', 'www.instagram.com');
        set_theme_mod('ticket_booking_social_media3_heading', 'www.twitter.com');
        set_theme_mod('ticket_booking_social_media4_heading', 'www.youtube.com');

        // ------- Banner Section --------

        $ticket_booking_banner_headings = array('Book Your Journey, Embrace the World.', 'Book Your Journey, Explore the World.');
        set_theme_mod('ticket_booking_slider_increase', 2);
        for ($i = 1; $i <= 2; $i++) {
            set_theme_mod("ticket_booking_banner_image$i", get_template_directory_uri() . "/img/banner.png");
            set_theme_mod("ticket_booking_banner_heading$i", $ticket_booking_banner_headings[$i - 1]);
            set_theme_mod("ticket_booking_banner_button_link$i", '#');
        }

        // ------- Destination Section --------

        set_theme_mod('ticket_booking_destination_small_heading', 'Adventure Zone.');
        set_theme_mod('ticket_booking_destination_main_heading', 'Visual Tour of Our Destinations.');
        $ticket_booking_destination_category = wp_create_category('travel'); 
        set_theme_mod('ticket_booking_destination_category', get_cat_name($ticket_booking_destination_category));


        set_theme_mod( 'ticket_booking_destination_topics_number', '6' );

        for($i=1;$i<=6;$i++){

            $title = 'Lorem ipsum is simply dummy text of the printing';
            $content = 'Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do minim eiusmod tempor incididunt ut afds labore et dolore magna aliqua. Ut enim ad quis nostrud exercitation ullamco laboris.';

            // Create post object
            $ticket_booking_post = array(
            'post_title'    => wp_strip_all_tags( $title ),
            'post_content'  => $content,
            'post_status'   => 'publish',
            'post_type'     => 'post',
            'post_category' => array($ticket_booking_destination_category) 
            );

            $ticket_booking_destination_post_id = wp_insert_post($ticket_booking_post);
            $ticket_booking_destination_post_image_url = get_template_directory()."/img/blog$i.png"; // file path

            $ticket_booking_destination_image_name = 'blog'.$i.'.png';
            $ticket_booking_destination_upload_dir       = wp_upload_dir(); 
            // Set upload folder
            $ticket_booking_destination_image_data       = file_get_contents($ticket_booking_destination_post_image_url); 
            
            // Get image data
            $ticket_booking_destination_unique_file_name = wp_unique_filename( $ticket_booking_destination_upload_dir['path'], $ticket_booking_destination_image_name ); 
            // Generate unique name
            $filename= basename( $ticket_booking_destination_unique_file_name ); 
            // Create image file name
            // Check folder permission and define file location
            if( wp_mkdir_p( $ticket_booking_destination_upload_dir['path'] ) ) {
                $file = $ticket_booking_destination_upload_dir['path'] . '/' . $filename;
            } else {
                $file = $ticket_booking_destination_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, $ticket_booking_destination_image_data, FS_CHMOD_FILE ) ) {
                wp_die( 'Error saving file!' );
            }

            $wp_filetype = wp_check_filetype( $filename, null );
            $ticket_booking_destination_attachment = array(
                'post_mime_type' => $wp_filetype['type'],
                'post_title'     => sanitize_file_name( $filename ),
                'post_content'   => '',
                'post_status'    => 'inherit'
            );
            $attach_id = wp_insert_attachment( $ticket_booking_destination_attachment, $file, $ticket_booking_destination_post_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( $ticket_booking_destination_post_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.', 'ticket-booking'); ?>
            <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', 'ticket-booking'); ?>">
            </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>