1
0
Fork 0
mirror of https://github.com/Eggbertx/gochan.git synced 2025-08-04 20:16:24 -07:00

Add PostJSON type for external rendering

This commit is contained in:
Eggbertx 2022-11-13 20:52:47 -08:00
parent 282ebe2280
commit 30b5a84aab
3 changed files with 156 additions and 31 deletions

View file

@ -165,6 +165,35 @@ var actions = []Action{
}
return outputStr, nil
}},
{
ID: "recentposts",
Title: "Recent posts",
Permissions: JanitorPerms,
JSONoutput: OptionalJSON,
Callback: func(writer http.ResponseWriter, request *http.Request, staff *gcsql.Staff, wantsJSON bool, infoEv, errEv *zerolog.Event) (output interface{}, err error) {
limit, err := getIntField("limit", staff.Username, request, 0)
if err != nil {
return "", err
}
boardid, err := getIntField("boardid", staff.Username, request, 0)
if err != nil {
return "", err
}
recentposts, err := building.GetRecentPosts(boardid, limit)
if err != nil {
return "", err
}
manageRecentsBuffer := bytes.NewBufferString("")
if err = serverutil.MinifyTemplate(gctemplates.ManageRecentPosts, map[string]interface{}{
"recentposts": recentposts,
"webroot": config.GetSystemCriticalConfig().WebRoot,
}, manageRecentsBuffer, "text/html"); err != nil {
errEv.Err(err).Caller().Send()
return "", errors.New("Error executing ban management page template: " + err.Error())
}
return manageRecentsBuffer.String(), nil
},
},
// {
// ID: "recentposts",
// Title: "Recent posts",