internal/web/templates/snippet.html

51 lines · 3107 bytes

 1{{define "title"}}{{if .Snippet.Description}}{{.Snippet.Description}}{{else}}{{.Snippet.PublicID}}{{end}} · {{.Owner}}{{end}}
 2{{define "content"}}
 3<h1><a href="/{{.Owner}}">{{.Owner}}</a> / <a href="/{{.Owner}}/-/snippets">snippets</a> / {{.Snippet.PublicID}}</h1>
 4{{if .Snippet.Description}}<p class="desc lede">{{.Snippet.Description}}</p>{{end}}
 5<p class="meta"><span class="chip chip-neutral">{{.Snippet.Visibility}}</span> · updated {{when .Snippet.UpdatedAt}} · <code>gitbay snippet show {{.Snippet.PublicID}}</code></p>
 6{{if .Notice}}<p class="error" role="alert">{{.Notice}}</p>{{end}}
 7{{range .Files}}
 8<section class="snippetfile" id="file-{{.Name}}">
 9<div class="pathbar">
10  <span class="crumbs"><strong>{{.Name}}</strong></span>
11  <span class="spacer"></span>
12  <span class="actions"><a href="/{{$.Owner}}/-/snippets/{{$.Snippet.PublicID}}/raw/{{.Name}}">raw</a></span>
13</div>
14<p class="filefacts">{{.Lines}} lines · {{.Size}} bytes</p>
15{{if .TooLarge}}<p class="empty-note">too large to render here — <a href="/{{$.Owner}}/-/snippets/{{$.Snippet.PublicID}}/raw/{{.Name}}">raw</a></p>{{else}}<div class="code">{{.HTML}}</div>{{end}}
16{{if $.CanWrite}}<details class="editbox"><summary>edit {{.Name}}</summary>
17<form method="post" action="/{{$.Owner}}/-/snippets/{{$.Snippet.PublicID}}/file" class="commentform">
18<input type="hidden" name="name" value="{{.Name}}">
19<p><textarea name="content" aria-label="Content of {{.Name}}" rows="12">{{.Content}}</textarea></p>
20<p><button type="submit">Save</button></p>
21</form>
22<form method="post" action="/{{$.Owner}}/-/snippets/{{$.Snippet.PublicID}}/file/remove">
23<input type="hidden" name="name" value="{{.Name}}">
24<p>{{template "confirmfield" .Name}} <button type="submit">Remove {{.Name}}</button></p>
25</form>
26</details>{{end}}
27</section>
28{{end}}
29{{if .CanWrite}}
30<details class="editbox"><summary>add a file</summary>
31<form method="post" action="/{{.Owner}}/-/snippets/{{.Snippet.PublicID}}/file" class="commentform">
32<p><input type="text" name="name" aria-label="File name" placeholder="filename" required></p>
33<p><textarea name="content" aria-label="Content" rows="12" required></textarea></p>
34<p><button type="submit">Add file</button></p>
35</form></details>
36<details class="editbox"><summary>settings</summary>
37<form method="post" action="/{{.Owner}}/-/snippets/{{.Snippet.PublicID}}/edit">
38<p><input type="text" name="description" aria-label="Description" value="{{.Snippet.Description}}" placeholder="description"></p>
39<p><select name="visibility" aria-label="Visibility">
40<option value="public"{{if eq .Snippet.Visibility "public"}} selected{{end}}>public</option>
41<option value="unlisted"{{if eq .Snippet.Visibility "unlisted"}} selected{{end}}>unlisted</option>
42<option value="private"{{if eq .Snippet.Visibility "private"}} selected{{end}}>private</option>
43</select></p>
44<p><button type="submit">Save</button></p>
45</form>
46<form method="post" action="/{{.Owner}}/-/snippets/{{.Snippet.PublicID}}/delete">
47<p>{{template "confirmfield" .Snippet.PublicID}} <button type="submit">Delete snippet</button></p>
48</form>
49</details>
50{{end}}
51{{end}}