Pleroma API: POST /api/v1/pleroma/conversations/read to mark all user's conversations as read

This commit is contained in:
eugenijm 2019-10-11 06:40:58 +03:00
commit 52ed2f8f2d
7 changed files with 72 additions and 0 deletions

View file

@ -69,6 +69,19 @@ defmodule Pleroma.Conversation.Participation do
end
end
def mark_all_as_read(user) do
{_, participations} =
__MODULE__
|> where([p], p.user_id == ^user.id)
|> where([p], not p.read)
|> update([p], set: [read: true])
|> select([p], p)
|> Repo.update_all([])
User.set_unread_conversation_count(user)
{:ok, participations}
end
def mark_as_unread(participation) do
participation
|> read_cng(%{read: false})