summaryrefslogtreecommitdiff
path: root/src/edit/views.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/edit/views.go')
-rw-r--r--src/edit/views.go38
1 files changed, 19 insertions, 19 deletions
diff --git a/src/edit/views.go b/src/edit/views.go
index 1d3176d..a2890d4 100644
--- a/src/edit/views.go
+++ b/src/edit/views.go
@@ -1,6 +1,7 @@
package main
import (
+ "fmt"
"bytes"
"io"
"path"
@@ -24,11 +25,12 @@ var (
tmplDeleted = newTemplate("got/deleted.got")
)
-func renderPage(w io.Writer, title, head, body string) error {
+func renderPage(w io.Writer, title, head, body, tail string) error {
return tmplPage.Execute(w, map[string]string{
"title": title,
"head": head,
"body": body,
+ "tail": tail,
})
}
@@ -47,8 +49,8 @@ func renderViewTree(w io.Writer, upath string, tree GitTree) error {
}
// Component Render
- var buf bytes.Buffer
- err := tmplViewTree.Execute(&buf, map[string]interface{}{
+ var body bytes.Buffer
+ err := tmplViewTree.Execute(&body, map[string]interface{}{
"path": upath,
"files": files,
})
@@ -56,7 +58,7 @@ func renderViewTree(w io.Writer, upath string, tree GitTree) error {
return err
}
// Page render
- return renderPage(w, upath, "", buf.String())
+ return renderPage(w, upath, "", body.String(), "")
}
func renderViewBlob(w io.Writer, upath string, file GitFile) error {
@@ -67,8 +69,8 @@ func renderViewBlob(w io.Writer, upath string, file GitFile) error {
}
ctype := getctype(upath, content)
// Component render
- var buf bytes.Buffer
- err = tmplViewBlob.Execute(&buf, map[string]string{
+ var body bytes.Buffer
+ err = tmplViewBlob.Execute(&body, map[string]string{
"path": upath,
"ctype": ctype,
"content": string(content),
@@ -76,38 +78,36 @@ func renderViewBlob(w io.Writer, upath string, file GitFile) error {
if err != nil {
return err
}
- head := ""
- if ctype == "text/markdown" {
- head += "<link rel=\"stylesheet\" href=\"/static/font-awesome/css/font-awesome.min.css\">\n"
- head += "<link rel=\"stylesheet\" href=\"/static/simplemde/dist/simplemde.min.css\">\n"
- head += "<script src=\"/static/simplemde/dist/simplemde.min.js\"></script>\n"
- }
+
+ head, tail := getEnhancer(ctype)
+ head = fmt.Sprintf("<script>ctype = \"%s\"</script>\n%s", template.JSEscapeString(ctype), head);
+
// Page render
- return renderPage(w, upath, head, buf.String())
+ return renderPage(w, upath, head, body.String(), tail)
}
func renderModified(w io.Writer, upath string) error {
// Component render
- var buf bytes.Buffer
- err := tmplModified.Execute(&buf, map[string]string{
+ var body bytes.Buffer
+ err := tmplModified.Execute(&body, map[string]string{
"path": upath,
})
if err != nil {
return err
}
// Page render
- return renderPage(w, upath, "", buf.String())
+ return renderPage(w, upath, "", body.String(), "")
}
func renderDeleted(w io.Writer, upath string) error {
// Component render
- var buf bytes.Buffer
- err := tmplDeleted.Execute(&buf, map[string]string{
+ var body bytes.Buffer
+ err := tmplDeleted.Execute(&body, map[string]string{
"path": upath,
})
if err != nil {
return err
}
// Page render
- return renderPage(w, upath, "", buf.String())
+ return renderPage(w, upath, "", body.String(), "")
}