nextcloud-notes/lib/AppInfo/Application.php

35 lines
1023 B
PHP

<?php
declare(strict_types=1);
namespace OCA\Notes\AppInfo;
use OCP\AppFramework\App;
use OCP\AppFramework\Bootstrap\IBootstrap;
use OCP\AppFramework\Bootstrap\IBootContext;
use OCP\AppFramework\Bootstrap\IRegistrationContext;
use OCP\AppFramework\Http\Events\BeforeTemplateRenderedEvent;
class Application extends App implements IBootstrap {
public const APP_ID = 'notes';
public static $API_VERSIONS = [ '0.2', '1.1' ];
public function __construct(array $urlParams = []) {
parent::__construct(self::APP_ID, $urlParams);
}
public function register(IRegistrationContext $context): void {
$context->registerCapability(Capabilities::class);
$context->registerSearchProvider(SearchProvider::class);
$context->registerDashboardWidget(DashboardWidget::class);
$context->registerEventListener(
BeforeTemplateRenderedEvent::class,
BeforeTemplateRenderedListener::class
);
}
public function boot(IBootContext $context): void {
$context->getAppContainer()->get(NotesHooks::class)->register();
}
}