<?php
/**
 * CLI: đảm bảo DB, tuyến seed, import sample CSV.
 *
 * Chạy từ thư mục gốc WordPress (Laragon: www/datve-plugin):
 *   php wp-content/plugins/datvetaucaotoc-booking/tools/bootstrap-data.php
 *
 * @package DatvetaucaotocBooking
 */

if ( php_sapi_name() !== 'cli' ) {
	exit( 'CLI only.' );
}

$wp_load = getcwd();
if ( ! is_file( $wp_load . '/wp-load.php' ) ) {
	fwrite( STDERR, "Chạy lệnh trong thư mục gốc WordPress (có wp-load.php).\n" );
	exit( 1 );
}

require $wp_load . '/wp-load.php';

Datvetau_Booking_Database::install();
Datvetau_Booking_Settings::ensure_defaults();
Datvetau_Booking_Route_Seeder::maybe_seed();

$csv_path = WP_PLUGIN_DIR . '/datvetaucaotoc-booking/data/sample-import.csv';
if ( ! is_readable( $csv_path ) ) {
	fwrite( STDERR, "Không đọc được: {$csv_path}\n" );
	exit( 1 );
}

$result = Datvetau_Booking_Trip_Importer::import_csv( (string) file_get_contents( $csv_path ), 'update' );

global $wpdb;
$trips = (int) $wpdb->get_var(
	'SELECT COUNT(*) FROM ' . Datvetau_Booking_Database::table( 'trips' )
);

echo wp_json_encode(
	array(
		'routes' => count( Datvetau_Booking_Route_Repository::list_all() ),
		'trips'  => $trips,
		'import' => $result,
	),
	JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE
) . "\n";
