aboutsummaryrefslogtreecommitdiffstats
path: root/internal/web/templates/dashboard/module_form.html
diff options
context:
space:
mode:
Diffstat (limited to 'internal/web/templates/dashboard/module_form.html')
-rw-r--r--internal/web/templates/dashboard/module_form.html34
1 files changed, 34 insertions, 0 deletions
diff --git a/internal/web/templates/dashboard/module_form.html b/internal/web/templates/dashboard/module_form.html
new file mode 100644
index 0000000..b63b405
--- /dev/null
+++ b/internal/web/templates/dashboard/module_form.html
@@ -0,0 +1,34 @@
+{{define "title"}}{{.Data.name}} · {{.Blog.Title}}{{end}}
+{{define "content"}}
+{{$m := .Data.module}}
+<div class="card">
+ <h1>{{.Data.name}} <span class="muted small">in the {{lower .Data.area}}</span></h1>
+ <form method="post">
+ <input type="hidden" name="_csrf" value="{{.CSRF}}">
+ {{if or (eq $m.Kind "recent") (eq $m.Kind "archive") (eq $m.Kind "sitemap") (and (eq $m.Kind "html") (or (eq $m.Area "left") (eq $m.Area "right") (eq $m.Area "footer")))}}
+ <label>Heading <span class="muted">(optional)</span><br><input name="title" value="{{$m.Title}}" maxlength="120" placeholder="{{if eq $m.Kind "recent"}}Recent posts{{else if eq $m.Kind "archive"}}Archive{{else if eq $m.Kind "sitemap"}}Pages{{end}}"></label>
+ {{end}}
+ {{if eq $m.Kind "recent"}}
+ <div class="row"><label>How many posts<br><select name="count">{{range $n := .Data.counts}}<option value="{{$n}}"{{if eq $n $m.Count}} selected{{end}}>{{$n}}</option>{{end}}</select></label></div>
+ <p class="muted small">The newest published posts from every page of your blog, newest first.</p>
+ {{else if eq $m.Kind "archive"}}
+ <p class="muted small">Every published post grouped by year and month, newest first. Years and months fold open and shut; the latest year starts open.</p>
+ {{else if eq $m.Kind "sitemap"}}
+ <p class="muted small">Links to every page of your blog.</p>
+ {{else if eq $m.Kind "html"}}
+ <label for="mod-body">HTML</label>
+ <textarea id="mod-body" name="body" rows="14" class="mono" spellcheck="false" placeholder="&lt;p&gt;Hello!&lt;/p&gt;">{{$m.Body}}</textarea>
+ <p class="muted small">Put into your page exactly as written — embeds, badges and scripts all work. Anything broken here (an unclosed tag, say) can break the page around it, so check your blog after saving. 20 KB at most.</p>
+ {{else if eq $m.Kind "text"}}
+ <label for="mod-body">Text</label>
+ <textarea id="mod-body" name="body" rows="4" placeholder="© 2026 Me">{{$m.Body}}</textarea>
+ <p class="muted small">Plain text; each line becomes its own paragraph.</p>
+ {{end}}
+ <p class="actionrow">
+ <button type="submit">Save</button>
+ <a class="btn secondary" href="{{.BlogURL}}" target="_blank">View blog &#8599;</a>
+ <a href="/b/{{.Blog.Subdomain}}/layout#{{if or (eq $m.Area "above") (eq $m.Area "below")}}main{{else}}{{$m.Area}}{{end}}">Back to layout</a>
+ </p>
+ </form>
+</div>
+{{end}}