forked from GNUsocial/gnu-social
[ActivityPub] Port RSA
This commit is contained in:
@@ -11,20 +11,23 @@ use Component\Avatar\Avatar;
|
||||
use Component\Avatar\Exception\NoAvatarException;
|
||||
use DateTimeInterface;
|
||||
use Exception;
|
||||
use Plugin\ActivityPub\Entity\ActivitypubRsa;
|
||||
use Plugin\ActivityPub\Util\Type;
|
||||
use Plugin\ActivityPub\Util\Type\Extended\Actor\Person;
|
||||
|
||||
class GSActorToType
|
||||
{
|
||||
/**
|
||||
*@throws Exception
|
||||
*/
|
||||
public static function translate(Actor $gsactor): Type
|
||||
public static function translate(Actor $gsactor): Person
|
||||
{
|
||||
$rsa = ActivitypubRsa::getByActor($gsactor);
|
||||
$public_key = $rsa->getPublicKey();
|
||||
$uri = null;
|
||||
Event::handle('FreeNetworkGenerateLocalActorUri', ['source' => 'ActivityPub', 'actor_id' => $gsactor->getId(), 'actor_uri' => &$attributedTo]);
|
||||
$attr = [
|
||||
'@context' => 'https://www.w3.org/ns/activitystreams',
|
||||
'id' => $uri,
|
||||
'id' => $gsactor->getUri(Router::ABSOLUTE_URL),
|
||||
'inbox' => Router::url('activitypub_actor_inbox', ['gsactor_id' => $gsactor->getId()], Router::ABSOLUTE_URL),
|
||||
'outbox' => Router::url('activitypub_actor_outbox', ['gsactor_id' => $gsactor->getId()], Router::ABSOLUTE_URL),
|
||||
'following' => Router::url('actor_subscriptions_id', ['id' => $gsactor->getId()], Router::ABSOLUTE_URL),
|
||||
@@ -32,18 +35,18 @@ class GSActorToType
|
||||
'liked' => Router::url('actor_favourites_id', ['id' => $gsactor->getId()], Router::ABSOLUTE_URL),
|
||||
//'streams' =>
|
||||
'preferredUsername' => $gsactor->getNickname(),
|
||||
//'publicKey' => [
|
||||
// 'id' => $uri . "#public-key",
|
||||
// 'owner' => $uri,
|
||||
// 'publicKeyPem' => $public_key
|
||||
// ],
|
||||
'publicKey' => [
|
||||
'id' => $uri . "#public-key",
|
||||
'owner' => $uri,
|
||||
'publicKeyPem' => $public_key
|
||||
],
|
||||
'name' => $gsactor->getFullname(),
|
||||
'location' => $gsactor->getLocation(),
|
||||
'published' => $gsactor->getCreated()->format(DateTimeInterface::RFC3339),
|
||||
'summary' => $gsactor->getBio(),
|
||||
//'tag' => $gsactor->getSelfTags(),
|
||||
'updated' => $gsactor->getModified()->format(DateTimeInterface::RFC3339),
|
||||
'url' => Router::url('actor_view_nickname', ['nickname' => $gsactor->getNickname()], Router::ABSOLUTE_URL),
|
||||
'url' => $gsactor->getUrl(Router::ABSOLUTE_URL),
|
||||
];
|
||||
try {
|
||||
$attr['icon'] = Avatar::getAvatar($gsactor->getId())->getUrl(type: Router::ABSOLUTE_URL);
|
||||
|
Reference in New Issue
Block a user