1
0
mirror of https://github.com/osmarks/mycorrhiza.git synced 2024-10-30 19:56:16 +00:00
mycorrhiza/views/hypha.qtpl
2021-04-04 22:22:14 +05:00

64 lines
1.8 KiB
Plaintext

{% import "path/filepath" %}
{% import "strings" %}
{% import "github.com/bouncepaw/mycorrhiza/hyphae" %}
{% import "github.com/bouncepaw/mycorrhiza/util" %}
{% func NaviTitleHTML(h *hyphae.Hypha) %}
{% code
var (
prevAcc = "/hypha/"
parts = strings.Split(h.Name, "/")
)
%}
<h1 class="navi-title">
{% stripspace %}
<a href="/hypha/{%s util.HomePage %}">
{%-s= util.SiteNavIcon -%}
<span aria-hidden="true" class="navi-title__colon">:</span>
</a>
{% for i, part := range parts %}
{% if i > 0 %}
<span aria-hidden="true" class="navi-title__separator">/</span>
{% endif %}
<a href="{%s prevAcc + part %}" rel="{% if i == len(parts) - 1 %}bookmark{% else %}up{% endif %}">
{%s= util.BeautifulName(part) %}
</a>
{% code prevAcc += part + "/" %}
{% endfor %}
{% endstripspace %}
</h1>
{% endfunc %}
{% func AttachmentHTML(h *hyphae.Hypha) %}
{% switch filepath.Ext(h.BinaryPath) %}
{% case ".jpg", ".gif", ".png", ".webp", ".svg", ".ico" %}
<div class="binary-container binary-container_with-img">
<a href="/binary/{%s= h.Name %}"><img src="/binary/{%s= h.Name %}"/></a>
</div>
{% case ".ogg", ".webm", ".mp4" %}
<div class="binary-container binary-container_with-video">
<video controls>
<source src="/binary/{%s= h.Name %}"/>
<p>Your browser does not support video. <a href="/binary/{%s= h.Name %}">Download video</a></p>
</video>
</div>
{% case ".mp3" %}
<div class="binary-container binary-container_with-audio">
<audio controls>
<source src="/binary/{%s= h.Name %}"/>
<p>Your browser does not support audio. <a href="/binary/{%s= h.Name %}">Download audio</a></p>
</audio>
</div>
{% default %}
<div class="binary-container binary-container_with-nothing">
<p><a href="/binary/{%s= h.Name %}">Download media</a></p>
</div>
{% endswitch %}
{% endfunc %}