Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>tags/v18.0.0beta1
@@ -15,6 +15,7 @@ return array( | |||
'OCA\\Comments\\Controller\\Notifications' => $baseDir . '/../lib/Controller/Notifications.php', | |||
'OCA\\Comments\\EventHandler' => $baseDir . '/../lib/EventHandler.php', | |||
'OCA\\Comments\\JSSettingsHelper' => $baseDir . '/../lib/JSSettingsHelper.php', | |||
'OCA\\Comments\\Listener\\LoadAdditionalScripts' => $baseDir . '/../lib/Listener/LoadAdditionalScripts.php', | |||
'OCA\\Comments\\Notification\\Listener' => $baseDir . '/../lib/Notification/Listener.php', | |||
'OCA\\Comments\\Notification\\Notifier' => $baseDir . '/../lib/Notification/Notifier.php', | |||
'OCA\\Comments\\Search\\Provider' => $baseDir . '/../lib/Search/Provider.php', |
@@ -30,6 +30,7 @@ class ComposerStaticInitComments | |||
'OCA\\Comments\\Controller\\Notifications' => __DIR__ . '/..' . '/../lib/Controller/Notifications.php', | |||
'OCA\\Comments\\EventHandler' => __DIR__ . '/..' . '/../lib/EventHandler.php', | |||
'OCA\\Comments\\JSSettingsHelper' => __DIR__ . '/..' . '/../lib/JSSettingsHelper.php', | |||
'OCA\\Comments\\Listener\\LoadAdditionalScripts' => __DIR__ . '/..' . '/../lib/Listener/LoadAdditionalScripts.php', | |||
'OCA\\Comments\\Notification\\Listener' => __DIR__ . '/..' . '/../lib/Notification/Listener.php', | |||
'OCA\\Comments\\Notification\\Notifier' => __DIR__ . '/..' . '/../lib/Notification/Notifier.php', | |||
'OCA\\Comments\\Search\\Provider' => __DIR__ . '/..' . '/../lib/Search/Provider.php', |
@@ -26,10 +26,13 @@ namespace OCA\Comments\AppInfo; | |||
use OCA\Comments\Controller\Notifications; | |||
use OCA\Comments\EventHandler; | |||
use OCA\Comments\JSSettingsHelper; | |||
use OCA\Comments\Listener\LoadAdditionalScripts; | |||
use OCA\Comments\Notification\Notifier; | |||
use OCA\Comments\Search\Provider; | |||
use OCA\Files\Event\LoadAdditionalScriptsEvent; | |||
use OCP\AppFramework\App; | |||
use OCP\Comments\CommentsEntityEvent; | |||
use OCP\EventDispatcher\IEventDispatcher; | |||
use OCP\Util; | |||
use Symfony\Component\EventDispatcher\EventDispatcherInterface; | |||
@@ -48,7 +51,8 @@ class Application extends App { | |||
public function register() { | |||
$server = $this->getContainer()->getServer(); | |||
$dispatcher = $server->getEventDispatcher(); | |||
/** @var IEventDispatcher $newDispatcher */ | |||
$dispatcher = $server->query(IEventDispatcher::class); | |||
$this->registerSidebarScripts($dispatcher); | |||
$this->registerDavEntity($dispatcher); | |||
$this->registerNotifier(); | |||
@@ -57,16 +61,11 @@ class Application extends App { | |||
$server->getSearch()->registerProvider(Provider::class, ['apps' => ['files']]); | |||
} | |||
protected function registerSidebarScripts(EventDispatcherInterface $dispatcher) { | |||
$dispatcher->addListener( | |||
'OCA\Files::loadAdditionalScripts', | |||
function() { | |||
Util::addScript('comments', 'comments'); | |||
} | |||
); | |||
protected function registerSidebarScripts(IEventDispatcher $dispatcher) { | |||
$dispatcher->addServiceListener(LoadAdditionalScriptsEvent::class, LoadAdditionalScripts::class); | |||
} | |||
protected function registerDavEntity(EventDispatcherInterface $dispatcher) { | |||
protected function registerDavEntity(IEventDispatcher $dispatcher) { | |||
$dispatcher->addListener(CommentsEntityEvent::EVENT_ENTITY, function(CommentsEntityEvent $event) { | |||
$event->addEntityCollection('files', function($name) { | |||
$nodes = \OC::$server->getUserFolder()->getById((int)$name); |
@@ -0,0 +1,41 @@ | |||
<?php | |||
declare(strict_types=1); | |||
/** | |||
* @copyright Copyright (c) 2019, Roeland Jago Douma <roeland@famdouma.nl> | |||
* | |||
* @author Roeland Jago Douma <roeland@famdouma.nl> | |||
* | |||
* @license GNU AGPL version 3 or any later version | |||
* | |||
* This program is free software: you can redistribute it and/or modify | |||
* it under the terms of the GNU Affero General Public License as | |||
* published by the Free Software Foundation, either version 3 of the | |||
* License, or (at your option) any later version. | |||
* | |||
* This program is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |||
* GNU Affero General Public License for more details. | |||
* | |||
* You should have received a copy of the GNU Affero General Public License | |||
* along with this program. If not, see <http://www.gnu.org/licenses/>. | |||
* | |||
*/ | |||
namespace OCA\Comments\Listener; | |||
use OCA\Files\Event\LoadAdditionalScriptsEvent; | |||
use OCP\EventDispatcher\Event; | |||
use OCP\EventDispatcher\IEventListener; | |||
use OCP\Util; | |||
class LoadAdditionalScripts implements IEventListener { | |||
public function handle(Event $event): void { | |||
if (!($event instanceof LoadAdditionalScriptsEvent)) { | |||
return; | |||
} | |||
Util::addScript('comments', 'comments'); | |||
} | |||
} |