X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fpleroma%2Fweb%2Factivity_pub%2Fobject_validators%2Fquestion_options_validator.ex;h=ddcd1be7ca1c7a025e9f6ba5812849da676d0656;hb=a079ec3a3cdfd42d2cbd51c7698c2c87828e5778;hp=9bc7e0cc0886cf5d25d21cc1cedd8a3c65471bb5;hpb=7bcd7a959519ea023b075142aa36005f80503ba4;p=akkoma
diff --git a/lib/pleroma/web/activity_pub/object_validators/question_options_validator.ex b/lib/pleroma/web/activity_pub/object_validators/question_options_validator.ex
index 9bc7e0cc0..ddcd1be7c 100644
--- a/lib/pleroma/web/activity_pub/object_validators/question_options_validator.ex
+++ b/lib/pleroma/web/activity_pub/object_validators/question_options_validator.ex
@@ -1,46 +1,36 @@
# Pleroma: A lightweight social networking server
-# Copyright © 2017-2020 Pleroma Authors
+# Copyright © 2017-2021 Pleroma Authors
# SPDX-License-Identifier: AGPL-3.0-only
defmodule Pleroma.Web.ActivityPub.ObjectValidators.QuestionOptionsValidator do
use Ecto.Schema
- alias Pleroma.Web.ActivityPub.ObjectValidators.QuestionOptionsRepliesValidator
-
import Ecto.Changeset
@primary_key false
embedded_schema do
field(:name, :string)
- embeds_one(:replies, QuestionOptionsRepliesValidator)
+
+ embeds_one :replies, Replies, primary_key: false do
+ field(:totalItems, :integer)
+ field(:type, :string)
+ end
+
field(:type, :string)
end
def changeset(struct, data) do
struct
|> cast(data, [:name, :type])
- |> cast_embed(:replies)
+ |> cast_embed(:replies, with: &replies_changeset/2)
|> validate_inclusion(:type, ["Note"])
|> validate_required([:name, :type])
end
-end
-
-defmodule Pleroma.Web.ActivityPub.ObjectValidators.QuestionOptionsRepliesValidator do
- use Ecto.Schema
-
- import Ecto.Changeset
- @primary_key false
-
- embedded_schema do
- field(:totalItems, :integer)
- field(:type, :string)
- end
-
- def changeset(struct, data) do
+ def replies_changeset(struct, data) do
struct
- |> cast(data, __schema__(:fields))
+ |> cast(data, [:totalItems, :type])
|> validate_inclusion(:type, ["Collection"])
|> validate_required([:type])
end