diff --git a/lib/private/TaskProcessing/Manager.php b/lib/private/TaskProcessing/Manager.php index cfd0ccf143a..ad5bf132445 100644 --- a/lib/private/TaskProcessing/Manager.php +++ b/lib/private/TaskProcessing/Manager.php @@ -814,7 +814,7 @@ class Manager implements IManager { public function getAvailableTaskTypes(bool $showDisabled = false, ?string $userId = null): array { // userId will be obtained from the session if left to null - if (!$this->checkGuestAccess($userId)) { + if (!$this->checkGuestAccess($userId)) { return []; } if ($this->availableTaskTypes === null) { @@ -881,11 +881,10 @@ class Manager implements IManager { } if ($userId === null) { $user = $this->userSession->getUser(); - } else { $user = $this->userManager->get($userId); } - + $guestsAllowed = $this->config->getAppValue('core', 'ai.taskprocessing_guests', 'false'); if ($guestsAllowed == 'true' || !class_exists(\OCA\Guests\UserBackend::class) || !($user->getBackend() instanceof \OCA\Guests\UserBackend)) { return true; diff --git a/psalm.xml b/psalm.xml index 0fdbc287b5a..a8a2a0c8904 100644 --- a/psalm.xml +++ b/psalm.xml @@ -106,6 +106,7 @@ + diff --git a/tests/lib/TaskProcessing/TaskProcessingTest.php b/tests/lib/TaskProcessing/TaskProcessingTest.php index 73f67b07266..d463a5e4c61 100644 --- a/tests/lib/TaskProcessing/TaskProcessingTest.php +++ b/tests/lib/TaskProcessing/TaskProcessingTest.php @@ -27,6 +27,7 @@ use OCP\IDBConnection; use OCP\IServerContainer; use OCP\IUser; use OCP\IUserManager; +use OCP\IUserSession; use OCP\TaskProcessing\EShapeType; use OCP\TaskProcessing\Events\GetTaskProcessingProvidersEvent; use OCP\TaskProcessing\Events\TaskFailedEvent; @@ -608,6 +609,8 @@ class TaskProcessingTest extends \Test\TestCase { $this->userMountCache, \OC::$server->get(IClientService::class), \OC::$server->get(IAppManager::class), + $userManager, + \OC::$server->get(IUserSession::class), \OC::$server->get(ICacheFactory::class), ); } @@ -1258,6 +1261,8 @@ class TaskProcessingTest extends \Test\TestCase { $this->userMountCache, \OC::$server->get(IClientService::class), \OC::$server->get(IAppManager::class), + \OC::$server->get(IUserManager::class), + \OC::$server->get(IUserSession::class), \OC::$server->get(ICacheFactory::class), ); }