2021-02-20 16:14:33 +00:00
|
|
|
// Code generated by qtc from "readers.qtpl". DO NOT EDIT.
|
|
|
|
// See https://github.com/valyala/quicktemplate for details.
|
|
|
|
|
|
|
|
//line views/readers.qtpl:1
|
|
|
|
package views
|
|
|
|
|
|
|
|
//line views/readers.qtpl:1
|
|
|
|
import "net/http"
|
|
|
|
|
|
|
|
//line views/readers.qtpl:2
|
2021-02-24 17:34:42 +00:00
|
|
|
import "strings"
|
|
|
|
|
|
|
|
//line views/readers.qtpl:3
|
2021-02-20 16:14:33 +00:00
|
|
|
import "path"
|
|
|
|
|
|
|
|
//line views/readers.qtpl:4
|
2021-02-24 17:34:42 +00:00
|
|
|
import "os"
|
2021-02-20 16:14:33 +00:00
|
|
|
|
|
|
|
//line views/readers.qtpl:6
|
2021-02-24 17:34:42 +00:00
|
|
|
import "github.com/bouncepaw/mycorrhiza/hyphae"
|
2021-02-20 16:14:33 +00:00
|
|
|
|
|
|
|
//line views/readers.qtpl:7
|
2021-02-24 17:34:42 +00:00
|
|
|
import "github.com/bouncepaw/mycorrhiza/mimetype"
|
|
|
|
|
|
|
|
//line views/readers.qtpl:8
|
2021-02-20 16:14:33 +00:00
|
|
|
import "github.com/bouncepaw/mycorrhiza/tree"
|
|
|
|
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:9
|
|
|
|
import "github.com/bouncepaw/mycorrhiza/user"
|
2021-02-20 16:14:33 +00:00
|
|
|
|
|
|
|
//line views/readers.qtpl:10
|
2021-02-24 17:34:42 +00:00
|
|
|
import "github.com/bouncepaw/mycorrhiza/util"
|
|
|
|
|
|
|
|
//line views/readers.qtpl:12
|
2021-02-20 16:14:33 +00:00
|
|
|
import (
|
|
|
|
qtio422016 "io"
|
|
|
|
|
|
|
|
qt422016 "github.com/valyala/quicktemplate"
|
|
|
|
)
|
|
|
|
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:12
|
2021-02-20 16:14:33 +00:00
|
|
|
var (
|
|
|
|
_ = qtio422016.Copy
|
|
|
|
_ = qt422016.AcquireByteBuffer
|
|
|
|
)
|
|
|
|
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:12
|
|
|
|
func StreamAttachmentMenuHTML(qw422016 *qt422016.Writer, rq *http.Request, h *hyphae.Hypha, u *user.User) {
|
|
|
|
//line views/readers.qtpl:12
|
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:13
|
|
|
|
StreamNavHTML(qw422016, rq, h.Name, "attachment")
|
|
|
|
//line views/readers.qtpl:13
|
|
|
|
qw422016.N().S(`
|
|
|
|
<div class="layout">
|
|
|
|
<main class="main-width">
|
|
|
|
<h1>Attachment of `)
|
|
|
|
//line views/readers.qtpl:16
|
|
|
|
qw422016.E().S(util.BeautifulName(h.Name))
|
|
|
|
//line views/readers.qtpl:16
|
|
|
|
qw422016.N().S(`</h1>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:17
|
|
|
|
if h.BinaryPath == "" {
|
|
|
|
//line views/readers.qtpl:17
|
|
|
|
qw422016.N().S(`
|
|
|
|
<p class="warning">This hypha has no attachment, you can upload it here.</p>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:19
|
|
|
|
} else {
|
|
|
|
//line views/readers.qtpl:19
|
|
|
|
qw422016.N().S(`
|
|
|
|
<p class="warning">You can manage the hypha's attachment on this page.</p>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:21
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:21
|
|
|
|
qw422016.N().S(`
|
|
|
|
|
|
|
|
<section class="amnt-grid">
|
|
|
|
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:25
|
|
|
|
if h.BinaryPath != "" {
|
|
|
|
//line views/readers.qtpl:25
|
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:27
|
|
|
|
mime := mimetype.FromExtension(path.Ext(h.BinaryPath))
|
|
|
|
fileinfo, err := os.Stat(h.BinaryPath)
|
|
|
|
|
|
|
|
//line views/readers.qtpl:28
|
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:29
|
|
|
|
if err == nil {
|
|
|
|
//line views/readers.qtpl:29
|
|
|
|
qw422016.N().S(`
|
|
|
|
<fieldset class="amnt-menu-block">
|
|
|
|
<legend class="modal__title modal__title_small">Stat</legend>
|
|
|
|
<p class="modal__confirmation-msg"><b>File size:</b> `)
|
|
|
|
//line views/readers.qtpl:32
|
|
|
|
qw422016.N().DL(fileinfo.Size())
|
|
|
|
//line views/readers.qtpl:32
|
|
|
|
qw422016.N().S(` bytes</p>
|
|
|
|
<p><b>MIME type:</b> `)
|
|
|
|
//line views/readers.qtpl:33
|
|
|
|
qw422016.E().S(mime)
|
|
|
|
//line views/readers.qtpl:33
|
|
|
|
qw422016.N().S(`</p>
|
|
|
|
</fieldset>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:35
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:35
|
|
|
|
qw422016.N().S(`
|
|
|
|
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:37
|
|
|
|
if strings.HasPrefix(mime, "image/") {
|
|
|
|
//line views/readers.qtpl:37
|
|
|
|
qw422016.N().S(`
|
|
|
|
<fieldset class="amnt-menu-block">
|
|
|
|
<legend class="modal__title modal__title_small">Include</legend>
|
2021-02-24 17:37:34 +00:00
|
|
|
<p class="modal__confirmation-msg">This attachment is an image. To include it n a hypha, use a syntax like this:</p>
|
2021-02-24 17:34:42 +00:00
|
|
|
<pre class="codebleck"><code>img { `)
|
|
|
|
//line views/readers.qtpl:41
|
|
|
|
qw422016.E().S(h.Name)
|
|
|
|
//line views/readers.qtpl:41
|
|
|
|
qw422016.N().S(` }</code></pre>
|
|
|
|
</fieldset>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:43
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:43
|
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:44
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:44
|
|
|
|
qw422016.N().S(`
|
|
|
|
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:46
|
|
|
|
if u.CanProceed("upload-binary") {
|
|
|
|
//line views/readers.qtpl:46
|
|
|
|
qw422016.N().S(`
|
|
|
|
<form action="/upload-binary/`)
|
|
|
|
//line views/readers.qtpl:47
|
|
|
|
qw422016.E().S(h.Name)
|
|
|
|
//line views/readers.qtpl:47
|
|
|
|
qw422016.N().S(`"
|
|
|
|
method="post" enctype="multipart/form-data"
|
|
|
|
class="modal amnt-menu-block">
|
|
|
|
<fieldset class="modal__fieldset upload-binary">
|
|
|
|
<legend class="modal__title modal__title_small">Attach</legend>
|
2021-02-24 17:37:34 +00:00
|
|
|
<p class="modal__confirmation-msg">You can upload a new attachment. Please do not upload too big pictures unless you need to because may not want to wait for big pictures to load.</p>
|
2021-02-24 17:34:42 +00:00
|
|
|
<input type="file" class="upload-binary__input" name="binary">
|
|
|
|
<input type="submit" class="modal__action modal__submit">
|
|
|
|
</fieldset>
|
|
|
|
</form>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:57
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:57
|
|
|
|
qw422016.N().S(`
|
|
|
|
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:59
|
|
|
|
if h.BinaryPath != "" && u.CanProceed("unattach-confirm") {
|
|
|
|
//line views/readers.qtpl:59
|
|
|
|
qw422016.N().S(`
|
|
|
|
<form action="/unattach-confirm/`)
|
|
|
|
//line views/readers.qtpl:60
|
|
|
|
qw422016.E().S(h.Name)
|
|
|
|
//line views/readers.qtpl:60
|
|
|
|
qw422016.N().S(`" method="post" class="modal amnt-menu-block">
|
|
|
|
<fieldset class="modal__fieldset">
|
|
|
|
<legend class="modal__title modal__title_small">Unattach</legend>
|
|
|
|
<p class="modal__confirmation-msg">Please note that you don't have to unattach before uploading a new attachment.</p>
|
|
|
|
<input type="submit" class="modal__action modal__submit">
|
|
|
|
</fieldset>
|
|
|
|
</form>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:67
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:67
|
|
|
|
qw422016.N().S(`
|
|
|
|
|
|
|
|
</section>
|
|
|
|
</main>
|
|
|
|
</div>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
}
|
|
|
|
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
func WriteAttachmentMenuHTML(qq422016 qtio422016.Writer, rq *http.Request, h *hyphae.Hypha, u *user.User) {
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
StreamAttachmentMenuHTML(qw422016, rq, h, u)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
qt422016.ReleaseWriter(qw422016)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
}
|
|
|
|
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
func AttachmentMenuHTML(rq *http.Request, h *hyphae.Hypha, u *user.User) string {
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
qb422016 := qt422016.AcquireByteBuffer()
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
WriteAttachmentMenuHTML(qb422016, rq, h, u)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
qs422016 := string(qb422016.B)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
qt422016.ReleaseByteBuffer(qb422016)
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
return qs422016
|
|
|
|
//line views/readers.qtpl:72
|
|
|
|
}
|
|
|
|
|
|
|
|
// If `contents` == "", a helpful message is shown instead.
|
|
|
|
|
|
|
|
//line views/readers.qtpl:75
|
2021-02-20 16:14:33 +00:00
|
|
|
func StreamHyphaHTML(qw422016 *qt422016.Writer, rq *http.Request, h *hyphae.Hypha, contents string) {
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:75
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:77
|
2021-02-20 16:14:33 +00:00
|
|
|
relatives, subhyphae, prevHyphaName, nextHyphaName := tree.Tree(h.Name)
|
|
|
|
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:78
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:79
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamNavHTML(qw422016, rq, h.Name, "page")
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:79
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
<div class="layout">
|
|
|
|
<main class="main-width">
|
|
|
|
<article>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:83
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(NaviTitleHTML(h))
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:83
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:84
|
2021-02-20 16:14:33 +00:00
|
|
|
if contents == "" {
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:84
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
<p>This hypha has no text. Why not <a href="/edit/`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:85
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.E().S(h.Name)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:85
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`">create it</a>?</p>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:86
|
|
|
|
if u := user.FromRequest(rq); (!user.AuthUsed || u.Group != "anon") && !h.Exists {
|
|
|
|
//line views/readers.qtpl:86
|
|
|
|
qw422016.N().S(`
|
|
|
|
<form action="/upload-binary/`)
|
|
|
|
//line views/readers.qtpl:87
|
|
|
|
qw422016.E().S(h.Name)
|
|
|
|
//line views/readers.qtpl:87
|
|
|
|
qw422016.N().S(`"
|
|
|
|
method="post" enctype="multipart/form-data"
|
|
|
|
class="upload-binary">
|
|
|
|
<label for="upload-binary__input">Upload an attachment:</label>
|
|
|
|
<input type="file" id="upload-binary__input" name="binary">
|
|
|
|
<input type="submit">
|
|
|
|
</form>
|
|
|
|
<br>
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:95
|
|
|
|
}
|
|
|
|
//line views/readers.qtpl:95
|
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
|
|
|
//line views/readers.qtpl:96
|
2021-02-20 16:14:33 +00:00
|
|
|
} else {
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:96
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:97
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(contents)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:97
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:98
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:98
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</article>
|
|
|
|
<section class="prevnext">
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:101
|
2021-02-20 16:14:33 +00:00
|
|
|
if prevHyphaName != "" {
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:101
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
<a class="prevnext__el prevnext__prev" href="/hypha/`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:102
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.E().S(prevHyphaName)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:102
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`" rel="prev">← `)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:102
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.E().S(util.BeautifulName(path.Base(prevHyphaName)))
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:102
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`</a>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:103
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:103
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:104
|
2021-02-20 16:14:33 +00:00
|
|
|
if nextHyphaName != "" {
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:104
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
<a class="prevnext__el prevnext__next" href="/hypha/`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:105
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.E().S(nextHyphaName)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:105
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`" rel="next">`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:105
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.E().S(util.BeautifulName(path.Base(nextHyphaName)))
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:105
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(` →</a>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:106
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:106
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</section>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:108
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamSubhyphaeHTML(qw422016, subhyphae)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:108
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</main>
|
|
|
|
`)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:110
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamRelativeHyphaeHTML(qw422016, relatives)
|
2021-02-24 17:34:42 +00:00
|
|
|
//line views/readers.qtpl:110
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</div>
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
func WriteHyphaHTML(qq422016 qtio422016.Writer, rq *http.Request, h *hyphae.Hypha, contents string) {
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamHyphaHTML(qw422016, rq, h, contents)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
qt422016.ReleaseWriter(qw422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
func HyphaHTML(rq *http.Request, h *hyphae.Hypha, contents string) string {
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
qb422016 := qt422016.AcquireByteBuffer()
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
WriteHyphaHTML(qb422016, rq, h, contents)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
qs422016 := string(qb422016.B)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
qt422016.ReleaseByteBuffer(qb422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
return qs422016
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:112
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:114
|
2021-02-20 16:14:33 +00:00
|
|
|
func StreamRevisionHTML(qw422016 *qt422016.Writer, rq *http.Request, h *hyphae.Hypha, contents, revHash string) {
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:114
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:116
|
2021-02-20 16:14:33 +00:00
|
|
|
relatives, subhyphae, _, _ := tree.Tree(h.Name)
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:117
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:118
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamNavHTML(qw422016, rq, h.Name, "revision", revHash)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:118
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
<div class="layout">
|
|
|
|
<main class="main-width">
|
|
|
|
<article>
|
|
|
|
<p>Please note that viewing binary parts of hyphae is not supported in history for now.</p>
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:123
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(NaviTitleHTML(h))
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:123
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:124
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(contents)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:124
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</article>
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:126
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamSubhyphaeHTML(qw422016, subhyphae)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:126
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</main>
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:128
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamRelativeHyphaeHTML(qw422016, relatives)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:128
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016.N().S(`
|
|
|
|
</div>
|
|
|
|
`)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
func WriteRevisionHTML(qq422016 qtio422016.Writer, rq *http.Request, h *hyphae.Hypha, contents, revHash string) {
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
qw422016 := qt422016.AcquireWriter(qq422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
StreamRevisionHTML(qw422016, rq, h, contents, revHash)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
qt422016.ReleaseWriter(qw422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|
|
|
|
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
func RevisionHTML(rq *http.Request, h *hyphae.Hypha, contents, revHash string) string {
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
qb422016 := qt422016.AcquireByteBuffer()
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
WriteRevisionHTML(qb422016, rq, h, contents, revHash)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
qs422016 := string(qb422016.B)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
qt422016.ReleaseByteBuffer(qb422016)
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
return qs422016
|
2021-03-14 13:16:30 +00:00
|
|
|
//line views/readers.qtpl:130
|
2021-02-20 16:14:33 +00:00
|
|
|
}
|