Fix BeagleService

pull/5195/head
Daniel Supernault 8 months ago
parent 18837dc15b
commit 81018265db
No known key found for this signature in database
GPG Key ID: 23740873EE6F76A1

@ -16,6 +16,8 @@ class BeagleService
const DISCOVER_CACHE_KEY = 'pf:services:beagle:discover:v1'; const DISCOVER_CACHE_KEY = 'pf:services:beagle:discover:v1';
const DISCOVER_POSTS_CACHE_KEY = 'pf:services:beagle:discover-posts:v1';
public static function getDefaultRules() public static function getDefaultRules()
{ {
return Cache::remember(self::DEFAULT_RULES_CACHE_KEY, now()->addDays(7), function () { return Cache::remember(self::DEFAULT_RULES_CACHE_KEY, now()->addDays(7), function () {
@ -82,27 +84,36 @@ class BeagleService
public static function getDiscoverPosts() public static function getDiscoverPosts()
{ {
$posts = collect(self::getDiscover()) return Cache::remember(self::DISCOVER_POSTS_CACHE_KEY, now()->addHours(1), function () {
->filter(function ($post) { $posts = collect(self::getDiscover())
$bannedInstances = InstanceService::getBannedDomains(); ->filter(function ($post) {
$domain = parse_url($post['id'], PHP_URL_HOST); $bannedInstances = InstanceService::getBannedDomains();
$domain = parse_url($post['id'], PHP_URL_HOST);
return ! in_array($domain, $bannedInstances);
}) return ! in_array($domain, $bannedInstances);
->map(function ($post) { })
$domain = parse_url($post['id'], PHP_URL_HOST); ->map(function ($post) {
if ($domain === config_cache('pixelfed.domain.app')) { $domain = parse_url($post['id'], PHP_URL_HOST);
$parts = explode('/', $post['id']); if ($domain === config_cache('pixelfed.domain.app')) {
$id = array_last($parts); $parts = explode('/', $post['id']);
$id = array_last($parts);
return StatusService::get($id);
}
$post = Helpers::statusFetch($post['id']);
if (! $post) {
return;
}
$id = $post->id;
return StatusService::get($id); return StatusService::get($id);
} })
->filter()
return Helpers::statusFetch($post['id']); ->values()
}) ->toArray();
->values()
->toArray();
return $posts; return $posts;
});
} }
} }

Loading…
Cancel
Save