@php
    $title = 'Гости — Hotel Pineta';
    $heading = 'Гости';
    $subheading = 'Регистрации гостей и доступ к личному кабинету';
@endphp

@extends('layouts.admin')

@section('content')
    <div class="card">
        <div class="actions-row" style="justify-content: space-between; margin-bottom: 14px;">
            <h3 style="margin:0;">Регистрации гостей</h3>
            <a href="{{ route('admin.bookings.index') }}" class="secondary">К бронированиям</a>
        </div>

        <form method="get" class="filters" style="grid-template-columns: 1fr auto; align-items: end;">
            <div class="field">
                <label for="search">Поиск</label>
                <input id="search" type="text" name="search" value="{{ $filters['search'] }}" placeholder="Имя, телефон, e-mail, код скидки">
            </div>
            <div class="actions-row">
                <a href="{{ route('admin.guests.index') }}" class="secondary">Сбросить</a>
                <button type="submit" class="primary">Найти</button>
            </div>
        </form>

        <div class="help" style="margin-top: 12px;">
            Здесь можно удалить ошибочную регистрацию гостя. Брони при этом не удаляются и остаются в журнале бронирований.
        </div>
    </div>

    <div class="card" style="margin-top: 18px;">
        <h3 style="margin-top:0;">Очистка старой регистрации по телефону</h3>
        <div class="help" style="margin-bottom: 12px;">
            Используй этот блок для старых или битых регистраций, которые мешают гостю войти. Система ищет телефон в новых гостях, бронях и старой таблице регистраций. Брони не удаляются.
        </div>

        <form method="get" action="{{ route('admin.guests.index') }}" class="filters" style="grid-template-columns: 1fr auto; align-items: end;">
            <div class="field">
                <label for="cleanup_phone">Телефон</label>
                <input id="cleanup_phone" class="pineta-phone-input" data-pineta-phone="1" type="tel" name="cleanup_phone" value="{{ $cleanupPhone }}" placeholder="Например: 380676323270">
            </div>
            <div class="actions-row">
                <button type="submit" class="primary">Найти старые записи</button>
            </div>
        </form>

        @if ($cleanupResults !== null)
            <div style="margin-top: 16px;">
                <div class="help" style="margin-bottom: 10px;">
                    Нормализованный телефон для поиска: <strong>{{ $cleanupResults['normalized_phone'] ?: '—' }}</strong>
                </div>

                <h4 style="margin-bottom:8px;">Найдено в регистрациях гостей: {{ $cleanupResults['guests']->count() }}</h4>
                @if ($cleanupResults['guests']->isEmpty())
                    <div class="empty" style="margin-bottom:12px;">В таблице гостей записей не найдено.</div>
                @else
                    <div class="table-wrap" style="margin-bottom: 16px;">
                        <table>
                            <thead>
                            <tr>
                                <th>ID</th>
                                <th>Гость</th>
                                <th>Телефон</th>
                                <th>Email</th>
                                <th>Статус</th>
                                <th>Броней</th>
                                <th>Создано</th>
                            </tr>
                            </thead>
                            <tbody>
                            @foreach ($cleanupResults['guests'] as $guestRow)
                                <tr>
                                    <td>{{ $guestRow->id }}</td>
                                    <td>{{ $guestRow->full_name }}</td>
                                    <td>{{ $guestRow->phone ?: '—' }}</td>
                                    <td>{{ $guestRow->email ?: '—' }}</td>
                                    <td>{{ $guestRow->status ?: '—' }}</td>
                                    <td>{{ $guestRow->bookings_count }}</td>
                                    <td>{{ $guestRow->created_at?->format('d.m.Y H:i') }}</td>
                                </tr>
                            @endforeach
                            </tbody>
                        </table>
                    </div>
                @endif

                <h4 style="margin-bottom:8px;">Найдено в бронях: {{ $cleanupResults['bookings']->count() }}</h4>
                @if ($cleanupResults['bookings']->isEmpty())
                    <div class="empty" style="margin-bottom:12px;">В бронях телефон не найден.</div>
                @else
                    <div class="table-wrap" style="margin-bottom: 16px;">
                        <table>
                            <thead>
                            <tr>
                                <th>Бронь</th>
                                <th>Гость</th>
                                <th>Телефон</th>
                                <th>Email</th>
                                <th>Статус</th>
                                <th>Заезд</th>
                            </tr>
                            </thead>
                            <tbody>
                            @foreach ($cleanupResults['bookings'] as $bookingRow)
                                <tr>
                                    <td>{{ $bookingRow->booking_number }}</td>
                                    <td>{{ $bookingRow->guest_name }}</td>
                                    <td>{{ $bookingRow->phone ?: '—' }}</td>
                                    <td>{{ $bookingRow->email ?: '—' }}</td>
                                    <td>{{ $bookingRow->status ?: '—' }}</td>
                                    <td>{{ $bookingRow->arrival_date ? \Illuminate\Support\Carbon::parse($bookingRow->arrival_date)->format('d.m.Y') : '—' }}</td>
                                </tr>
                            @endforeach
                            </tbody>
                        </table>
                    </div>
                @endif

                <h4 style="margin-bottom:8px;">Найдено в старых регистрациях: {{ $cleanupResults['legacy_registrations']->count() }}</h4>
                @if ($cleanupResults['legacy_registrations']->isEmpty())
                    <div class="empty" style="margin-bottom:12px;">В старой таблице регистраций записей не найдено или такой таблицы нет.</div>
                @else
                    <div class="table-wrap" style="margin-bottom: 16px;">
                        <table>
                            <thead>
                            <tr>
                                <th>Данные старой записи</th>
                            </tr>
                            </thead>
                            <tbody>
                            @foreach ($cleanupResults['legacy_registrations'] as $legacyRow)
                                <tr>
                                    <td>
                                        @foreach (get_object_vars($legacyRow) as $key => $value)
                                            <div><strong>{{ $key }}:</strong> {{ $value ?: '—' }}</div>
                                        @endforeach
                                    </td>
                                </tr>
                            @endforeach
                            </tbody>
                        </table>
                    </div>
                @endif

                <form method="post" action="{{ route('admin.guests.cleanup.by_phone') }}" onsubmit="return confirm('Удалить регистрацию/доступ по этому телефону? Брони останутся в базе и не будут удалены.');">
                    @csrf
                    @method('DELETE')
                    <input type="hidden" name="phone" value="{{ $cleanupPhone }}">
                    <button type="submit" class="danger">Удалить регистрацию / доступ по этому телефону</button>
                </form>
            </div>
        @endif
    </div>

    <div class="card" style="margin-top: 18px;">
        @if ($guests->isEmpty())
            <div class="empty">Регистраций гостей пока нет.</div>
        @else
            <div class="table-wrap">
                <table>
                    <thead>
                    <tr>
                        <th>Гость</th>
                        <th>Телефон</th>
                        <th>Email</th>
                        <th>Язык</th>
                        <th>Скидка</th>
                        <th>Статус</th>
                        <th>Броней</th>
                        <th>Создано</th>
                        <th>Действие</th>
                    </tr>
                    </thead>
                    <tbody>
                    @foreach ($guests as $guest)
                        <tr>
                            <td>{{ $guest->full_name }}</td>
                            <td>{{ $guest->phone ?: '—' }}</td>
                            <td>{{ $guest->email ?: '—' }}</td>
                            <td>{{ strtoupper($guest->language ?: '—') }}</td>
                            <td>
                                @if ($guest->discount_code)
                                    <div>{{ $guest->discount_code }}</div>
                                    <div class="muted">{{ $guest->discount_percent ?: 25 }}%</div>
                                @else
                                    —
                                @endif
                            </td>
                            <td><span class="badge {{ $guest->status }}">{{ $guest->status }}</span></td>
                            <td>{{ $guest->bookings_count }}</td>
                            <td>{{ $guest->created_at?->format('d.m.Y H:i') }}</td>
                            <td>
                                <form method="post" action="{{ route('admin.guests.destroy', $guest) }}" onsubmit="return confirm('Удалить регистрацию гостя? Уже созданные брони останутся в базе.');">
                                    @csrf
                                    @method('DELETE')
                                    <button type="submit" class="danger">Удалить регистрацию</button>
                                </form>
                            </td>
                        </tr>
                    @endforeach
                    </tbody>
                </table>
            </div>

            <div class="pagination">
                {{ $guests->links() }}
            </div>
        @endif
    </div>
@endsection
