<?php
/**
 * @var array<int,array<string,mixed>> $bookings
 * @var string $booking_search
 * @var string $booking_status
 */
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

$bookings_filter_reset_url = admin_url( 'admin.php?page=datvetau-booking' );
?>
<div class="wrap">
	<h1><?php esc_html_e( 'Đơn đặt vé', 'datvetaucaotoc-booking' ); ?></h1>
	<?php if ( ! empty( $_GET['cancelled'] ) ) : ?>
		<div class="notice notice-success"><p><?php esc_html_e( 'Đã hủy đơn và hoàn ghế.', 'datvetaucaotoc-booking' ); ?></p></div>
	<?php endif; ?>

	<section class="datvetau-admin-card datvetau-admin-card--booking-list">
		<h2 class="datvetau-admin-card__title"><?php esc_html_e( 'Danh sách đơn', 'datvetaucaotoc-booking' ); ?></h2>

		<form method="get" class="datvetau-admin-filter-bar" id="datvetau-bookings-filter-form">
			<input type="hidden" name="page" value="datvetau-booking" />
			<div class="datvetau-admin-filter-bar__fields">
				<label class="datvetau-admin-filter-bar__field datvetau-admin-filter-bar__field--wide">
					<span class="datvetau-admin-filter-bar__label"><?php esc_html_e( 'Tìm kiếm', 'datvetaucaotoc-booking' ); ?></span>
					<input
						type="search"
						name="booking_search"
						class="regular-text"
						value="<?php echo esc_attr( $booking_search ); ?>"
						placeholder="<?php esc_attr_e( 'Mã đơn, tên, số điện thoại…', 'datvetaucaotoc-booking' ); ?>"
					/>
				</label>
				<label class="datvetau-admin-filter-bar__field" for="datvetau-booking-status-filter">
					<span class="datvetau-admin-filter-bar__label"><?php esc_html_e( 'Trạng thái', 'datvetaucaotoc-booking' ); ?></span>
					<select name="booking_status" id="datvetau-booking-status-filter">
						<option value=""><?php esc_html_e( 'Tất cả', 'datvetaucaotoc-booking' ); ?></option>
						<option value="pending_payment" <?php selected( $booking_status, 'pending_payment' ); ?>>
							<?php esc_html_e( 'Chờ thanh toán', 'datvetaucaotoc-booking' ); ?>
						</option>
						<option value="confirmed" <?php selected( $booking_status, 'confirmed' ); ?>>
							<?php esc_html_e( 'Đã thanh toán', 'datvetaucaotoc-booking' ); ?>
						</option>
						<option value="cancelled" <?php selected( $booking_status, 'cancelled' ); ?>>
							<?php esc_html_e( 'Đã hủy', 'datvetaucaotoc-booking' ); ?>
						</option>
					</select>
				</label>
				<div class="datvetau-admin-filter-bar__actions">
					<?php submit_button( __( 'Lọc', 'datvetaucaotoc-booking' ), 'secondary', '', false ); ?>
					<a class="button datvetau-admin-btn-reset" href="<?php echo esc_url( $bookings_filter_reset_url ); ?>">
						<?php esc_html_e( 'Reset', 'datvetaucaotoc-booking' ); ?>
					</a>
				</div>
			</div>
		</form>

		<table class="widefat striped">
			<thead>
				<tr>
					<th><?php esc_html_e( 'Mã', 'datvetaucaotoc-booking' ); ?></th>
					<th><?php esc_html_e( 'Trạng thái', 'datvetaucaotoc-booking' ); ?></th>
					<th><?php esc_html_e( 'Người đặt', 'datvetaucaotoc-booking' ); ?></th>
					<th><?php esc_html_e( 'SĐT', 'datvetaucaotoc-booking' ); ?></th>
					<th><?php esc_html_e( 'Tổng', 'datvetaucaotoc-booking' ); ?></th>
					<th><?php esc_html_e( 'Ngày tạo', 'datvetaucaotoc-booking' ); ?></th>
					<th></th>
				</tr>
			</thead>
			<tbody>
			<?php if ( ! $bookings ) : ?>
				<tr><td colspan="7"><?php esc_html_e( 'Không có đơn phù hợp bộ lọc.', 'datvetaucaotoc-booking' ); ?></td></tr>
			<?php else : ?>
				<?php foreach ( $bookings as $b ) : ?>
					<tr>
						<td><strong><?php echo esc_html( (string) $b['booking_code'] ); ?></strong></td>
						<td><?php echo esc_html( Datvetau_Booking_Admin_Format::booking_status_label( (string) $b['status'] ) ); ?></td>
						<td><?php echo esc_html( (string) $b['booker_name'] ); ?></td>
						<td><?php echo esc_html( (string) $b['booker_phone'] ); ?></td>
						<td><?php echo esc_html( number_format_i18n( (int) $b['total_vnd'] ) ); ?> VND</td>
						<td><?php echo esc_html( (string) $b['created_at'] ); ?></td>
						<td>
							<a href="<?php echo esc_url( admin_url( 'admin.php?page=datvetau-booking&booking_id=' . (int) $b['id'] ) ); ?>"><?php esc_html_e( 'Chi tiết', 'datvetaucaotoc-booking' ); ?></a>
							<?php if ( 'cancelled' !== $b['status'] ) : ?>
								| <a class="datvetau-admin-action-delete" href="<?php echo esc_url( wp_nonce_url( admin_url( 'admin.php?page=datvetau-booking&datvetau_cancel_booking=' . (int) $b['id'] ), 'datvetau_cancel_booking_' . (int) $b['id'] ) ); ?>" onclick="return confirm('<?php echo esc_js( __( 'Hủy đơn và hoàn ghế?', 'datvetaucaotoc-booking' ) ); ?>');"><?php esc_html_e( 'Hủy', 'datvetaucaotoc-booking' ); ?></a>
							<?php endif; ?>
						</td>
					</tr>
				<?php endforeach; ?>
			<?php endif; ?>
			</tbody>
		</table>
	</section>
</div>
