diff --git a/lib/Listener/RegisterTemplateFileCreatorListener.php b/lib/Listener/RegisterTemplateFileCreatorListener.php index 49bc63b40..a7728217b 100644 --- a/lib/Listener/RegisterTemplateFileCreatorListener.php +++ b/lib/Listener/RegisterTemplateFileCreatorListener.php @@ -39,7 +39,7 @@ class RegisterTemplateFileCreatorListener implements IEventListener { } $user = $this->permissionManager->loggedInUser(); - $userCanCreate = $this->permissionManager->isEnabledForUser($user) || $this->permissionManager->userCanEdit($user); + $userCanCreate = $this->permissionManager->isEnabledForUser($user) && $this->permissionManager->userCanEdit($user); if ($user && !$userCanCreate) { return; } diff --git a/tests/lib/Listener/RegisterTemplateFileCreatorListenerTest.php b/tests/lib/Listener/RegisterTemplateFileCreatorListenerTest.php index 65d042c40..9aa55077d 100644 --- a/tests/lib/Listener/RegisterTemplateFileCreatorListenerTest.php +++ b/tests/lib/Listener/RegisterTemplateFileCreatorListenerTest.php @@ -114,6 +114,7 @@ class RegisterTemplateFileCreatorListenerTest extends TestCase { public function testHandleDoesNotRegisterIfUserCannotEdit() { $event = $this->createMock(RegisterTemplateCreatorEvent::class); $event->method('getTemplateManager')->willReturn($this->templateManager); + $this->permissionManager->method('loggedInUser')->willReturn('user'); $this->permissionManager->method('isEnabledForUser')->willReturn(true); $this->permissionManager->method('userCanEdit')->willReturn(false); $this->capabilitiesService->method('getCapabilities')->willReturn(['something']);