Browse Source

[feature] Add page-specific class per template (#3814)

* [feature] Add page-specific class per template

* cheeky bit cheaper
pull/3821/head v0.18.0-rc3
tobi 1 year ago committed by GitHub
parent
commit
8829ee187a
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 10
      internal/api/util/template.go
  2. 4
      internal/web/confirmemail.go
  3. 2
      internal/web/login-info.go
  4. 0
      web/template/confirm-email.tmpl
  5. 0
      web/template/confirmed-email.tmpl
  6. 0
      web/template/login-info.tmpl
  7. 4
      web/template/page.tmpl

10
internal/api/util/template.go

@ -236,6 +236,16 @@ func templatePage(
obj map[string]any,
) {
const pageTmpl = "page.tmpl"
// Render given template inside the page.
obj["pageContent"] = template
// Inject specific page class by trimming
// ".tmpl" suffix. In the page template
// (see page.tmpl) this will be appended
// with "-page", so "index.tmpl" for example
// ends up with class "page index-page".
obj["pageClass"] = template[:len(template)-5]
c.HTML(code, pageTmpl, obj)
}

4
internal/web/confirmemail.go

@ -77,7 +77,7 @@ func (m *Module) confirmEmailGETHandler(c *gin.Context) {
// Serve page where user can click button
// to POST confirmation to same endpoint.
page := apiutil.WebPage{
Template: "confirm_email.tmpl",
Template: "confirm-email.tmpl",
Instance: instance,
Extra: map[string]any{
"email": email,
@ -127,7 +127,7 @@ func (m *Module) confirmEmailPOSTHandler(c *gin.Context) {
// Serve page informing user that their
// email address is now confirmed.
page := apiutil.WebPage{
Template: "confirmed_email.tmpl",
Template: "confirmed-email.tmpl",
Instance: instance,
Extra: map[string]any{
"email": user.Email,

2
internal/web/login-info.go

@ -50,7 +50,7 @@ func (m *Module) loginGETHandler(c *gin.Context) {
}
page := apiutil.WebPage{
Template: "login_info.tmpl",
Template: "login-info.tmpl",
Instance: instance,
OGMeta: apiutil.OGBase(instance),
Stylesheets: []string{cssAbout, cssLoginInfo},

0
web/template/confirm_email.tmpl → web/template/confirm-email.tmpl

0
web/template/confirmed_email.tmpl → web/template/confirmed-email.tmpl

0
web/template/login_info.tmpl → web/template/login-info.tmpl

4
web/template/page.tmpl

@ -71,9 +71,8 @@ image/webp
{{- end }}
<title>{{- template "instanceTitle" . -}}</title>
</head>
<body>
<body class="page{{- if .pageClass }} {{ .pageClass }}-page{{- end -}}">
{{- include "login_button.tmpl" . | indent 3 }}
<div class="page">
<header class="page-header">
{{- include "page_header.tmpl" . | indent 3 }}
</header>
@ -83,6 +82,5 @@ image/webp
<footer class="page-footer">
{{- include "page_footer.tmpl" . | indent 3 }}
</footer>
</div>
</body>
</html>
Loading…
Cancel
Save