summaryrefslogtreecommitdiff
path: root/web/templates/page-notes.tmpl
diff options
context:
space:
mode:
Diffstat (limited to 'web/templates/page-notes.tmpl')
-rw-r--r--web/templates/page-notes.tmpl52
1 files changed, 52 insertions, 0 deletions
diff --git a/web/templates/page-notes.tmpl b/web/templates/page-notes.tmpl
new file mode 100644
index 0000000..ebd5865
--- /dev/null
+++ b/web/templates/page-notes.tmpl
@@ -0,0 +1,52 @@
+{{define "facet"}}<select name="{{.Name}}" aria-label="{{.Label}}">
+ <option value="">{{.Label}}</option>
+ {{range .Values}}<option value="{{.}}"{{if eq . $.Sel}} selected{{end}}>{{if $.Short}}{{short .}}…{{else}}{{.}}{{end}}</option>
+ {{end}}</select>{{end}}
+
+{{define "page-notes"}}
+<header class="filehead">
+ <h1>Notes</h1>
+ <p class="meta">
+ {{if eq .Scope "all"}}
+ all {{.Site.NotesTotal}} in the log, every change
+ {{else if .ScopeEmpty}}
+ all {{.Site.NotesTotal}} in the log — nothing was recorded at <code>{{short .ChangeID}}</code>
+ {{else}}
+ {{len .Site.Notes}} written at <code title="{{.ChangeID}}">{{short .ChangeID}}</code>{{if .Elsewhere}} ·
+ {{if .Live}}<a href="{{.ScopeHref "all"}}">{{.Elsewhere}} more at other changes</a>
+ {{else}}{{.Elsewhere}} more at other changes are not in this export{{end}}{{end}}
+ {{end}}
+ {{if .Live}} · anything you add here is appended to the private log sidecar at this change — the project working copy is never touched{{end}}
+ </p>
+</header>
+
+<section class="notespage">
+ {{if .Live}}
+ <details class="addnote">
+ <summary>add a note</summary>
+ {{template "noteform" .}}
+ </details>
+ {{end}}
+
+ <form class="filters" id="notefilters" method="get" action="{{.Href "notes"}}"
+ {{if .Live}}hx-get="{{.Href "notes-list"}}" hx-target="#notelist" hx-swap="innerHTML"
+ hx-trigger="input delay:250ms, change, search" hx-indicator="#notesbusy"{{end}}>
+ <input type="search" name="text" value="{{.Filter.Text}}" placeholder="search note text…" autocomplete="off">
+ <input type="search" name="file" value="{{.Filter.File}}" placeholder="file path…" list="filelist" autocomplete="off">
+ {{template "facet" (dict "Name" "agent" "Label" "any agent" "Values" .Facets.Agents "Sel" .Filter.Agent)}}
+ {{template "facet" (dict "Name" "model" "Label" "any model" "Values" .Facets.Models "Sel" .Filter.Model)}}
+ {{template "facet" (dict "Name" "session" "Label" "any session" "Values" .Facets.Sessions "Sel" .Filter.Session "Short" true)}}
+ {{template "facet" (dict "Name" "kind" "Label" "any kind" "Values" .Facets.Kinds "Sel" .Filter.Kind)}}
+ <span class="dates">
+ <label class="datef">from <input type="date" name="from" value="{{.Filter.From}}"></label>
+ <label class="datef">to <input type="date" name="to" value="{{.Filter.To}}"></label>
+ </span>
+ <button type="submit" class="nohx">filter</button>
+ <button type="button" id="clearfilters">clear</button>
+ </form>
+ <datalist id="filelist">{{range .Facets.Files}}<option value="{{.}}">{{end}}</datalist>
+
+ <p class="meta count"><span id="notesbusy" class="busy">·</span><span id="notecount">{{len .Notes}}</span> notes shown</p>
+ <div id="notelist">{{template "notelist" .}}</div>
+</section>
+{{end}}