diff options
author | Roman Chvanikov <chvanikoff@pm.me> | 2020-04-29 17:03:17 +0300 |
---|---|---|
committer | Roman Chvanikov <chvanikoff@pm.me> | 2020-04-29 17:03:17 +0300 |
commit | 7ef37ed99db69d8553e638e88527ded475f54a5f (patch) | |
tree | e2a6bae013f29ca7d6a8dfb69be1aa13d0a6b5af /lib/pleroma/web/api_spec/schemas/boolean_like.ex | |
parent | 37998e43636265d7709dbbf4926b07b7f94e04ea (diff) | |
parent | 58fded9858edbeb318dc011cb313e82a86fbafcb (diff) | |
download | pleroma-7ef37ed99db69d8553e638e88527ded475f54a5f.tar.gz |
merge develop
Diffstat (limited to 'lib/pleroma/web/api_spec/schemas/boolean_like.ex')
-rw-r--r-- | lib/pleroma/web/api_spec/schemas/boolean_like.ex | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/lib/pleroma/web/api_spec/schemas/boolean_like.ex b/lib/pleroma/web/api_spec/schemas/boolean_like.ex new file mode 100644 index 000000000..f3bfb74da --- /dev/null +++ b/lib/pleroma/web/api_spec/schemas/boolean_like.ex @@ -0,0 +1,36 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2020 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Web.ApiSpec.Schemas.BooleanLike do + alias OpenApiSpex.Schema + + require OpenApiSpex + + OpenApiSpex.schema(%{ + title: "BooleanLike", + description: """ + The following values will be treated as `false`: + - false + - 0 + - "0", + - "f", + - "F", + - "false", + - "FALSE", + - "off", + - "OFF" + + All other non-null values will be treated as `true` + """, + anyOf: [ + %Schema{type: :boolean}, + %Schema{type: :string}, + %Schema{type: :integer} + ] + }) + + def after_cast(value, _schmea) do + {:ok, Pleroma.Web.ControllerHelper.truthy_param?(value)} + end +end |