projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'refactor/notification-controller' into 'develop'
[akkoma]
/
lib
/
pleroma
/
conversation
/
participation.ex
diff --git
a/lib/pleroma/conversation/participation.ex
b/lib/pleroma/conversation/participation.ex
index d17b6f7c5a045c63032cb8d118a1b0ffc1a21e88..e946f6de26eff61247f4618be47be3c5de14c72f 100644
(file)
--- a/
lib/pleroma/conversation/participation.ex
+++ b/
lib/pleroma/conversation/participation.ex
@@
-13,10
+13,10
@@
defmodule Pleroma.Conversation.Participation do
import Ecto.Query
schema "conversation_participations" do
import Ecto.Query
schema "conversation_participations" do
- belongs_to(:user, User, type:
Pleroma.FlakeId
)
+ belongs_to(:user, User, type:
FlakeId.Ecto.CompatType
)
belongs_to(:conversation, Conversation)
field(:read, :boolean, default: false)
belongs_to(:conversation, Conversation)
field(:read, :boolean, default: false)
- field(:last_activity_id,
Pleroma.FlakeId
, virtual: true)
+ field(:last_activity_id,
FlakeId.Ecto.CompatType
, virtual: true)
has_many(:recipient_ships, RecipientShip)
has_many(:recipients, through: [:recipient_ships, :user])
has_many(:recipient_ships, RecipientShip)
has_many(:recipients, through: [:recipient_ships, :user])
@@
-94,10
+94,20
@@
defmodule Pleroma.Conversation.Participation do
|> Enum.filter(& &1.last_activity_id)
end
|> Enum.filter(& &1.last_activity_id)
end
- def get(nil), do: nil
+ def get(_, _ \\ [])
+ def get(nil, _), do: nil
- def get(id) do
- Repo.get(__MODULE__, id)
+ def get(id, params) do
+ query =
+ if preload = params[:preload] do
+ from(p in __MODULE__,
+ preload: ^preload
+ )
+ else
+ __MODULE__
+ end
+
+ Repo.get(query, id)
end
def set_recipients(participation, user_ids) do
end
def set_recipients(participation, user_ids) do