summaryrefslogtreecommitdiff
path: root/internal/validate/formvalidation.go
diff options
context:
space:
mode:
authorLibravatar tobi <31960611+tsmethurst@users.noreply.github.com>2022-08-06 12:09:21 +0200
committerLibravatar GitHub <noreply@github.com>2022-08-06 12:09:21 +0200
commitf5689a9e5fa5dbcae6c56fa9f393c2fc4686ac19 (patch)
treead66c13bc927e72dd072f1cabace27f9c5bd31b9 /internal/validate/formvalidation.go
parent[bugfix] Parse source first before checking if empty form (#738) (diff)
downloadgotosocial-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/validate/formvalidation.go')
-rw-r--r--internal/validate/formvalidation.go14
1 files changed, 13 insertions, 1 deletions
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