diff options
author | 2022-08-06 12:09:21 +0200 | |
---|---|---|
committer | 2022-08-06 12:09:21 +0200 | |
commit | f5689a9e5fa5dbcae6c56fa9f393c2fc4686ac19 (patch) | |
tree | ad66c13bc927e72dd072f1cabace27f9c5bd31b9 /internal/processing/status/util.go | |
parent | [bugfix] Parse source first before checking if empty form (#738) (diff) | |
download | gotosocial-f5689a9e5fa5dbcae6c56fa9f393c2fc4686ac19.tar.xz |
[feature] Let accounts set default status format, and use this when processing new statuses (#739)
* add post_format to acct & use it when making post
* update swagger docs
* add status_format updating to frontend
* fix up tests
* post_format => status_format
* add status_format to account validation
Diffstat (limited to 'internal/processing/status/util.go')
-rw-r--r-- | internal/processing/status/util.go | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/internal/processing/status/util.go b/internal/processing/status/util.go index 52214e95f..64b496673 100644 --- a/internal/processing/status/util.go +++ b/internal/processing/status/util.go @@ -23,6 +23,7 @@ import ( "errors" "fmt" + "github.com/superseriousbusiness/gotosocial/internal/api/model" apimodel "github.com/superseriousbusiness/gotosocial/internal/api/model" "github.com/superseriousbusiness/gotosocial/internal/db" "github.com/superseriousbusiness/gotosocial/internal/gtserror" @@ -269,9 +270,21 @@ func (p *processor) ProcessContent(ctx context.Context, form *apimodel.AdvancedS return nil } - // if format wasn't specified we should set the default + // if format wasn't specified we should try to figure out what format this user prefers if form.Format == "" { - form.Format = apimodel.StatusFormatDefault + acct, err := p.db.GetAccountByID(ctx, accountID) + if err != nil { + return fmt.Errorf("error processing new content: couldn't retrieve account from db to check post format: %s", err) + } + + switch acct.StatusFormat { + case "plain": + form.Format = model.StatusFormatPlain + case "markdown": + form.Format = model.StatusFormatMarkdown + default: + form.Format = model.StatusFormatDefault + } } // parse content out of the status depending on what format has been submitted |