xref: /webtrees/resources/views/components/select-location.phtml (revision 0d047a8c74753c7558a60f4789c838996d6fae8b)
1<?php
2
3use Fisharebest\Webtrees\Http\RequestHandlers\Select2Location;
4use Fisharebest\Webtrees\Location;
5use Fisharebest\Webtrees\Tree;
6
7/**
8 * @var string        $at "@" or "" (or unset).
9 * @var Location|null $location
10 * @var string|null   $class
11 * @var string|null   $id
12 * @var string        $name
13 * @var Tree          $tree
14 */
15
16$at = $at ?? '';
17
18?>
19
20<select
21        autocomplete="off"
22        class="form-control select2 <?= $class ?? '' ?>"
23        data-ajax--delay="<?= e(Select2Location::AJAX_DELAY) ?>"
24        data-minimum-input-length="<?= e(Select2Location::MINIMUM_INPUT_LENGTH) ?>"
25        data-ajax--type="POST"
26        data-ajax--url="<?= e(route(Select2Location::class, ['tree' => $tree->name(), 'at' => $at])) ?>"
27        data-allow-clear="true"
28        data-placeholder=""
29        id="<?= e($id ?? $name) ?>"
30        name="<?= e($name) ?>"
31    <?= ($disabled ?? false) ? 'disabled' : '' ?>
32    <?= ($required ?? false) ? 'required' : '' ?>
33        style="width:100%"
34>
35    <?php if (($location ?? null) instanceof Location) : ?>
36        <option value="<?= e($at . $location->xref() . $at) ?>">
37            <?= view('selects/location', ['location' => $location]) ?>
38        </option>
39    <?php else : ?>
40        <option value="">&nbsp;</option>
41    <?php endif ?>
42</select>
43