+6
-2
appview/pages/pages.go
+6
-2
appview/pages/pages.go
···
37
37
38
38
if !strings.HasPrefix(path, "templates/layouts/") {
39
39
// Add the page template on top of the base
40
-
tmpl, err := template.New(name).ParseFS(files, path, "templates/layouts/*.html")
40
+
tmpl, err := template.New(name).ParseFS(files, "templates/layouts/*.html", path)
41
41
if err != nil {
42
42
return fmt.Errorf("setting up template: %w", err)
43
43
}
···
68
68
return p.t[name].ExecuteTemplate(w, "layouts/base", params)
69
69
}
70
70
71
+
func (p *Pages) executePlain(name string, w io.Writer, params any) error {
72
+
return p.t[name].Execute(w, params)
73
+
}
74
+
71
75
func (p *Pages) executeRepo(name string, w io.Writer, params any) error {
72
76
return p.t[name].ExecuteTemplate(w, "layouts/repoBase", params)
73
77
}
74
78
75
79
func (p *Pages) Login(w io.Writer, params LoginParams) error {
76
-
return p.execute("user/login", w, params)
80
+
return p.executePlain("user/login", w, params)
77
81
}
78
82
79
83
type TimelineParams struct {
+1
-1
appview/pages/templates/layouts/base.html
+1
-1
appview/pages/templates/layouts/base.html
+1
appview/pages/templates/layouts/topbar.html
+1
appview/pages/templates/layouts/topbar.html
+27
-11
appview/pages/templates/user/login.html
+27
-11
appview/pages/templates/user/login.html
···
1
-
{{ define "title" }}login{{end}}
1
+
{{ define "user/login" }}
2
+
<!doctype html>
3
+
<html lang="en">
4
+
<head>
5
+
<meta charset="UTF-8" />
6
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+
<script
8
+
src="https://unpkg.com/htmx.org@2.0.4"
9
+
integrity="sha384-HGfztofotfshcF7+8n44JQL2oJmowVChPTg48S+jvZoztPfvwD79OC/LTtG6dMp+"
10
+
crossorigin="anonymous"
11
+
></script>
12
+
<title>login</title>
13
+
</head>
14
+
<body>
15
+
<main class="content">
16
+
<h1>login</h1>
17
+
<form method="POST" action="/login">
18
+
<label for="handle">handle</label>
19
+
<input type="text" id="handle" name="handle" required />
2
20
3
-
{{define "content"}}
4
-
<h1>login</h1>
5
-
<form method="POST" action="/login">
6
-
<label for="handle">handle</label>
7
-
<input type="text" id="handle" name="handle" required />
21
+
<label for="app_password">app password</label>
22
+
<input type="password" id="app_password" name="app_password" required />
8
23
9
-
<label for="app_password">app password</label>
10
-
<input type="password" id="app_password" name="app_password" required />
24
+
<button type="submit">login</button>
25
+
</form>
26
+
</main>
27
+
</body>
28
+
</html>
11
29
12
-
<button type="submit">login</button>
13
-
</form>
14
-
{{end}}
30
+
{{ end }}