More refactoring.

This commit is contained in:
Roger Braun 2017-04-25 17:32:36 +02:00
parent ef4190b3ab
commit 4771962a5d

View file

@ -26,21 +26,26 @@ def attachments_from_ids(ids) do
end)
end
def get_replied_to_activity(id) when not is_nil(id) do
Repo.get(Activity, id)
end
def get_replied_to_activity(_), do: nil
def create_status(user = %User{}, data = %{"status" => status}) do
attachments = attachments_from_ids(data["media_ids"])
context = ActivityPub.generate_context_id
mentions = parse_mentions(status)
content_html = format_input(status, mentions)
to = to_for_user_and_mentions(user, mentions)
date = make_date()
inReplyTo = get_replied_to_activity(data["in_reply_to_status_id"])
# Wire up reply info.
[to, context, object, additional] =
with inReplyToId when not is_nil(inReplyToId) <- data["in_reply_to_status_id"],
inReplyTo <- Repo.get(Activity, inReplyToId),
context <- inReplyTo.data["context"]
do
if inReplyTo do
context = inReplyTo.data["context"]
to = to ++ [inReplyTo.data["actor"]]
object = %{
@ -52,7 +57,7 @@ def create_status(user = %User{}, data = %{"status" => status}) do
"attachment" => attachments,
"actor" => user.ap_id,
"inReplyTo" => inReplyTo.data["object"]["id"],
"inReplyToStatusId" => inReplyToId,
"inReplyToStatusId" => inReplyTo.id,
"statusnetConversationId" => inReplyTo.data["statusnetConversationId"]
}
additional = %{
@ -60,7 +65,7 @@ def create_status(user = %User{}, data = %{"status" => status}) do
}
[to, context, object, additional]
else _e ->
else
object = %{
"type" => "Note",
"to" => to,