Sends a branded Resend email when a question receives its first answer, records accepted and failed sends, and adds collapsed answer editing with cancel behavior. Co-authored-by: codegirl-007 <s.raide@gmail.com>
38 lines
1.7 KiB
HTML
38 lines
1.7 KiB
HTML
{{define "question"}}
|
|
{{template "header" .}}
|
|
<main id="main" class="wrap question-page">
|
|
<p class="crumb"><a href="{{if eq .Question.HuntDate .Today}}/{{else}}/hunt/{{.Question.HuntDate}}{{end}}">← {{pacificLabel .Question.HuntDate}}</a></p>
|
|
<article class="q-detail">
|
|
{{template "vote" (voteCtx .User .CSRF "question" .Question.HuntDate .Question)}}
|
|
<div>
|
|
<h1>{{.Question.Title}}</h1>
|
|
<p class="meta">
|
|
<span>{{.Question.AuthorName}}</span>
|
|
{{if .Question.City}}<span class="dot" aria-hidden="true">·</span><span>{{.Question.City}}</span>{{end}}
|
|
<span class="dot" aria-hidden="true">·</span>
|
|
<a href="{{if eq .Question.HuntDate .Today}}/{{else}}/hunt/{{.Question.HuntDate}}{{end}}">{{.Question.HuntDate}}</a>
|
|
</p>
|
|
<p class="q-body">{{.Question.Body}}</p>
|
|
{{if isAdmin .User}}
|
|
<form method="post" action="/questions/{{.Question.ID}}/hide"
|
|
hx-post="/questions/{{.Question.ID}}/hide" hx-target="body">
|
|
<input type="hidden" name="_csrf" value="{{.CSRF}}">
|
|
<button type="submit" class="linkish">Hide this question</button>
|
|
</form>
|
|
{{end}}
|
|
</div>
|
|
</article>
|
|
{{template "answer" .}}
|
|
{{if and (isAdmin .User) (not .Answer)}}
|
|
<form class="answer-form" method="post" action="/questions/{{.Question.ID}}/answer"
|
|
hx-post="/questions/{{.Question.ID}}/answer" hx-target="#answer-block" hx-swap="outerHTML">
|
|
<input type="hidden" name="_csrf" value="{{.CSRF}}">
|
|
<label for="answer-body">Write the answer</label>
|
|
<textarea id="answer-body" name="body" rows="8" required maxlength="12000"></textarea>
|
|
<button type="submit" class="btn btn-primary">Save answer</button>
|
|
</form>
|
|
{{end}}
|
|
</main>
|
|
{{template "footer" .}}
|
|
{{end}}
|