mirror of
https://github.com/superseriousbusiness/gotosocial.git
synced 2025-12-17 17:03:01 -06:00
provide noescape function for templates
This commit is contained in:
parent
adf4712b39
commit
89c369f21e
3 changed files with 22 additions and 1 deletions
|
|
@ -21,6 +21,7 @@ package router
|
|||
import (
|
||||
"context"
|
||||
"fmt"
|
||||
"html/template"
|
||||
"net/http"
|
||||
"time"
|
||||
|
||||
|
|
@ -46,6 +47,8 @@ type Router interface {
|
|||
AttachMiddleware(handler gin.HandlerFunc)
|
||||
// Attach 404 NoRoute handler
|
||||
AttachNoRouteHandler(handler gin.HandlerFunc)
|
||||
// Set Template function map
|
||||
SetTemplateFuncMap(functions template.FuncMap)
|
||||
// Start the router
|
||||
Start()
|
||||
// Stop the router
|
||||
|
|
@ -98,6 +101,11 @@ func (r *router) Stop(ctx context.Context) error {
|
|||
return r.srv.Shutdown(ctx)
|
||||
}
|
||||
|
||||
// Set Template function map
|
||||
func (r *router) SetTemplateFuncMap(functions template.FuncMap) {
|
||||
r.engine.SetFuncMap(functions)
|
||||
}
|
||||
|
||||
// New returns a new Router with the specified configuration, using the given logrus logger.
|
||||
//
|
||||
// The given DB is only used in the New function for parsing config values, and is not otherwise
|
||||
|
|
|
|||
|
|
@ -20,6 +20,7 @@ package web
|
|||
|
||||
import (
|
||||
"fmt"
|
||||
"html/template"
|
||||
"net/http"
|
||||
"os"
|
||||
"path/filepath"
|
||||
|
|
@ -84,6 +85,10 @@ func (m *Module) NotFoundHandler(c *gin.Context) {
|
|||
})
|
||||
}
|
||||
|
||||
func noescape(str string) template.HTML {
|
||||
return template.HTML(str)
|
||||
}
|
||||
|
||||
// Route satisfies the RESTAPIModule interface
|
||||
func (m *Module) Route(s router.Router) error {
|
||||
|
||||
|
|
@ -101,5 +106,13 @@ func (m *Module) Route(s router.Router) error {
|
|||
// 404 handler
|
||||
s.AttachNoRouteHandler(m.NotFoundHandler)
|
||||
|
||||
s.SetTemplateFuncMap(template.FuncMap{
|
||||
"noescape": noescape,
|
||||
})
|
||||
|
||||
if err != nil {
|
||||
return fmt.Errorf("error setting router FuncMap: %s", err)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
|
||||
<h3>This is the default landing page, you can edit it from <span class="accent">./web/template/index.tmpl</span></h1>
|
||||
<p>
|
||||
{{.instance.ShortDescription | noescape}}
|
||||
{{.instance.ShortDescription |noescape}}
|
||||
</p>
|
||||
</section>
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue