Unverified Commit 7bcbfb32 authored by Yassine Doghri's avatar Yassine Doghri
Browse files

fix(activity-pub): cache issues when navigating to activity stream urls

parent e5b75150
......@@ -48,7 +48,10 @@ class ActorController extends Controller
return $this->{$method}(...$params);
}
public function index(): RedirectResponse
/**
* @noRector ReturnTypeDeclarationRector
*/
public function index(): ResponseInterface
{
$actorObjectClass = $this->config->actorObject;
$actorObject = new $actorObjectClass($this->actor);
......@@ -60,6 +63,8 @@ class ActorController extends Controller
/**
* Handles incoming requests from fediverse servers
*
* @noRector ReturnTypeDeclarationRector
*/
public function inbox(): ResponseInterface
{
......@@ -228,7 +233,10 @@ class ActorController extends Controller
}
}
public function outbox(): RedirectResponse
/**
* @noRector ReturnTypeDeclarationRector
*/
public function outbox(): ResponseInterface
{
// get published activities by publication date
$actorActivity = model('ActivityModel')
......@@ -257,7 +265,10 @@ class ActorController extends Controller
->setBody($collection->toJSON());
}
public function followers(): RedirectResponse
/**
* @noRector ReturnTypeDeclarationRector
*/
public function followers(): ResponseInterface
{
// get followers for a specific actor
$followers = model('ActorModel')
......@@ -334,7 +345,10 @@ class ActorController extends Controller
);
}
public function activity(string $activityId): RedirectResponse
/**
* @noRector ReturnTypeDeclarationRector
*/
public function activity(string $activityId): ResponseInterface
{
if (
! ($activity = model('ActivityModel')->getActivityById($activityId))
......
......@@ -33,7 +33,7 @@ class ObjectType extends AbstractObject
protected array $to = ['https://www.w3.org/ns/activitystreams#Public'];
/**
* @var string[]
* @var string[]|null
*/
protected array $cc = [];
protected ?array $cc = null;
}
......@@ -84,7 +84,10 @@ class ActorModel extends Model
$domain = get_current_domain();
}
$cacheName = "actor-{$username}-{$domain}";
// remove colons for port if set
$cacheDomain = str_replace(':', '', $domain);
$cacheName = "actor-{$username}-{$cacheDomain}";
if (! ($found = cache($cacheName))) {
$found = $this->where([
'username' => $username,
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment