mirror of
https://github.com/superseriousbusiness/gotosocial
synced 2025-06-05 21:59:39 +02:00
[feature] Advertise rich text formats, support content_type field (#1370)
* Advertise rich text formats, support content_type field * Update JSON in instance patch tests * Replace format with content_type everywhere * update migration to work with both pg and sqlite * regenerate swagger docs * update instance serialization + tests * fix up * learn to code tobi please, i'm begging you --------- Co-authored-by: tsmethurst <tobi.smethurst@protonmail.com>
This commit is contained in:
@@ -79,7 +79,7 @@ func (p *Processor) Update(ctx context.Context, account *gtsmodel.Account, form
|
||||
|
||||
// Process note to generate a valid HTML representation
|
||||
var f text.FormatFunc
|
||||
if account.StatusFormat == "markdown" {
|
||||
if account.StatusContentType == "text/markdown" {
|
||||
f = p.formatter.FromMarkdown
|
||||
} else {
|
||||
f = p.formatter.FromPlain
|
||||
@@ -144,12 +144,12 @@ func (p *Processor) Update(ctx context.Context, account *gtsmodel.Account, form
|
||||
account.Privacy = privacy
|
||||
}
|
||||
|
||||
if form.Source.StatusFormat != nil {
|
||||
if err := validate.StatusFormat(*form.Source.StatusFormat); err != nil {
|
||||
if form.Source.StatusContentType != nil {
|
||||
if err := validate.StatusContentType(*form.Source.StatusContentType); err != nil {
|
||||
return nil, gtserror.NewErrorBadRequest(err, err.Error())
|
||||
}
|
||||
|
||||
account.StatusFormat = *form.Source.StatusFormat
|
||||
account.StatusContentType = *form.Source.StatusContentType
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -122,13 +122,13 @@ func (suite *AccountUpdateTestSuite) TestAccountUpdateWithMarkdownNote() {
|
||||
Note: ¬e,
|
||||
}
|
||||
|
||||
// set default post language of account 1 to markdown
|
||||
testAccount.StatusFormat = "markdown"
|
||||
// set default post content type of account 1 to markdown
|
||||
testAccount.StatusContentType = "text/markdown"
|
||||
|
||||
// should get no error from the update function, and an api model account returned
|
||||
apiAccount, errWithCode := suite.accountProcessor.Update(context.Background(), testAccount, form)
|
||||
// reset test account to avoid breaking other tests
|
||||
testAccount.StatusFormat = "plain"
|
||||
testAccount.StatusContentType = "text/plain"
|
||||
suite.NoError(errWithCode)
|
||||
suite.NotNil(apiAccount)
|
||||
|
||||
|
Reference in New Issue
Block a user