diff --git a/appinfo/info.xml b/appinfo/info.xml index 8b58db841..2e490ba6a 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -36,7 +36,7 @@ pgsql sqlite mysql - + OCA\Deck\Cron\DeleteCron diff --git a/lib/AppInfo/Application20.php b/lib/AppInfo/Application20.php index 2646e6424..80cd94b62 100644 --- a/lib/AppInfo/Application20.php +++ b/lib/AppInfo/Application20.php @@ -99,7 +99,9 @@ class Application20 extends App implements IBootstrap { $context->injectFn(Closure::fromCallable([$this, 'registerCollaborationResources'])); $context->injectFn(function (IManager $shareManager) { - $shareManager->registerShareProvider(DeckShareProvider::class); + if (method_exists($shareManager, 'registerShareProvider')) { + $shareManager->registerShareProvider(DeckShareProvider::class); + } }); $context->injectFn(function (Listener $listener, IEventDispatcher $eventDispatcher) { diff --git a/lib/Sharing/ShareAPIHelper.php b/lib/Sharing/ShareAPIHelper.php index 4b2dec7c4..31472000a 100644 --- a/lib/Sharing/ShareAPIHelper.php +++ b/lib/Sharing/ShareAPIHelper.php @@ -27,18 +27,27 @@ declare(strict_types=1); namespace OCA\Deck\Sharing; +use OCA\Deck\Db\Acl; use OCA\Deck\Db\CardMapper; +use OCA\Deck\NoPermissionException; +use OCA\Deck\Service\PermissionService; +use OCP\AppFramework\OCS\OCSNotFoundException; +use OCP\AppFramework\Utility\ITimeFactory; use OCP\IURLGenerator; use OCP\Share\IShare; class ShareAPIHelper { private $urlGenerator; + private $timeFactory; private $cardMapper; + private $permissionService; - public function __construct(IURLGenerator $urlGenerator, CardMapper $cardMapper) { + public function __construct(IURLGenerator $urlGenerator, ITimeFactory $timeFactory, CardMapper $cardMapper, PermissionService $permissionService) { $this->urlGenerator = $urlGenerator; + $this->timeFactory = $timeFactory; $this->cardMapper = $cardMapper; + $this->permissionService = $permissionService; } public function formatShare(IShare $share): array {