Compare commits

...

2 commits

Author SHA1 Message Date
02bdaef80d
Update note 2025-06-29 23:39:05 +02:00
4640e3a36b
Update activity 2025-06-29 23:16:01 +02:00
5 changed files with 14 additions and 17 deletions

View file

@ -96,15 +96,11 @@ defmodule Nulla.ActivityPub do
type: "Note", type: "Note",
summary: nil, summary: nil,
inReplyTo: note.inReplyTo, inReplyTo: note.inReplyTo,
published: note.inserted_at, published: note.published,
url: note.url, url: note.url,
attributedTo: note.actor.ap_id, attributedTo: note.actor.ap_id,
to: [ to: note.to,
"https://www.w3.org/ns/activitystreams#Public" cc: note.cc,
],
cc: [
"#{note.actor.ap_id}/followers"
],
sensitive: note.sensitive, sensitive: note.sensitive,
content: note.content, content: note.content,
contentMap: Jason.OrderedObject.new("#{note.language}": note.content), contentMap: Jason.OrderedObject.new("#{note.language}": note.content),
@ -341,6 +337,7 @@ defmodule Nulla.ActivityPub do
to: [ to: [
"https://www.w3.org/ns/activitystreams#Public" "https://www.w3.org/ns/activitystreams#Public"
], ],
cc: [],
object: object:
Jason.OrderedObject.new( Jason.OrderedObject.new(
id: "#{note.actor.ap_id}/notes/#{note.id}", id: "#{note.actor.ap_id}/notes/#{note.id}",

View file

@ -11,8 +11,8 @@ defmodule Nulla.Models.Activity do
field :type, :string field :type, :string
field :actor, :string field :actor, :string
field :object, :string field :object, :string
field :to, :string field :to, {:array, :string}
field :cc, :string field :cc, {:array, :string}
timestamps() timestamps()
end end

View file

@ -10,12 +10,10 @@ defmodule Nulla.Models.Note do
@primary_key {:id, :integer, autogenerate: false} @primary_key {:id, :integer, autogenerate: false}
schema "notes" do schema "notes" do
field :inReplyTo, :string field :inReplyTo, :string
field :published, :utc_datetime
field :url, :string field :url, :string
field :to, {:array, :string}
field :visibility, Ecto.Enum, field :cc, {:array, :string}
values: [:public, :unlisted, :followers, :private],
default: :public
field :sensitive, :boolean, default: false field :sensitive, :boolean, default: false
field :content, :string field :content, :string
field :language, :string field :language, :string

View file

@ -5,8 +5,10 @@ defmodule Nulla.Repo.Migrations.CreateNotes do
create table(:notes, primary_key: false) do create table(:notes, primary_key: false) do
add :id, :bigint, primary_key: true add :id, :bigint, primary_key: true
add :inReplyTo, :string add :inReplyTo, :string
add :published, :utc_datetime
add :url, :string add :url, :string
add :visibility, :string, default: "public" add :to, {:array, :string}
add :cc, {:array, :string}
add :sensitive, :boolean, default: false add :sensitive, :boolean, default: false
add :content, :text add :content, :text
add :language, :string add :language, :string

View file

@ -8,8 +8,8 @@ defmodule Nulla.Repo.Migrations.CreateActivities do
add :type, :string, null: false add :type, :string, null: false
add :actor, :string, null: false add :actor, :string, null: false
add :object, :text, null: false add :object, :text, null: false
add :to, :text add :to, {:array, :string}
add :cc, :text add :cc, {:array, :string}
timestamps() timestamps()
end end