aboutsummaryrefslogtreecommitdiffhomepage
path: root/Digitigrade/Model/Actor.php
diff options
context:
space:
mode:
Diffstat (limited to 'Digitigrade/Model/Actor.php')
-rw-r--r--Digitigrade/Model/Actor.php15
1 files changed, 15 insertions, 0 deletions
diff --git a/Digitigrade/Model/Actor.php b/Digitigrade/Model/Actor.php
index 07f24ec..8059409 100644
--- a/Digitigrade/Model/Actor.php
+++ b/Digitigrade/Model/Actor.php
@@ -196,7 +196,22 @@ class Actor extends PushableModel implements RpcReceiver {
return Instance::findByHostname(hostname_from_uri($this->uri));
}
+ protected function getRelevantServers(): array {
+ $actors = array_unique(array_merge($this->findFollowers(), $this->findFollowees()));
+ $instances = array_unique(array_map(function (Actor $actor) {
+ return Instance::findByHostname(hostname_from_uri($actor->uri));
+ }, $actors));
+ return $instances;
+ }
+
public function jsonSerialize(): array {
+ if ($this->deleted) {
+ return [
+ 'type' => 'tombstone',
+ 'self' => path_to_uri("/user/$this->handle"),
+ 'previousType' => 'actor'
+ ];
+ }
return [
'type' => 'actor',
'self' => path_to_uri("/user/$this->handle"),