14
14
use OCP \AppFramework \Bootstrap \IBootstrap ;
15
15
use OCP \AppFramework \Bootstrap \IRegistrationContext ;
16
16
use OCP \AppFramework \Http \Events \BeforeTemplateRenderedEvent ;
17
- use OCP \EventDispatcher \GenericEvent ;
18
- use OCP \EventDispatcher \IEventDispatcher ;
19
17
use OCP \Share \Events \BeforeShareCreatedEvent ;
18
+
20
19
/** @phan-suppress-next-line PhanUnreferencedUseNormal */
21
- use OCP \Share \IShare ;
22
20
23
21
class Application extends App implements IBootstrap {
24
22
public const APP_ID = 'notes ' ;
@@ -36,29 +34,15 @@ public function register(IRegistrationContext $context): void {
36
34
BeforeTemplateRenderedEvent::class,
37
35
BeforeTemplateRenderedListener::class
38
36
);
39
- if (\class_exists (BeforeShareCreatedEvent::class)) {
40
- $ context ->registerEventListener (
41
- BeforeShareCreatedEvent::class,
42
- BeforeShareCreatedListener::class
43
- );
44
- } else {
45
- // FIXME: Remove once Nextcloud 28 is the minimum supported version
46
- \OCP \Server::get (IEventDispatcher::class)->addListener ('OCP\Share::preShare ' , function ($ event ) {
47
- if (!$ event instanceof GenericEvent) {
48
- return ;
49
- }
50
-
51
- /** @var IShare $share */
52
- /** @phan-suppress-next-line PhanDeprecatedFunction */
53
- $ share = $ event ->getSubject ();
54
-
55
- $ modernListener = \OCP \Server::get (BeforeShareCreatedListener::class);
56
- $ modernListener ->overwriteShareTarget ($ share );
57
- }, 1000 );
58
- }
37
+ $ context ->registerEventListener (
38
+ BeforeShareCreatedEvent::class,
39
+ BeforeShareCreatedListener::class
40
+ );
59
41
}
60
42
61
43
public function boot (IBootContext $ context ): void {
62
- $ context ->getAppContainer ()->get (NotesHooks::class)->register ();
44
+ $ context ->injectFn (function (NotesHooks $ notesHooks ) {
45
+ $ notesHooks ->register ();
46
+ });
63
47
}
64
48
}
0 commit comments