<?php

declare(strict_types=1);

use Fisharebest\Webtrees\Fact;
use Fisharebest\Webtrees\I18N;
use Fisharebest\Webtrees\Individual;
use Fisharebest\Webtrees\View;
use Illuminate\Support\Collection;

/**
 * @var Collection<int,Fact>     $facts
 * @var int                      $limit_high
 * @var int                      $limit_low
 * @var array<array<int,string>> $order
 */

?>

<div class="table-responsive">
    <table
        class="table table-sm datatable wt-table-events"
        <?= view('lists/datatables-attributes') ?>
        data-paging="<?= $facts->count() >= $limit_high ? 'true' : 'false' ?>"
        data-filter="false"
        data-info="false"
        data-length-change="false"
        data-page-length="<?= e($limit_low) ?>"
        data-order="<?= e(json_encode($order, JSON_THROW_ON_ERROR)) ?>"
    >
        <thead>
            <tr>
                <th>
                    <?= I18N::translate('Record') ?>
                </th>
                <th>
                    <?= I18N::translate('Date') ?>
                </th>
                <th>
                    <?= view('icons/anniversary') ?>
                    <span class="visually-hidden"><?= I18N::translate('Anniversary') ?></span>
                </th>
                <th>
                    <?= I18N::translate('Event') ?>
                </th>
            </tr>
        </thead>
        <tbody>
            <?php foreach ($facts as $fact) : ?>
                <?php $record = $fact->record(); ?>
                <tr>
                    <td data-sort="<?= e($record->sortName()) ?>">
                        <a href="<?= e($record->url()) ?>">
                            <?= $record->fullName() ?>
                        </a>
                        <?php if ($record instanceof Individual) : ?>
                            <small><?= view('icons/sex', ['sex' => $record->sex()]) ?></small>
                        <?php endif ?>
                    </td>
                    <td data-sort="<?= $fact->jd + $fact->anniv / 10000.0 ?>">
                        <?= $fact->date()->display($record->tree(), null, true) ?>
                    </td>
                    <td data-sort="<?= $fact->anniv ?>">
                        <?= $fact->anniv ?>
                    </td>
                    <td data-sort="<?= $fact->label() ?>">
                        <?= $fact->label() ?>
                    </td>
                </tr>
            <?php endforeach ?>
        </tbody>
    </table>
</div>

<?php View::push('javascript') ?>
<script>
  $(".wt-table-events").dataTable();
</script>
<?php View::endpush() ?>
