diff options
Diffstat (limited to 'lib/matrix_app_service/event.ex')
-rw-r--r-- | lib/matrix_app_service/event.ex | 46 |
1 files changed, 33 insertions, 13 deletions
diff --git a/lib/matrix_app_service/event.ex b/lib/matrix_app_service/event.ex index bf37aba..c034a9b 100644 --- a/lib/matrix_app_service/event.ex +++ b/lib/matrix_app_service/event.ex @@ -30,29 +30,49 @@ defmodule MatrixAppService.Event do # user_id: nil embedded_schema do - field :age, :integer - field :content, :map - field :event_id, :string - field :origin_server_ts, :integer - field :room_id, :string - field :sender, :string - field :state_key, :string - field :type, :string - field :unsigned, :map - field :user_id, :string + field(:age, :integer) + field(:content, :map) + field(:event_id, :string) + field(:origin_server_ts, :integer) + field(:room_id, :string) + field(:sender, :string) + field(:state_key, :string) + field(:type, :string) + field(:unsigned, :map) + field(:user_id, :string) end def new(params) do command = changeset(params) + case command.valid? do - true -> {:ok, apply_changes(command)} + true -> {:ok, apply_changes(command)} false -> {:error, command.errors} end end defp changeset(params) do %__MODULE__{} - |> cast(params, [:age, :content, :event_id, :origin_server_ts, :room_id, :sender, :state_key, :type, :unsigned, :user_id]) - |> validate_required([:content, :event_id, :origin_server_ts, :room_id, :sender, :type, :unsigned]) + |> cast(params, [ + :age, + :content, + :event_id, + :origin_server_ts, + :room_id, + :sender, + :state_key, + :type, + :unsigned, + :user_id + ]) + |> validate_required([ + :content, + :event_id, + :origin_server_ts, + :room_id, + :sender, + :type, + :unsigned + ]) end end |