summaryrefslogtreecommitdiff
path: root/lib/matrix_app_service/event.ex
diff options
context:
space:
mode:
Diffstat (limited to 'lib/matrix_app_service/event.ex')
-rw-r--r--lib/matrix_app_service/event.ex46
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