@@ -97,11 +97,11 @@ defmodule MobilizonWeb.ActivityPub.ActorView do
|
||||
|
||||
{activities, total} = ActivityPub.fetch_public_activities_for_actor(actor, page)
|
||||
|
||||
collection =
|
||||
Enum.map(activities, fn act ->
|
||||
{:ok, data} = Transmogrifier.prepare_outgoing(act.data)
|
||||
data
|
||||
end)
|
||||
# collection =
|
||||
# Enum.map(activities, fn act ->
|
||||
# {:ok, data} = Transmogrifier.prepare_outgoing(act.data)
|
||||
# data
|
||||
# end)
|
||||
|
||||
iri = "#{actor.url}/outbox"
|
||||
|
||||
@@ -127,9 +127,9 @@ defmodule MobilizonWeb.ActivityPub.ActorView do
|
||||
end
|
||||
end
|
||||
|
||||
def render("activity.json", %{activity: %Activity{local: local} = activity}) do
|
||||
def render("activity.json", %{activity: %Activity{local: local, data: data} = activity}) do
|
||||
%{
|
||||
"id" => activity.data.url <> "/activity",
|
||||
"id" => data["id"],
|
||||
"type" =>
|
||||
if local do
|
||||
"Create"
|
||||
@@ -139,14 +139,14 @@ defmodule MobilizonWeb.ActivityPub.ActorView do
|
||||
"actor" => activity.actor,
|
||||
# Not sure if needed since this is used into outbox
|
||||
"published" => Timex.now(),
|
||||
"to" => ["https://www.w3.org/ns/activitystreams#Public"],
|
||||
"to" => activity.recipients,
|
||||
"object" =>
|
||||
case activity.type do
|
||||
:Event ->
|
||||
render_one(activity.data, ObjectView, "event.json", as: :event)
|
||||
case data["type"] do
|
||||
"Event" ->
|
||||
render_one(data, ObjectView, "event.json", as: :event)
|
||||
|
||||
:Comment ->
|
||||
render_one(activity.data, ObjectView, "comment.json", as: :comment)
|
||||
"Note" ->
|
||||
render_one(data, ObjectView, "comment.json", as: :comment)
|
||||
end
|
||||
}
|
||||
|> Map.merge(Utils.make_json_ld_header())
|
||||
|
||||
@@ -7,13 +7,14 @@ defmodule MobilizonWeb.ActivityPub.ObjectView do
|
||||
def render("event.json", %{event: event}) do
|
||||
event = %{
|
||||
"type" => "Event",
|
||||
"id" => event.url,
|
||||
"name" => event.title,
|
||||
"category" => render_one(event.category, ObjectView, "category.json", as: :category),
|
||||
"content" => event.description,
|
||||
"mediaType" => "text/html",
|
||||
"published" => Timex.format!(event.inserted_at, "{ISO:Extended}"),
|
||||
"updated" => Timex.format!(event.updated_at, "{ISO:Extended}")
|
||||
"actor" => event["actor"],
|
||||
"id" => event["id"],
|
||||
"name" => event["title"],
|
||||
"category" => render_one(event["category"], ObjectView, "category.json", as: :category),
|
||||
"content" => event["summary"],
|
||||
"mediaType" => "text/html"
|
||||
# "published" => Timex.format!(event.inserted_at, "{ISO:Extended}"),
|
||||
# "updated" => Timex.format!(event.updated_at, "{ISO:Extended}")
|
||||
}
|
||||
|
||||
Map.merge(event, Utils.make_json_ld_header())
|
||||
@@ -21,16 +22,16 @@ defmodule MobilizonWeb.ActivityPub.ObjectView do
|
||||
|
||||
def render("comment.json", %{comment: comment}) do
|
||||
comment = %{
|
||||
"actor" => comment.actor.url,
|
||||
"uuid" => comment.uuid,
|
||||
"actor" => comment["actor"],
|
||||
"uuid" => comment["uuid"],
|
||||
# The activity should have attributedTo, not the comment itself
|
||||
# "attributedTo" => comment.attributed_to,
|
||||
"type" => "Note",
|
||||
"id" => comment.url,
|
||||
"content" => comment.text,
|
||||
"mediaType" => "text/html",
|
||||
"published" => Timex.format!(comment.inserted_at, "{ISO:Extended}"),
|
||||
"updated" => Timex.format!(comment.updated_at, "{ISO:Extended}")
|
||||
"id" => comment["id"],
|
||||
"content" => comment["content"],
|
||||
"mediaType" => "text/html"
|
||||
# "published" => Timex.format!(comment.inserted_at, "{ISO:Extended}"),
|
||||
# "updated" => Timex.format!(comment.updated_at, "{ISO:Extended}")
|
||||
}
|
||||
|
||||
Map.merge(comment, Utils.make_json_ld_header())
|
||||
|
||||
Reference in New Issue
Block a user