summaryrefslogtreecommitdiffstats
path: root/modules/base
diff options
context:
space:
mode:
authorKim "BKC" Carlbäcker <kim.carlbacker@gmail.com>2016-01-13 13:25:52 +0100
committerKim "BKC" Carlbäcker <kim.carlbacker@gmail.com>2016-01-13 13:25:52 +0100
commit8e09e03127d2128453a7cd1337e8f51d33147e1d (patch)
tree5ffdbb0d99dae035d9ab806dd15aa099295fa212 /modules/base
parentfc4a4d38d16e47fe2584bd574872929669de42c1 (diff)
downloadgitea-8e09e03127d2128453a7cd1337e8f51d33147e1d.tar.gz
gitea-8e09e03127d2128453a7cd1337e8f51d33147e1d.zip
Checklist-rendering implemented
Diffstat (limited to 'modules/base')
-rw-r--r--modules/base/markdown.go10
-rw-r--r--modules/base/tool.go2
2 files changed, 11 insertions, 1 deletions
diff --git a/modules/base/markdown.go b/modules/base/markdown.go
index a3d3a7ca80..0ef379b8ed 100644
--- a/modules/base/markdown.go
+++ b/modules/base/markdown.go
@@ -142,6 +142,16 @@ func (r *CustomRender) AutoLink(out *bytes.Buffer, link []byte, kind int) {
r.Renderer.AutoLink(out, link, kind)
}
+func (options *CustomRender) ListItem(out *bytes.Buffer, text []byte, flags int) {
+ switch {
+ case bytes.HasPrefix(text, []byte("[ ] ")):
+ text = append([]byte(`<input type="checkbox" disabled="" />`), text[3:]...)
+ case bytes.HasPrefix(text, []byte("[x] ")):
+ text = append([]byte(`<input type="checkbox" disabled="" checked="" />`), text[3:]...)
+ }
+ options.Renderer.ListItem(out, text, flags)
+}
+
var (
svgSuffix = []byte(".svg")
svgSuffixWithMark = []byte(".svg?")
diff --git a/modules/base/tool.go b/modules/base/tool.go
index 6bfd912d32..c6522d1246 100644
--- a/modules/base/tool.go
+++ b/modules/base/tool.go
@@ -31,7 +31,7 @@ import (
"github.com/gogits/gogs/modules/setting"
)
-var Sanitizer = bluemonday.UGCPolicy().AllowAttrs("class").Matching(regexp.MustCompile(`[\p{L}\p{N}\s\-_',:\[\]!\./\\\(\)&]*`)).OnElements("code")
+var Sanitizer = bluemonday.UGCPolicy().AllowAttrs("class").Matching(regexp.MustCompile(`[\p{L}\p{N}\s\-_',:\[\]!\./\\\(\)&]*`)).OnElements("code").AllowElements("input").AllowAttrs("type", "checked", "disabled").OnElements("input")
// EncodeMD5 encodes string to md5 hex value.
func EncodeMD5(str string) string {