Browse Source

user: support creating an actor which represents the instance itself

tags/v0.9.9
William Pitcock 5 years ago
parent
commit
4807a52284
1 changed files with 16 additions and 0 deletions
  1. +16
    -0
      lib/pleroma/user.ex

+ 16
- 0
lib/pleroma/user.ex View File

@@ -637,6 +637,22 @@ defmodule Pleroma.User do
end
end

def get_or_create_instance_user do
if user = get_by_ap_id(Pleroma.Web.Endpoint.url()) do
user
else
changes =
%User{}
|> cast(%{}, [:ap_id, :nickname, :local])
|> put_change(:ap_id, Pleroma.Web.Endpoint.url())
|> put_change(:nickname, nil)
|> put_change(:local, true)

{:ok, user} = Repo.insert(changes)
user
end
end

# AP style
def public_key_from_info(%{
"source_data" => %{"publicKey" => %{"publicKeyPem" => public_key_pem}}


Loading…
Cancel
Save