mirror of
https://github.com/osmarks/mycorrhiza.git
synced 2024-10-30 19:56:16 +00:00
56 lines
1.5 KiB
Plaintext
56 lines
1.5 KiB
Plaintext
{% import "sort" %}
|
|
{% import "path" %}
|
|
{% import "github.com/bouncepaw/mycorrhiza/util" %}
|
|
|
|
{% func TreeHTML() %}
|
|
{% endfunc %}
|
|
|
|
Subhyphae links are recursive. It may end up looking like that if drawn with
|
|
pseudographics:
|
|
╔══════════════╗
|
|
║Foo ║ The presented hyphae are foo and foo/bar
|
|
║╔════════════╗║
|
|
║║Bar ║║
|
|
║╚════════════╝║
|
|
╚══════════════╝
|
|
{% func childHTML(c *child) %}
|
|
{% code
|
|
sort.Slice(c.children, func(i, j int) bool {
|
|
return c.children[i].name < c.children[j].name
|
|
})
|
|
%}
|
|
<li class="subhyphae__entry">
|
|
<a class="subhyphae__link" href="/hypha/{%s c.name %}">
|
|
{%s util.BeautifulName(path.Base(c.name)) %}
|
|
</a>
|
|
{% if len(c.children) > 0 %}
|
|
<ul>
|
|
{% for _, child := range c.children %}
|
|
{%s= childHTML(&child) %}
|
|
{% endfor %}
|
|
</ul>
|
|
{% endif %}
|
|
</li>
|
|
{% endfunc %}
|
|
|
|
|
|
{% func siblingHTML(s *sibling) %}
|
|
<li class="relative-hyphae__entry">
|
|
<a class="relative-hyphae__link" href="/hypha/{%s s.name %}">
|
|
{%s util.BeautifulName(path.Base(s.name)) %}
|
|
<span class="relative-hyphae__count">
|
|
{% if s.directSubhyphaeCount > 0 %}
|
|
<span class="relative-hyphae__direct-count">
|
|
{%d s.directSubhyphaeCount %}
|
|
</span>
|
|
{% endif %}
|
|
{% if s.indirectSubhyphaeCount > 0 %}
|
|
<span class="relative-hyphae__indirect-count">
|
|
({%d s.indirectSubhyphaeCount %})
|
|
</span>
|
|
{% endif %}
|
|
</span>
|
|
</a>
|
|
</li>
|
|
{% endfunc %}
|