Move markdown stuff to it's own function
Cette révision appartient à :
Parent
be06251bba
révision
3c018c4988
2 fichiers modifiés avec 17 ajouts et 8 suppressions
|
@ -3,8 +3,6 @@ package model
|
||||||
import (
|
import (
|
||||||
"github.com/ewhal/nyaa/config"
|
"github.com/ewhal/nyaa/config"
|
||||||
"github.com/ewhal/nyaa/util"
|
"github.com/ewhal/nyaa/util"
|
||||||
"github.com/microcosm-cc/bluemonday"
|
|
||||||
"github.com/russross/blackfriday"
|
|
||||||
|
|
||||||
"html"
|
"html"
|
||||||
"html/template"
|
"html/template"
|
||||||
|
@ -81,13 +79,9 @@ func (t *Torrents) ToJson() TorrentsJson {
|
||||||
commentsJson = append(commentsJson, CommentsJson{Username: c.Username, Content: template.HTML(c.Content), Date: c.Date})
|
commentsJson = append(commentsJson, CommentsJson{Username: c.Username, Content: template.HTML(c.Content), Date: c.Date})
|
||||||
}
|
}
|
||||||
for _, c := range t.Comments {
|
for _, c := range t.Comments {
|
||||||
unsafe := blackfriday.MarkdownCommon([]byte(c.Content))
|
|
||||||
html := bluemonday.UGCPolicy().SanitizeBytes(unsafe)
|
|
||||||
|
|
||||||
commentsJson = append(commentsJson, CommentsJson{Username: c.User.Username, Content: template.HTML(html), Date: c.CreatedAt})
|
commentsJson = append(commentsJson, CommentsJson{Username: c.User.Username, Content: util.MarkdownToHTML(c.Content), Date: c.CreatedAt})
|
||||||
}
|
}
|
||||||
unsafe := blackfriday.MarkdownCommon([]byte(t.Description))
|
|
||||||
description := bluemonday.UGCPolicy().SanitizeBytes(unsafe)
|
|
||||||
res := TorrentsJson{
|
res := TorrentsJson{
|
||||||
Id: strconv.FormatUint(uint64(t.Id), 10),
|
Id: strconv.FormatUint(uint64(t.Id), 10),
|
||||||
Name: html.UnescapeString(t.Name),
|
Name: html.UnescapeString(t.Name),
|
||||||
|
@ -95,7 +89,7 @@ func (t *Torrents) ToJson() TorrentsJson {
|
||||||
Hash: t.Hash,
|
Hash: t.Hash,
|
||||||
Date: t.Date.Format(time.RFC3339),
|
Date: t.Date.Format(time.RFC3339),
|
||||||
Filesize: util.FormatFilesize2(t.Filesize),
|
Filesize: util.FormatFilesize2(t.Filesize),
|
||||||
Description: template.HTML(description),
|
Description: util.MarkdownToHTML(t.Description),
|
||||||
Comments: commentsJson,
|
Comments: commentsJson,
|
||||||
Sub_Category: strconv.Itoa(t.Sub_Category),
|
Sub_Category: strconv.Itoa(t.Sub_Category),
|
||||||
Category: strconv.Itoa(t.Category),
|
Category: strconv.Itoa(t.Category),
|
||||||
|
|
15
util/markdown.go
Fichier normal
15
util/markdown.go
Fichier normal
|
@ -0,0 +1,15 @@
|
||||||
|
package util
|
||||||
|
|
||||||
|
import (
|
||||||
|
"github.com/microcosm-cc/bluemonday"
|
||||||
|
"github.com/russross/blackfriday"
|
||||||
|
|
||||||
|
"html/template"
|
||||||
|
)
|
||||||
|
|
||||||
|
// TODO restrict certain types of markdown
|
||||||
|
func MarkdownToHTML(markdown string) template.HTML {
|
||||||
|
unsafe := blackfriday.MarkdownCommon([]byte(markdown))
|
||||||
|
html := bluemonday.UGCPolicy().SanitizeBytes(unsafe)
|
||||||
|
return template.HTML(html)
|
||||||
|
}
|
Référencer dans un nouveau ticket