<?php

/**
 * @package Aldine
 */

namespace Aldine\Activation;

use ParsedownExtra;

function create_default_content() {
	if ( ! get_option( 'pb_aldine_activated' ) ) {
		$extra = new ParsedownExtra();
		$about = $extra->text( file_get_contents( get_stylesheet_directory() . '/docs/about.md' ) );
		$help = $extra->text( file_get_contents( get_stylesheet_directory() . '/docs/help.md' ) );

		$default_pages = [
			'about' => [
				'post_title' => __( 'About', 'pressbooks-aldine' ),
				'post_content' => apply_filters( 'pb_root_about_page_content', $about ),
			],
			'help' => [
				'post_title' => __( 'Help', 'pressbooks-aldine' ),
				'post_content' => apply_filters( 'pb_root_help_page_content', $help ),
			],
			'catalog' => [
				'post_title' => __( 'Catalog', 'pressbooks-aldine' ),
				'post_content' => '',
			],
			'home' => [
				'post_title' => __( 'Home', 'pressbooks-aldine' ),
				'post_content' => '',
			],
		];

		// Add our pages
		$pages = [];

		foreach ( $default_pages as $slug => $page ) {
			$check = get_page_by_path( $slug );
			if ( empty( $check ) ) {
				$pages[ $slug ] = wp_insert_post( array_merge( $page, [ 'post_type' => 'page', 'post_status' => 'publish' ] ) );
			} else {
				$pages[ $slug ] = $check->ID;
			}
		}

		// Set front page to Home
		update_option( 'show_on_front', 'page' );
		update_option( 'page_on_front', $pages['home'] );

		// Remove content generated by wp_install_defaults
		if ( ! wp_delete_post( 1, true ) ) {
			return;
		}
		if ( ! wp_delete_post( 2, true ) ) {
			return;
		}
		if ( ! wp_delete_comment( 1, true ) ) {
			return;
		}

		// Add "pb_aldine_activated" option to enable check above
		add_option( 'pb_aldine_activated', 1 );
	}
}