diff options
Diffstat (limited to 'internal/validate')
-rw-r--r-- | internal/validate/account_test.go | 1 | ||||
-rw-r--r-- | internal/validate/formvalidation.go | 14 |
2 files changed, 14 insertions, 1 deletions
diff --git a/internal/validate/account_test.go b/internal/validate/account_test.go index a023b2bcb..e0dda8e16 100644 --- a/internal/validate/account_test.go +++ b/internal/validate/account_test.go @@ -62,6 +62,7 @@ func happyAccount() *gtsmodel.Account { Privacy: gtsmodel.VisibilityPublic, Sensitive: false, Language: "en", + StatusFormat: "plain", URI: "http://localhost:8080/users/the_mighty_zork", URL: "http://localhost:8080/@the_mighty_zork", LastWebfingeredAt: time.Time{}, diff --git a/internal/validate/formvalidation.go b/internal/validate/formvalidation.go index e0c27628b..5ce80ae31 100644 --- a/internal/validate/formvalidation.go +++ b/internal/validate/formvalidation.go @@ -144,7 +144,19 @@ func Privacy(privacy string) error { case apimodel.VisibilityDirect, apimodel.VisibilityMutualsOnly, apimodel.VisibilityPrivate, apimodel.VisibilityPublic, apimodel.VisibilityUnlisted: return nil } - return fmt.Errorf("privacy %s was not recognized", privacy) + return fmt.Errorf("privacy '%s' was not recognized, valid options are 'direct', 'mutuals_only', 'private', 'public', 'unlisted'", privacy) +} + +// StatusFormat checks that the desired status format setting is valid. +func StatusFormat(statusFormat string) error { + if statusFormat == "" { + return fmt.Errorf("empty string for status format not allowed") + } + switch apimodel.StatusFormat(statusFormat) { + case apimodel.StatusFormatPlain, apimodel.StatusFormatMarkdown: + return nil + } + return fmt.Errorf("status format '%s' was not recognized, valid options are 'plain', 'markdown'", statusFormat) } // EmojiShortcode just runs the given shortcode through the regular expression |