xref: /webtrees/resources/views/admin/trees.phtml (revision 7fa97a692e549953cc46c515f488c131f1cf8cd8)
15afbc57aSGreg Roach<?php
25afbc57aSGreg Roach
35afbc57aSGreg Roachuse Fisharebest\Webtrees\Auth;
47c7d1e03SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\AddUnlinkedPage;
56fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CheckTree;
60c0910bfSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\ControlPanel;
7d4265d07SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CreateMediaObjectModal;
8d4265d07SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CreateNoteModal;
9852ede8cSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CreateRepositoryModal;
10852ede8cSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CreateSourceModal;
11852ede8cSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\CreateSubmitterModal;
12ce42304aSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\DataFixChoose;
135afbc57aSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\DeleteTreeAction;
146fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\FindDuplicateRecords;
156d576906SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\ExportGedcomPage;
166fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\GedcomLoad;
176fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\ImportGedcomPage;
185bbfbb82SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\MergeRecordsPage;
1922e73debSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\PendingChangesLogPage;
206fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\RenumberTreePage;
21da1c67ccSGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\SelectDefaultTree;
228e0e1b25SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\TreePage;
236fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\TreePreferencesPage;
246fd01894SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\TreePrivacyPage;
2596716c47SGreg Roachuse Fisharebest\Webtrees\Http\RequestHandlers\UnconnectedPage;
26a2a24e20SGreg Roachuse Fisharebest\Webtrees\I18N;
27a2a24e20SGreg Roachuse Fisharebest\Webtrees\Site;
2895b80a66SGreg Roachuse Fisharebest\Webtrees\Tree;
29a2a24e20SGreg Roachuse Fisharebest\Webtrees\View;
305afbc57aSGreg Roachuse Illuminate\Database\Capsule\Manager as DB;
315afbc57aSGreg Roach
3295b80a66SGreg Roach/**
3395b80a66SGreg Roach * @var array<Tree> $all_trees
3495b80a66SGreg Roach * @var string      $title
3595b80a66SGreg Roach * @var Tree        $tree
3695b80a66SGreg Roach */
3795b80a66SGreg Roach
385afbc57aSGreg Roach?>
39dd6b2bfcSGreg Roach
40dd6b2bfcSGreg Roach<?php if (!empty($all_trees)) : ?>
410c0910bfSGreg Roach    <?= view('components/breadcrumbs', ['links' => [route(ControlPanel::class) => I18N::translate('Control panel'), $title]]) ?>
42dd6b2bfcSGreg Roach<?php endif ?>
43dd6b2bfcSGreg Roach
44dd6b2bfcSGreg Roach<h1><?= $title ?></h1>
45dd6b2bfcSGreg Roach
46dd6b2bfcSGreg Roach<?php if (empty($all_trees)) : ?>
47dd6b2bfcSGreg Roach    <div class="alert alert-info">
48dd6b2bfcSGreg Roach        <?= I18N::translate('You need to create a family tree.') ?>
49dd6b2bfcSGreg Roach    </div>
50dd6b2bfcSGreg Roach<?php endif ?>
51dd6b2bfcSGreg Roach
52290bb197SJonathan Jaubart<div id="accordion" aria-multiselectable="true">
53dd6b2bfcSGreg Roach    <?php foreach ($all_trees as $managed_tree) : ?>
54dd6b2bfcSGreg Roach        <?php if (Auth::isManager($managed_tree)) : ?>
55290bb197SJonathan Jaubart            <div class="accordion-item">
56290bb197SJonathan Jaubart                <div class="accordion-header" id="card-tree-header-<?= $managed_tree->id() ?>">
57*7fa97a69SGreg Roach                    <button class="accordion-button <?= $managed_tree->id() === $tree->id() || $managed_tree->getPreference('imported') === '0' ? ' ' : ' collapsed' ?>" type="button" data-bs-toggle="collapse" data-bs-target="#card-tree-content-<?= $managed_tree->id() ?>" aria-expanded="<?= $managed_tree->id() === $tree->id() || $managed_tree->getPreference('imported') === '0' ? 'true' : 'false' ?>" aria-controls="card-tree-content-<?= $managed_tree->id() ?>">
58290bb197SJonathan Jaubart                        <h2>
59dd6b2bfcSGreg Roach                            <?= view('icons/tree') ?>
60cc13d6d8SGreg Roach                            <?= e($managed_tree->name()) ?><?= e($managed_tree->title()) ?>
61dd6b2bfcSGreg Roach                        </h2>
62290bb197SJonathan Jaubart                    </button>
63dd6b2bfcSGreg Roach                </div>
64315eb316SGreg Roach
65*7fa97a69SGreg Roach                <div id="card-tree-content-<?= $managed_tree->id() ?>" class="accordion-collapse collapse<?= $managed_tree->id() === $tree->id() || $managed_tree->getPreference('imported') === '0' ? ' show' : '' ?>" aria-labelledby="panel-tree-header-<?= $managed_tree->id() ?>">
66290bb197SJonathan Jaubart                    <div class="accordion-body">
673fa66c66SGreg Roach                        <?php $importing = DB::table('gedcom_chunk')->where('gedcom_id', '=', $managed_tree->id())->where('imported', '=', 0)->exists() ?>
68dd6b2bfcSGreg Roach                        <?php if ($importing) : ?>
695197b5a1SGreg Roach                            <div id="import<?= $managed_tree->id() ?>" class="col-12">
70dd6b2bfcSGreg Roach                                <div class="progress">
71eb7fd195SGreg Roach                                    <div class="progress-bar" role="progressbar" aria-valuenow="0" aria-valuemin="0" aria-valuemax="100">
72dd6b2bfcSGreg Roach                                        <?= I18N::translate('Calculating…') ?>
73dd6b2bfcSGreg Roach                                    </div>
74dd6b2bfcSGreg Roach                                </div>
75eb7fd195SGreg Roach                            </div>
76dd6b2bfcSGreg Roach                            <?php View::push('javascript'); ?>
77dd6b2bfcSGreg Roach                                <script>
786fd01894SGreg Roach                                    $("#import<?= $managed_tree->id() ?>").load("<?= route(GedcomLoad::class, ['tree' => $managed_tree->name()]) ?>", {});
79dd6b2bfcSGreg Roach                                </script>
80dd6b2bfcSGreg Roach                                <?php View::endpush() ?>
81dd6b2bfcSGreg Roach                        <?php endif ?>
8272cf66d4SGreg Roach                        <div class="row<?= $importing ? ' d-none' : '' ?>" id="actions<?= $managed_tree->id() ?>">
83dd6b2bfcSGreg Roach                            <div class="col-sm-6 col-md-3">
84dd6b2bfcSGreg Roach                                <h3>
85dd6b2bfcSGreg Roach                                    <?= I18N::translate('Family tree') ?>
86dd6b2bfcSGreg Roach                                </h3>
87315eb316SGreg Roach                                <ul class="fa-ul mx-0">
884d787ddeSGreg Roach                                    <li>
894d787ddeSGreg Roach                                        <span class="fa-li"><?= view('icons/tree') ?></span>
908e0e1b25SGreg Roach                                        <a href="<?= e(route(TreePage::class, ['tree' => $managed_tree->name()])) ?>">
914d787ddeSGreg Roach                                            <?= I18N::translate('Home page') ?>
924d787ddeSGreg Roach                                        </a>
934d787ddeSGreg Roach                                    </li>
944d787ddeSGreg Roach                                </ul>
95315eb316SGreg Roach                                <ul class="fa-ul mx-0">
96dd6b2bfcSGreg Roach                                    <!-- PREFERENCES -->
97dd6b2bfcSGreg Roach                                    <li>
98dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/preferences') ?></span>
996fd01894SGreg Roach                                        <a href="<?= e(route(TreePreferencesPage::class, ['tree' => $managed_tree->name()])) ?>">
100dd6b2bfcSGreg Roach                                            <?= I18N::translate('Preferences') ?>
101315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
102dd6b2bfcSGreg Roach                                        </a>
103dd6b2bfcSGreg Roach                                    </li>
104dd6b2bfcSGreg Roach                                    <!-- PRIVACY -->
105dd6b2bfcSGreg Roach                                    <li>
106dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/lock') ?></span>
1076fd01894SGreg Roach                                        <a href="<?= e(route(TreePrivacyPage::class, ['tree' => $managed_tree->name()])) ?>">
108dd6b2bfcSGreg Roach                                            <?= I18N::translate('Privacy') ?>
109315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
110dd6b2bfcSGreg Roach                                        </a>
111dd6b2bfcSGreg Roach                                    </li>
112dd6b2bfcSGreg Roach                                    <!-- DELETE -->
113a2a24e20SGreg Roach                                    <?php if (count($all_trees) > 1 && Auth::isAdmin()) : ?>
114dd6b2bfcSGreg Roach                                        <li>
115dd6b2bfcSGreg Roach                                            <span class="fa-li"><?= view('icons/delete') ?></span>
116d4786c66SGreg Roach                                            <a href="#" data-wt-post-url="<?= e(route(DeleteTreeAction::class, ['tree' => $managed_tree->name()])) ?>" data-wt-reload-url="<?= e(route(ControlPanel::class)) ?>" data-wt-confirm="<?= I18N::translate('Are you sure you want to delete “%s”?', e($managed_tree->title())) ?>">
117dd6b2bfcSGreg Roach                                                <?= I18N::translate('Delete') ?>
118dd6b2bfcSGreg Roach                                            </a>
119dd6b2bfcSGreg Roach                                        </li>
120a2a24e20SGreg Roach                                    <?php endif ?>
121a2a24e20SGreg Roach
122dd6b2bfcSGreg Roach                                    <!-- SET AS DEFAULT -->
123a2a24e20SGreg Roach                                    <?php if (count($all_trees) > 1 && Auth::isAdmin()) : ?>
124dd6b2bfcSGreg Roach                                        <li>
125dd6b2bfcSGreg Roach                                            <span class="fa-li"><?= view('icons/favorite') ?></span>
126aa6f03bbSGreg Roach                                            <?php if ($managed_tree->name() === Site::getPreference('DEFAULT_GEDCOM')) : ?>
127dd6b2bfcSGreg Roach                                                <?= I18N::translate('Default family tree') ?>
128dd6b2bfcSGreg Roach                                            <?php else : ?>
12972cf66d4SGreg Roach                                                <a href="#" onclick="document.defaultform<?= $managed_tree->id() ?>.submit();">
130dd6b2bfcSGreg Roach                                                    <?= I18N::translate('Set as default') ?>
131315eb316SGreg Roach                                                    <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
132dd6b2bfcSGreg Roach                                                </a>
133da1c67ccSGreg Roach                                                <form method="post" action="<?= route(SelectDefaultTree::class, ['tree' => $managed_tree->name()]) ?>" name="defaultform<?= $managed_tree->id() ?>">
134dd6b2bfcSGreg Roach                                                    <?= csrf_field() ?>
135dd6b2bfcSGreg Roach                                                    <!-- A11Y - forms need submit buttons, but they look ugly here -->
136315eb316SGreg Roach                                                    <button class="visually-hidden" type="submit">
137dd6b2bfcSGreg Roach                                                        <?= I18N::translate('Set as default') ?>
138dd6b2bfcSGreg Roach                                                    </button>
139dd6b2bfcSGreg Roach                                                </form>
140dd6b2bfcSGreg Roach                                            <?php endif ?>
141dd6b2bfcSGreg Roach                                        </li>
142dd6b2bfcSGreg Roach                                    <?php endif ?>
143dd6b2bfcSGreg Roach                                </ul>
144ce42304aSGreg Roach
145315eb316SGreg Roach                                <ul class="fa-ul mx-0">
146ce42304aSGreg Roach                                    <!-- DATA FIXES -->
147ce42304aSGreg Roach                                    <li>
148ce42304aSGreg Roach                                        <span class="fa-li"><?= view('icons/data-fix') ?></span>
149ce42304aSGreg Roach                                        <a href="<?= e(route(DataFixChoose::class, ['tree' => $managed_tree->name()])) ?>">
150ce42304aSGreg Roach                                            <?= I18N::translate('Data fixes') ?>
151315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
152ce42304aSGreg Roach                                        </a>
153ce42304aSGreg Roach                                    </li>
154ce42304aSGreg Roach                                </ul>
155dd6b2bfcSGreg Roach                            </div>
156dd6b2bfcSGreg Roach                            <div class="col-sm-6 col-md-3">
157dd6b2bfcSGreg Roach                                <h3>
158a2a24e20SGreg Roach                                    <?= /* I18N: Individuals, sources, dates, places, etc. */
159a2a24e20SGreg Roach                                    I18N::translate('Genealogy data') ?>
160dd6b2bfcSGreg Roach                                </h3>
161315eb316SGreg Roach                                <ul class="fa-ul mx-0">
162dd6b2bfcSGreg Roach                                    <!-- FIND DUPLICATES -->
163dd6b2bfcSGreg Roach                                    <li>
164dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/copy') ?></span>
1656fd01894SGreg Roach                                        <a href="<?= e(route(FindDuplicateRecords::class, ['tree' => $managed_tree->name()])) ?>">
166dd6b2bfcSGreg Roach                                            <?= I18N::translate('Find duplicates') ?>
167315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
168dd6b2bfcSGreg Roach                                        </a>
169dd6b2bfcSGreg Roach                                    </li>
170dd6b2bfcSGreg Roach                                    <!-- MERGE -->
171dd6b2bfcSGreg Roach                                    <li>
172dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/merge') ?></span>
1735bbfbb82SGreg Roach                                        <a href="<?= e(route(MergeRecordsPage::class, ['tree' => $managed_tree->name()])) ?>">
174dd6b2bfcSGreg Roach                                            <?= I18N::translate('Merge records') ?>
175315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
176dd6b2bfcSGreg Roach                                        </a>
177dd6b2bfcSGreg Roach                                    </li>
178dd6b2bfcSGreg Roach                                    <!-- CHECK FOR ERRORS -->
179dd6b2bfcSGreg Roach                                    <li>
180dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/warning') ?></span>
1816fd01894SGreg Roach                                        <a href="<?= e(route(CheckTree::class, ['tree' => $managed_tree->name()])) ?>">
182dd6b2bfcSGreg Roach                                            <?= I18N::translate('Check for errors') ?>
183315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
184dd6b2bfcSGreg Roach                                        </a>
185dd6b2bfcSGreg Roach                                    </li>
186dd6b2bfcSGreg Roach                                    <!-- UNCONNECTED INDIVIDUALS -->
187dd6b2bfcSGreg Roach                                    <li>
188dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/unlink') ?></span>
18996716c47SGreg Roach                                        <a href="<?= e(route(UnconnectedPage::class, ['tree' => $managed_tree->name()])) ?>">
190dd6b2bfcSGreg Roach                                            <?= I18N::translate('Find unrelated individuals') ?>
191315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
192dd6b2bfcSGreg Roach                                        </a>
193dd6b2bfcSGreg Roach                                    </li>
194dd6b2bfcSGreg Roach                                    <!-- RENUMBER -->
195dd6b2bfcSGreg Roach                                    <li>
196dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/sort') ?></span>
1976fd01894SGreg Roach                                        <a href="<?= e(route(RenumberTreePage::class, ['tree' => $managed_tree->name()])) ?>">
198dd6b2bfcSGreg Roach                                            <?= I18N::translate('Renumber') ?>
199315eb316SGreg Roach                                            <span class="visually-hidden">
200cc13d6d8SGreg Roach                                        <?= e($managed_tree->title()) ?>
201dd6b2bfcSGreg Roach                                    </span>
202dd6b2bfcSGreg Roach                                        </a>
203dd6b2bfcSGreg Roach                                    </li>
204dd6b2bfcSGreg Roach                                    <!-- CHANGES -->
205dd6b2bfcSGreg Roach                                    <li>
206dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/edit') ?></span>
20722e73debSGreg Roach                                        <a href="<?= route(PendingChangesLogPage::class, ['tree' => $managed_tree->name()]) ?>">
208dd6b2bfcSGreg Roach                                            <?= I18N::translate('Changes log') ?>
209315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
210dd6b2bfcSGreg Roach                                        </a>
211dd6b2bfcSGreg Roach                                    </li>
212dd6b2bfcSGreg Roach                                </ul>
213dd6b2bfcSGreg Roach                            </div>
214dd6b2bfcSGreg Roach                            <div class="col-sm-6 col-md-3">
215dd6b2bfcSGreg Roach                                <h3>
216dd6b2bfcSGreg Roach                                    <?= I18N::translate('Add unlinked records') ?>
217dd6b2bfcSGreg Roach                                </h3>
218315eb316SGreg Roach                                <ul class="fa-ul mx-0">
219dd6b2bfcSGreg Roach                                    <!-- UNLINKED INDIVIDUAL -->
220dd6b2bfcSGreg Roach                                    <li>
221dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/individual') ?></span>
2227c7d1e03SGreg Roach                                        <a href="<?= e(route(AddUnlinkedPage::class, ['tree' => $managed_tree->name()])) ?>">
223dd6b2bfcSGreg Roach                                            <?= I18N::translate('Individual') ?>
224315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
225dd6b2bfcSGreg Roach                                        </a>
226dd6b2bfcSGreg Roach                                    </li>
227dd6b2bfcSGreg Roach                                    <!-- UNLINKED SOURCE -->
228dd6b2bfcSGreg Roach                                    <li>
229dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/source') ?></span>
230d4786c66SGreg Roach                                        <a href="#" data-wt-href="<?= e(route(CreateSourceModal::class, ['tree' => $managed_tree->name()])) ?>" data-bs-target="#wt-ajax-modal" data-bs-toggle="modal" data-bs-backdrop="static">
231dd6b2bfcSGreg Roach                                            <?= I18N::translate('Source') ?>
232315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
233dd6b2bfcSGreg Roach                                        </a>
234dd6b2bfcSGreg Roach                                    </li>
235dd6b2bfcSGreg Roach                                    <!-- UNLINKED REPOSITORY -->
236dd6b2bfcSGreg Roach                                    <li>
237dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/repository') ?></span>
238d4786c66SGreg Roach                                        <a href="#" data-wt-href="<?= e(route(CreateRepositoryModal::class, ['tree' => $managed_tree->name()])) ?>" data-bs-target="#wt-ajax-modal" data-bs-toggle="modal" data-bs-backdrop="static">
239dd6b2bfcSGreg Roach                                            <?= I18N::translate('Repository') ?>
240315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
241dd6b2bfcSGreg Roach                                        </a>
242dd6b2bfcSGreg Roach                                    </li>
243dd6b2bfcSGreg Roach                                    <!-- UNLINKED MEDIA OBJECT -->
244dd6b2bfcSGreg Roach                                    <li>
245dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/media') ?></span>
246d4786c66SGreg Roach                                        <a href="#" data-wt-href="<?= e(route(CreateMediaObjectModal::class, ['tree' => $managed_tree->name()])) ?>" data-bs-target="#wt-ajax-modal" data-bs-toggle="modal" data-bs-backdrop="static">
247dd6b2bfcSGreg Roach
248dd6b2bfcSGreg Roach                                            <?= I18N::translate('Media object') ?>
249315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
250dd6b2bfcSGreg Roach                                        </a>
251dd6b2bfcSGreg Roach                                    </li>
252dd6b2bfcSGreg Roach                                    <!-- UNLINKED NOTE -->
253dd6b2bfcSGreg Roach                                    <li>
254dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/note') ?></span>
255d4786c66SGreg Roach                                        <a href="#" data-wt-href="<?= e(route(CreateNoteModal::class, ['tree' => $managed_tree->name()])) ?>" data-bs-target="#wt-ajax-modal" data-bs-toggle="modal" data-bs-backdrop="static">
256dd6b2bfcSGreg Roach                                            <?= I18N::translate('Shared note') ?>
257315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
258dd6b2bfcSGreg Roach                                        </a>
259dd6b2bfcSGreg Roach                                    </li>
260dd6b2bfcSGreg Roach                                    <!-- UNLINKED SUBMITTER -->
261dd6b2bfcSGreg Roach                                    <li>
262dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/submitter') ?></span>
263d4786c66SGreg Roach                                        <a href="#" data-wt-href="<?= e(route(CreateSubmitterModal::class, ['tree' => $managed_tree->name()])) ?>" data-bs-target="#wt-ajax-modal" data-bs-toggle="modal" data-bs-backdrop="static">
264dd6b2bfcSGreg Roach                                            <?= I18N::translate('Submitter') ?>
265315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
266dd6b2bfcSGreg Roach                                        </a>
267dd6b2bfcSGreg Roach                                    </li>
268dd6b2bfcSGreg Roach                                </ul>
269dd6b2bfcSGreg Roach                            </div>
270dd6b2bfcSGreg Roach                            <div class="col-sm-6 col-md-3">
271dd6b2bfcSGreg Roach                                <h3>
272dd6b2bfcSGreg Roach                                    <?= I18N::translate('GEDCOM file') ?>
273dd6b2bfcSGreg Roach                                </h3>
274315eb316SGreg Roach                                <ul class="fa-ul mx-0">
275dd6b2bfcSGreg Roach                                    <!-- DOWNLOAD/Export -->
276dd6b2bfcSGreg Roach                                    <li>
277dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/download') ?></span>
2786d576906SGreg Roach                                        <a href="<?= e(route(ExportGedcomPage::class, ['tree' => $managed_tree->name()])) ?>">
279dd6b2bfcSGreg Roach                                            <?= I18N::translate('Export') ?>
280315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
281dd6b2bfcSGreg Roach                                        </a>
282dd6b2bfcSGreg Roach                                    </li>
283dd6b2bfcSGreg Roach                                    <!-- UPLOAD/IMPORT -->
284dd6b2bfcSGreg Roach                                    <li>
285dd6b2bfcSGreg Roach                                        <span class="fa-li"><?= view('icons/upload') ?></span>
2866fd01894SGreg Roach                                        <a href="<?= e(route(ImportGedcomPage::class, ['tree' => $managed_tree->name()])) ?>">
287dd6b2bfcSGreg Roach                                            <?= I18N::translate('Import') ?>
288315eb316SGreg Roach                                            <span class="visually-hidden"><?= e($managed_tree->title()) ?></span>
289dd6b2bfcSGreg Roach                                        </a>
290dd6b2bfcSGreg Roach                                    </li>
291dd6b2bfcSGreg Roach                                </ul>
292dd6b2bfcSGreg Roach                            </div>
293dd6b2bfcSGreg Roach                        </div>
294dd6b2bfcSGreg Roach                    </div>
295dd6b2bfcSGreg Roach                </div>
296dd6b2bfcSGreg Roach            </div>
297dd6b2bfcSGreg Roach        <?php endif ?>
298dd6b2bfcSGreg Roach    <?php endforeach ?>
299dd6b2bfcSGreg Roach</div>
300dd6b2bfcSGreg Roach
301dd6b2bfcSGreg Roach<?= view('modals/ajax') ?>
302