Fix forum category views

This commit is contained in:
DariusIII
2026-03-27 14:39:27 +01:00
parent c9a9dacf6e
commit e2319de55b
2 changed files with 14 additions and 1 deletions
+4 -1
View File
@@ -79,6 +79,9 @@ class CategoryPolicy extends \TeamTeaTime\Forum\Policies\CategoryPolicy
private function canViewCategory(mixed $user): bool
{
return $user instanceof User && $user->hasAnyRole(['Admin', 'Moderator']);
// Forum v8 applies category view checks when filtering private category trees.
// Allow any authenticated forum user to see categories while keeping category
// management actions restricted to admins.
return $user instanceof User;
}
}
@@ -4,6 +4,7 @@ declare(strict_types=1);
namespace Tests\Unit\Policies;
use App\Models\User;
use App\Policies\CategoryPolicy;
use App\Policies\PostPolicy;
use App\Policies\ThreadPolicy;
@@ -28,6 +29,15 @@ final class ForumGuestPolicyTest extends TestCase
$this->assertFalse($policy->view(null, $category));
}
public function test_authenticated_non_staff_user_can_view_categories(): void
{
$policy = new CategoryPolicy;
$category = new Category;
$user = new User;
$this->assertTrue($policy->view($user, $category));
}
public function test_guest_thread_actions_are_denied_but_threads_remain_viewable(): void
{
$policy = new ThreadPolicy;