Fix mark-as-read (POST /api/v1/conversations/:id/read) refreshing updated_at and bringing conversation to the top in the user's direct conversation list

This commit is contained in:
eugenijm 2019-12-20 16:38:21 +03:00
commit 0b6d1292d2
3 changed files with 10 additions and 6 deletions

View file

@ -64,11 +64,13 @@ defmodule Pleroma.Conversation.Participation do
end
def mark_as_read(participation) do
participation
|> read_cng(%{read: true})
|> Repo.update()
__MODULE__
|> where(id: ^participation.id)
|> update(set: [read: true])
|> select([p], p)
|> Repo.update_all([])
|> case do
{:ok, participation} ->
{1, [participation]} ->
participation = Repo.preload(participation, :user)
User.set_unread_conversation_count(participation.user)
{:ok, participation}