1
0
mirror of https://github.com/osmarks/mycorrhiza.git synced 2024-12-13 05:50:27 +00:00
mycorrhiza/views/stuff.qtpl.go
handlerug b87583ef28
Drop fixed authorization
Important changes:
- UseFixedAuth is now UseAuth and toggles all kinds of authorization and
  registration
- UseRegistration is now AllowRegistration to better reflect the meaning
- LimitRegistration is now RegistrationLimit because it's not a boolean,
  it's a value (not "limit registration?", but "registration limit is
  ...")
- registered-users.json is now users.json, because all users are stored
  there
- user.AuthUsed is dropped in favor of new cfg.UseAuth which has the
  same meaning

I hope I have not forgotten anything.
2021-07-02 15:20:03 +07:00

511 lines
12 KiB
Go

// Code generated by qtc from "stuff.qtpl". DO NOT EDIT.
// See https://github.com/valyala/quicktemplate for details.
//line views/stuff.qtpl:1
package views
//line views/stuff.qtpl:1
import "path/filepath"
//line views/stuff.qtpl:2
import "github.com/bouncepaw/mycorrhiza/cfg"
//line views/stuff.qtpl:3
import "github.com/bouncepaw/mycorrhiza/hyphae"
//line views/stuff.qtpl:4
import "github.com/bouncepaw/mycorrhiza/user"
//line views/stuff.qtpl:5
import "github.com/bouncepaw/mycorrhiza/util"
//line views/stuff.qtpl:7
import (
qtio422016 "io"
qt422016 "github.com/valyala/quicktemplate"
)
//line views/stuff.qtpl:7
var (
_ = qtio422016.Copy
_ = qt422016.AcquireByteBuffer
)
//line views/stuff.qtpl:7
func StreamBaseHTML(qw422016 *qt422016.Writer, title, body string, u *user.User, headElements ...string) {
//line views/stuff.qtpl:7
qw422016.N().S(`
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>`)
//line views/stuff.qtpl:13
qw422016.E().S(title)
//line views/stuff.qtpl:13
qw422016.N().S(`</title>
<link rel="shortcut icon" href="/static/favicon.ico">
<link rel="stylesheet" href="/static/style.css">
<script src="/static/shortcuts.js"></script>
`)
//line views/stuff.qtpl:17
for _, el := range headElements {
//line views/stuff.qtpl:17
qw422016.N().S(el)
//line views/stuff.qtpl:17
}
//line views/stuff.qtpl:17
qw422016.N().S(`
</head>
<body>
<header>
<nav class="header-links main-width">
<ul class="header-links__list">
`)
//line views/stuff.qtpl:23
for _, link := range cfg.HeaderLinks {
//line views/stuff.qtpl:23
qw422016.N().S(` <li class="header-links__entry"><a class="header-links__link" href="`)
//line views/stuff.qtpl:24
qw422016.E().S(link.Href)
//line views/stuff.qtpl:24
qw422016.N().S(`">`)
//line views/stuff.qtpl:24
qw422016.E().S(link.Display)
//line views/stuff.qtpl:24
qw422016.N().S(`</a></li>
`)
//line views/stuff.qtpl:25
}
//line views/stuff.qtpl:25
qw422016.N().S(` `)
//line views/stuff.qtpl:26
qw422016.N().S(UserMenuHTML(u))
//line views/stuff.qtpl:26
qw422016.N().S(`
</ul>
</nav>
</header>
`)
//line views/stuff.qtpl:30
qw422016.N().S(body)
//line views/stuff.qtpl:30
qw422016.N().S(`
<template id="dialog-template">
<div class="dialog-backdrop"></div>
<div class="dialog" tabindex="0">
<div class="dialog__header">
<h1 class="dialog__title"></h1>
<button class="dialog__close-button" aria-label="Close this dialog"></button>
</div>
<div class="dialog__content"></div>
</div>
</template>
`)
//line views/stuff.qtpl:42
StreamCommonScripts(qw422016)
//line views/stuff.qtpl:42
qw422016.N().S(`
</body>
</html>
`)
//line views/stuff.qtpl:45
}
//line views/stuff.qtpl:45
func WriteBaseHTML(qq422016 qtio422016.Writer, title, body string, u *user.User, headElements ...string) {
//line views/stuff.qtpl:45
qw422016 := qt422016.AcquireWriter(qq422016)
//line views/stuff.qtpl:45
StreamBaseHTML(qw422016, title, body, u, headElements...)
//line views/stuff.qtpl:45
qt422016.ReleaseWriter(qw422016)
//line views/stuff.qtpl:45
}
//line views/stuff.qtpl:45
func BaseHTML(title, body string, u *user.User, headElements ...string) string {
//line views/stuff.qtpl:45
qb422016 := qt422016.AcquireByteBuffer()
//line views/stuff.qtpl:45
WriteBaseHTML(qb422016, title, body, u, headElements...)
//line views/stuff.qtpl:45
qs422016 := string(qb422016.B)
//line views/stuff.qtpl:45
qt422016.ReleaseByteBuffer(qb422016)
//line views/stuff.qtpl:45
return qs422016
//line views/stuff.qtpl:45
}
//line views/stuff.qtpl:47
func StreamUserListHTML(qw422016 *qt422016.Writer) {
//line views/stuff.qtpl:47
qw422016.N().S(`
<div class="layout">
<main class="main-width user-list">
<h1>List of users</h1>
`)
//line views/stuff.qtpl:52
var (
admins = make([]string, 0)
moderators = make([]string, 0)
editors = make([]string, 0)
)
for u := range user.YieldUsers() {
switch u.Group {
case "admin":
admins = append(admins, u.Name)
case "moderator":
moderators = append(moderators, u.Name)
case "editor", "trusted":
editors = append(editors, u.Name)
}
}
//line views/stuff.qtpl:67
qw422016.N().S(`
<section>
<h2>Admins</h2>
<ol>`)
//line views/stuff.qtpl:70
for _, name := range admins {
//line views/stuff.qtpl:70
qw422016.N().S(`
<li><a href="/hypha/`)
//line views/stuff.qtpl:71
qw422016.E().S(cfg.UserHypha)
//line views/stuff.qtpl:71
qw422016.N().S(`/`)
//line views/stuff.qtpl:71
qw422016.E().S(name)
//line views/stuff.qtpl:71
qw422016.N().S(`">`)
//line views/stuff.qtpl:71
qw422016.E().S(name)
//line views/stuff.qtpl:71
qw422016.N().S(`</a></li>
`)
//line views/stuff.qtpl:72
}
//line views/stuff.qtpl:72
qw422016.N().S(`</ol>
</section>
<section>
<h2>Moderators</h2>
<ol>`)
//line views/stuff.qtpl:76
for _, name := range moderators {
//line views/stuff.qtpl:76
qw422016.N().S(`
<li><a href="/hypha/`)
//line views/stuff.qtpl:77
qw422016.E().S(cfg.UserHypha)
//line views/stuff.qtpl:77
qw422016.N().S(`/`)
//line views/stuff.qtpl:77
qw422016.E().S(name)
//line views/stuff.qtpl:77
qw422016.N().S(`">`)
//line views/stuff.qtpl:77
qw422016.E().S(name)
//line views/stuff.qtpl:77
qw422016.N().S(`</a></li>
`)
//line views/stuff.qtpl:78
}
//line views/stuff.qtpl:78
qw422016.N().S(`</ol>
</section>
<section>
<h2>Editors</h2>
<ol>`)
//line views/stuff.qtpl:82
for _, name := range editors {
//line views/stuff.qtpl:82
qw422016.N().S(`
<li><a href="/hypha/`)
//line views/stuff.qtpl:83
qw422016.E().S(cfg.UserHypha)
//line views/stuff.qtpl:83
qw422016.N().S(`/`)
//line views/stuff.qtpl:83
qw422016.E().S(name)
//line views/stuff.qtpl:83
qw422016.N().S(`">`)
//line views/stuff.qtpl:83
qw422016.E().S(name)
//line views/stuff.qtpl:83
qw422016.N().S(`</a></li>
`)
//line views/stuff.qtpl:84
}
//line views/stuff.qtpl:84
qw422016.N().S(`</ol>
</section>
</main>
</div>
`)
//line views/stuff.qtpl:88
}
//line views/stuff.qtpl:88
func WriteUserListHTML(qq422016 qtio422016.Writer) {
//line views/stuff.qtpl:88
qw422016 := qt422016.AcquireWriter(qq422016)
//line views/stuff.qtpl:88
StreamUserListHTML(qw422016)
//line views/stuff.qtpl:88
qt422016.ReleaseWriter(qw422016)
//line views/stuff.qtpl:88
}
//line views/stuff.qtpl:88
func UserListHTML() string {
//line views/stuff.qtpl:88
qb422016 := qt422016.AcquireByteBuffer()
//line views/stuff.qtpl:88
WriteUserListHTML(qb422016)
//line views/stuff.qtpl:88
qs422016 := string(qb422016.B)
//line views/stuff.qtpl:88
qt422016.ReleaseByteBuffer(qb422016)
//line views/stuff.qtpl:88
return qs422016
//line views/stuff.qtpl:88
}
//line views/stuff.qtpl:90
func StreamHyphaListHTML(qw422016 *qt422016.Writer) {
//line views/stuff.qtpl:90
qw422016.N().S(`
<div class="layout">
<main class="main-width">
<h1>List of hyphae</h1>
<p>This wiki has `)
//line views/stuff.qtpl:94
qw422016.N().D(hyphae.Count())
//line views/stuff.qtpl:94
qw422016.N().S(` hyphae.</p>
<ul class="hypha-list">
`)
//line views/stuff.qtpl:96
for h := range hyphae.YieldExistingHyphae() {
//line views/stuff.qtpl:96
qw422016.N().S(`
<li class="hypha-list__entry">
<a class="hypha-list__link" href="/hypha/`)
//line views/stuff.qtpl:98
qw422016.E().S(h.Name)
//line views/stuff.qtpl:98
qw422016.N().S(`">`)
//line views/stuff.qtpl:98
qw422016.E().S(util.BeautifulName(h.Name))
//line views/stuff.qtpl:98
qw422016.N().S(`</a>
`)
//line views/stuff.qtpl:99
if h.BinaryPath != "" {
//line views/stuff.qtpl:99
qw422016.N().S(`
<span class="hypha-list__amnt-type">`)
//line views/stuff.qtpl:100
qw422016.E().S(filepath.Ext(h.BinaryPath)[1:])
//line views/stuff.qtpl:100
qw422016.N().S(`</span>
`)
//line views/stuff.qtpl:101
}
//line views/stuff.qtpl:101
qw422016.N().S(`
</li>
`)
//line views/stuff.qtpl:103
}
//line views/stuff.qtpl:103
qw422016.N().S(`
</ul>
</main>
</div>
`)
//line views/stuff.qtpl:107
}
//line views/stuff.qtpl:107
func WriteHyphaListHTML(qq422016 qtio422016.Writer) {
//line views/stuff.qtpl:107
qw422016 := qt422016.AcquireWriter(qq422016)
//line views/stuff.qtpl:107
StreamHyphaListHTML(qw422016)
//line views/stuff.qtpl:107
qt422016.ReleaseWriter(qw422016)
//line views/stuff.qtpl:107
}
//line views/stuff.qtpl:107
func HyphaListHTML() string {
//line views/stuff.qtpl:107
qb422016 := qt422016.AcquireByteBuffer()
//line views/stuff.qtpl:107
WriteHyphaListHTML(qb422016)
//line views/stuff.qtpl:107
qs422016 := string(qb422016.B)
//line views/stuff.qtpl:107
qt422016.ReleaseByteBuffer(qb422016)
//line views/stuff.qtpl:107
return qs422016
//line views/stuff.qtpl:107
}
//line views/stuff.qtpl:109
func StreamAboutHTML(qw422016 *qt422016.Writer) {
//line views/stuff.qtpl:109
qw422016.N().S(`
<div class="layout">
<main class="main-width">
<section>
<h1>About `)
//line views/stuff.qtpl:113
qw422016.E().S(cfg.WikiName)
//line views/stuff.qtpl:113
qw422016.N().S(`</h1>
<ul>
<li><b><a href="https://mycorrhiza.lesarbr.es">Mycorrhiza Wiki</a> version:</b> 1.3.0</li>
`)
//line views/stuff.qtpl:116
if cfg.UseAuth {
//line views/stuff.qtpl:116
qw422016.N().S(` <li><b>User count:</b> `)
//line views/stuff.qtpl:117
qw422016.N().DUL(user.Count())
//line views/stuff.qtpl:117
qw422016.N().S(`</li>
<li><b>Home page:</b> <a href="/">`)
//line views/stuff.qtpl:118
qw422016.E().S(cfg.HomeHypha)
//line views/stuff.qtpl:118
qw422016.N().S(`</a></li>
<li><b>Administrators:</b>`)
//line views/stuff.qtpl:119
for i, username := range user.ListUsersWithGroup("admin") {
//line views/stuff.qtpl:120
if i > 0 {
//line views/stuff.qtpl:120
qw422016.N().S(`<span aria-hidden="true">, </span>
`)
//line views/stuff.qtpl:121
}
//line views/stuff.qtpl:121
qw422016.N().S(` <a href="/hypha/`)
//line views/stuff.qtpl:122
qw422016.E().S(cfg.UserHypha)
//line views/stuff.qtpl:122
qw422016.N().S(`/`)
//line views/stuff.qtpl:122
qw422016.E().S(username)
//line views/stuff.qtpl:122
qw422016.N().S(`">`)
//line views/stuff.qtpl:122
qw422016.E().S(username)
//line views/stuff.qtpl:122
qw422016.N().S(`</a>`)
//line views/stuff.qtpl:122
}
//line views/stuff.qtpl:122
qw422016.N().S(`</li>
`)
//line views/stuff.qtpl:123
} else {
//line views/stuff.qtpl:123
qw422016.N().S(` <li>This wiki does not use authorization</li>
`)
//line views/stuff.qtpl:125
}
//line views/stuff.qtpl:125
qw422016.N().S(` </ul>
<p>See <a href="/list">/list</a> for information about hyphae on this wiki.</p>
</section>
</main>
</div>
`)
//line views/stuff.qtpl:131
}
//line views/stuff.qtpl:131
func WriteAboutHTML(qq422016 qtio422016.Writer) {
//line views/stuff.qtpl:131
qw422016 := qt422016.AcquireWriter(qq422016)
//line views/stuff.qtpl:131
StreamAboutHTML(qw422016)
//line views/stuff.qtpl:131
qt422016.ReleaseWriter(qw422016)
//line views/stuff.qtpl:131
}
//line views/stuff.qtpl:131
func AboutHTML() string {
//line views/stuff.qtpl:131
qb422016 := qt422016.AcquireByteBuffer()
//line views/stuff.qtpl:131
WriteAboutHTML(qb422016)
//line views/stuff.qtpl:131
qs422016 := string(qb422016.B)
//line views/stuff.qtpl:131
qt422016.ReleaseByteBuffer(qb422016)
//line views/stuff.qtpl:131
return qs422016
//line views/stuff.qtpl:131
}
//line views/stuff.qtpl:133
func StreamCommonScripts(qw422016 *qt422016.Writer) {
//line views/stuff.qtpl:133
qw422016.N().S(`
`)
//line views/stuff.qtpl:134
for _, scriptPath := range cfg.CommonScripts {
//line views/stuff.qtpl:134
qw422016.N().S(`
<script src="`)
//line views/stuff.qtpl:135
qw422016.E().S(scriptPath)
//line views/stuff.qtpl:135
qw422016.N().S(`"></script>
`)
//line views/stuff.qtpl:136
}
//line views/stuff.qtpl:136
qw422016.N().S(`
`)
//line views/stuff.qtpl:137
}
//line views/stuff.qtpl:137
func WriteCommonScripts(qq422016 qtio422016.Writer) {
//line views/stuff.qtpl:137
qw422016 := qt422016.AcquireWriter(qq422016)
//line views/stuff.qtpl:137
StreamCommonScripts(qw422016)
//line views/stuff.qtpl:137
qt422016.ReleaseWriter(qw422016)
//line views/stuff.qtpl:137
}
//line views/stuff.qtpl:137
func CommonScripts() string {
//line views/stuff.qtpl:137
qb422016 := qt422016.AcquireByteBuffer()
//line views/stuff.qtpl:137
WriteCommonScripts(qb422016)
//line views/stuff.qtpl:137
qs422016 := string(qb422016.B)
//line views/stuff.qtpl:137
qt422016.ReleaseByteBuffer(qb422016)
//line views/stuff.qtpl:137
return qs422016
//line views/stuff.qtpl:137
}