isInRole(User::ROLE_ABITURIENT); } public static function checkAccessibility(?User $currentUser, int $tablePrimaryKey): void { if (!static::isAbiturient($currentUser)) { return; } $tableRow = static::findOne($tablePrimaryKey); if (!$tableRow) { return; } $userLinkColumn = self::getUserLinkColumn(); if ($currentUser->id == $tableRow->{$userLinkColumn}) { return; } throw new AbiturientAccessDenied($tableRow, $currentUser); } }