diff options
author | lain <lain@soykaf.club> | 2019-04-10 15:12:01 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2019-04-10 15:12:01 +0200 |
commit | 64c1c3a4071f3f99a59f38e2dcde499bda3969cf (patch) | |
tree | 29fac08359a71c047b4463a0b9e7dba8d4d886cf /lib | |
parent | d1da6b155ab758ae4eb8fa154997a0a2a179897c (diff) | |
download | pleroma-64c1c3a4071f3f99a59f38e2dcde499bda3969cf.tar.gz |
Participations: Add marking as read and unread.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/conversation/participation.ex | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/conversation/participation.ex b/lib/conversation/participation.ex index 244d37c46..ab59a529e 100644 --- a/lib/conversation/participation.ex +++ b/lib/conversation/participation.ex @@ -28,4 +28,22 @@ defmodule Pleroma.Conversation.Participation do |> creation_cng(%{user_id: user.id, conversation_id: conversation.id}) |> Repo.insert() end + + def read_cng(struct, params) do + struct + |> cast(params, [:read]) + |> validate_required([:read]) + end + + def mark_as_read(participation) do + participation + |> read_cng(%{read: true}) + |> Repo.update() + end + + def mark_as_unread(participation) do + participation + |> read_cng(%{read: false}) + |> Repo.update() + end end |