reveal full hierarchy in sidebar
[mdref/mdref] / views / sidebar.phtml
1
2 <div class="sidebar">
3 <?php if (isset($entry)) : ?>
4
5 <div class="edit">
6 <a href="<?= $entry->getEditUrl() ?>">Edit</a>
7 </div>
8 <?php endif; ?>
9
10 <?php
11 if (isset($baseUrl) || !isset($entry)) {
12 $up = "./";
13 } else {
14 $up = str_repeat("../", count($entry->getParents()));
15 }
16 ?>
17
18 <ul>
19 <li>&lsh; <a href="<?= $up ?>">Home</a>
20 <?php if (isset($entry)) : /* @var \mdref\Entry $entry */ ?>
21
22 <ul>
23 <li>
24 <?php foreach ($entry->getParents() as $parent) : ?>
25 <?php if ($parent->isFile()) : ?>
26
27 &uarr; <a href="<?= $up.$esc($parent->getName()) ?>">
28 <?= $esc($entry->getRepo()->getEntry($parent)) ?>
29
30 </a>
31 <ul>
32 <li>
33 <?php endif; ?>
34 <?php endforeach; ?>
35
36 &circlearrowright; <strong><a href="<?= $up.$esc($entry->getName()) ?>"><?= $esc($entry) ?></a></strong>
37
38 <?php if ($entry->hasIterator()): ?>
39
40 <ul>
41 <?php foreach ($entry as $sub) : /* @var \mdref\Entry $sub */ ?>
42
43 <li>
44 &rdsh; <a href="<?= $up.$esc($sub->getName()) ?>"><?= $esc($sub) ?></a>
45 <?php $indents= [] ; $indent = "
46 ";
47 include __DIR__ . "/sidebar-rec.phtml"; ?>
48
49 </li>
50 <?php endforeach; ?>
51
52 </ul>
53 <?php endif; ?>
54
55 <?php if (isset($parent)) : ?>
56 <?php
57 while ($parent && !$parent->isFile()) {
58 $parent = $parent->getParent();
59 }
60 ?>
61 <?php if ($parent && $parent->hasIterator()) : ?>
62 <?php
63 $parent_closed = true;
64 ?>
65
66 </ul>
67 <?php foreach ($parent as $sub) : ?>
68 <?php
69 if ($sub->getName() === $entry->getName()) {
70 continue;
71 }
72 ?>
73
74 <li>&ldsh; <a href="<?= $up.$esc($sub->getName()) ?>"><?= $esc($sub) ?></a></li>
75 <?php endforeach; ?>
76 <?php endif; ?>
77 <?php endif; ?>
78 <?php foreach ($entry->getParents() as $parent) : ?>
79 <?php if (!empty($parent_closed)) : ?>
80 <?php
81 $parent_closed = false;
82 ?>
83 <?php elseif ($parent->isFile()) : ?>
84 <?php if (isset($parent_closed)) : ?>
85 <?php
86 unset($parent_closed);
87 ?>
88 <?php else : ?>
89
90 </li>
91 <?php endif; ?>
92
93 </ul>
94 <?php endif; ?>
95 <?php endforeach; ?>
96
97 </li>
98 </ul>
99 <?php elseif (isset($refs)) : ?>
100
101 <ul>
102 <?php foreach ($refs as $repo) : /* @var \mdref\Repo $repo */ ?>
103 <?php foreach ($repo as $sub) : /* @var \mdref\Entry $entry */ ?>
104
105 <li>
106 &rdsh; <a href="<?= $esc($sub->getName()) ?>"
107 ><?= $esc($sub->getTitle()) ?></a>
108 </li>
109 <?php endforeach; ?>
110 <?php endforeach; ?>
111
112 </ul>
113 <?php endif; ?>
114
115 </li>
116 </ul>
117 </div>