{% import "fmt" %} {% import "net/http" %} {% import "time" %} {% import "github.com/bouncepaw/mycorrhiza/cfg" %} {% import "github.com/bouncepaw/mycorrhiza/user" %} {% import "github.com/bouncepaw/mycorrhiza/hyphae" %} {% import "github.com/bouncepaw/mycorrhiza/history" %} {% func PrimitiveDiffHTML(rq *http.Request, h *hyphae.Hypha, u *user.User, hash string) %} {% code text, err := history.PrimitiveDiffAtRevision(h.TextPartPath(), hash) if err != nil { text = err.Error() } %}

Diff {%s= beautifulLink(h.Name) %} at {%s hash %}

{%s text %}
{% endfunc %} {% func RecentChangesHTML(n int) %}

Recent Changes

Subscribe via RSS, Atom or JSON feed.

{% comment %} Here I am, willing to add some accessibility using ARIA. Turns out, role="feed" is not supported in any screen reader as of September 2020. At least web search says so. Even JAWS doesn't support it! How come? I'll add the role anyway. -- bouncepaw {% endcomment %} {% code changes := history.RecentChanges(n) var year, day int var month time.Month %}
{% if len(changes) == 0 %}

Could not find any recent changes.

{% else %} {% for i, entry := range changes %} {% code y, m, d := entry.Time.UTC().Date() %} {% if d != day || m != month || y != year %}

{%s fmt.Sprintf("%04d-%02d-%02d", y, m, d) %}

{% code year, month, day = y, m, d %} {% endif %}
{%s= recentChangesEntry(entry) %}
{% endfor %} {% endif %} {%s= helpTopicBadgeHTML("en", "recent_changes") %}
{% endfunc %} {% func recentChangesEntry(rev history.Revision) %}
{%s rev.Hash %} {% if rev.Username != "anon" %} {% endif %}
{%s= rev.HyphaeLinksHTML() %} {%s rev.Message %}
{% endfunc %} {% func HistoryHTML(rq *http.Request, hyphaName, list string) %}

History of {%s= beautifulLink(hyphaName) %}

{%s= list %}
{% endfunc %}