Fix new core notifier
Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
parent
865c12aa0e
commit
64f67818bc
3 changed files with 43 additions and 21 deletions
|
@ -65,24 +65,8 @@ class Application extends App {
|
|||
$eventDispatcher = $server->query(IEventDispatcher::class);
|
||||
|
||||
$notificationManager = $server->getNotificationManager();
|
||||
$notificationManager->registerNotifier(function () use ($server) {
|
||||
return new RemoveLinkSharesNotifier(
|
||||
$server->getL10NFactory()
|
||||
);
|
||||
}, function () {
|
||||
return [
|
||||
'id' => 'core',
|
||||
'name' => 'core',
|
||||
];
|
||||
});
|
||||
$notificationManager->registerNotifier(function () use ($server) {
|
||||
return $server->query(AuthenticationNotifier::class);
|
||||
}, function () {
|
||||
return [
|
||||
'id' => 'auth',
|
||||
'name' => 'authentication notifier',
|
||||
];
|
||||
});
|
||||
$notificationManager->registerNotifier(RemoveLinkSharesNotifier::class);
|
||||
$notificationManager->registerNotifier(AuthenticationNotifier::class);
|
||||
|
||||
$eventDispatcher->addListener(IDBConnection::CHECK_MISSING_INDEXES_EVENT,
|
||||
function (GenericEvent $event) use ($container) {
|
||||
|
|
|
@ -36,7 +36,27 @@ class RemoveLinkSharesNotifier implements INotifier {
|
|||
$this->l10nFactory = $factory;
|
||||
}
|
||||
|
||||
public function prepare(INotification $notification, $languageCode): INotification {
|
||||
/**
|
||||
* Identifier of the notifier, only use [a-z0-9_]
|
||||
*
|
||||
* @return string
|
||||
* @since 17.0.0
|
||||
*/
|
||||
public function getID(): string {
|
||||
return 'core';
|
||||
}
|
||||
|
||||
/**
|
||||
* Human readable name describing the notifier
|
||||
*
|
||||
* @return string
|
||||
* @since 17.0.0
|
||||
*/
|
||||
public function getName(): string {
|
||||
return $this->l10nFactory->get('core')->t('Nextcloud Server');
|
||||
}
|
||||
|
||||
public function prepare(INotification $notification, string $languageCode): INotification {
|
||||
if($notification->getApp() !== 'core') {
|
||||
throw new \InvalidArgumentException();
|
||||
}
|
||||
|
@ -51,5 +71,4 @@ class RemoveLinkSharesNotifier implements INotifier {
|
|||
|
||||
throw new \InvalidArgumentException('Invalid subject');
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -42,7 +42,7 @@ class Notifier implements INotifier {
|
|||
/**
|
||||
* @inheritDoc
|
||||
*/
|
||||
public function prepare(INotification $notification, $languageCode) {
|
||||
public function prepare(INotification $notification, string $languageCode): INotification {
|
||||
if ($notification->getApp() !== 'auth') {
|
||||
// Not my app => throw
|
||||
throw new InvalidArgumentException();
|
||||
|
@ -74,4 +74,23 @@ class Notifier implements INotifier {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Identifier of the notifier, only use [a-z0-9_]
|
||||
*
|
||||
* @return string
|
||||
* @since 17.0.0
|
||||
*/
|
||||
public function getID(): string {
|
||||
return 'auth';
|
||||
}
|
||||
|
||||
/**
|
||||
* Human readable name describing the notifier
|
||||
*
|
||||
* @return string
|
||||
* @since 17.0.0
|
||||
*/
|
||||
public function getName(): string {
|
||||
return $this->factory->get('lib')->t('Authentication');
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue