Merge pull request #4991 from pixelfed/staging

Update ApiV1Controller, use admin filter service
pull/4994/head
daniel 2024-03-07 03:13:13 -07:00 zatwierdzone przez GitHub
commit 4516760ced
Nie znaleziono w bazie danych klucza dla tego podpisu
ID klucza GPG: B5690EEEBB952194
1 zmienionych plików z 17 dodań i 1 usunięć

Wyświetl plik

@ -37,6 +37,7 @@ use App\Models\Conversation;
use App\Notification;
use App\Profile;
use App\Services\AccountService;
use App\Services\AdminShadowFilterService;
use App\Services\BookmarkService;
use App\Services\BouncerService;
use App\Services\CollectionService;
@ -2648,7 +2649,7 @@ class ApiV1Controller extends Controller
$domainBlocks = UserFilterService::domainBlocks($user->profile_id);
$hideNsfw = config('instance.hide_nsfw_on_public_feeds');
$amin = SnowflakeService::byDate(now()->subDays(config('federation.network_timeline_days_falloff')));
$asf = AdminShadowFilterService::getHideFromPublicFeedsList();
if ($local && $remote) {
$feed = Status::select(
'id',
@ -2824,6 +2825,21 @@ class ApiV1Controller extends Controller
return ! in_array($domain, $domainBlocks);
})
->filter(function ($s) use ($asf, $user) {
if (! $asf || count($asf) === 0) {
return true;
}
if (in_array($s['account']['id'], $asf)) {
if ($user->profile_id == $s['account']['id']) {
return true;
}
return false;
}
return true;
})
->take($limit)
->values();