[feature] Allow users to set custom css for their profiles + threads (#808)

* add custom css account property + db func to fetch

* allow account to get/set custom css

* serve custom css for an account

* go fmt

* use monospace for customcss, add link

* add custom css to account cache

* fix broken field

* add custom css docs to user guide

* add `accounts-allow-custom-css` config flag

* add allow custom css to /api/v1/instance response

* only show/set custom css if allowed to do so

* only set/serve custom account css if enabled

* update swagger docs

* chain promise

* make bool a bit clearer

* use cache for GetAccountCustomCSSByUsername
This commit is contained in:
tobi
2022-09-12 13:14:29 +02:00
committed by GitHub
parent 268f252e0d
commit b42469e4e0
40 changed files with 458 additions and 39 deletions

View File

@ -99,6 +99,15 @@ func (m *Module) profileGETHandler(c *gin.Context) {
return
}
stylesheets := []string{
"/assets/Fork-Awesome/css/fork-awesome.min.css",
"/assets/dist/status.css",
"/assets/dist/profile.css",
}
if config.GetAccountsAllowCustomCSS() {
stylesheets = append(stylesheets, "/@"+account.Username+"/custom.css")
}
c.HTML(http.StatusOK, "profile.tmpl", gin.H{
"instance": instance,
"account": account,
@ -106,11 +115,7 @@ func (m *Module) profileGETHandler(c *gin.Context) {
"statuses": statusResp.Items,
"statuses_next": statusResp.NextLink,
"show_back_to_top": showBackToTop,
"stylesheets": []string{
"/assets/Fork-Awesome/css/fork-awesome.min.css",
"/assets/dist/status.css",
"/assets/dist/profile.css",
},
"stylesheets": stylesheets,
"javascript": []string{
"/assets/dist/frontend.js",
},