From 227e362842a2340591608d6cb209e46a817f3403 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 5 Aug 2020 15:57:51 +0200 Subject: allow grouping of activity settings Signed-off-by: Robin Appelman --- lib/private/Activity/ActivitySettingsAdapter.php | 13 ++++++++++++- lib/private/Activity/Manager.php | 17 ++++++++++++----- 2 files changed, 24 insertions(+), 6 deletions(-) (limited to 'lib/private/Activity') diff --git a/lib/private/Activity/ActivitySettingsAdapter.php b/lib/private/Activity/ActivitySettingsAdapter.php index c49231bee2c..ef629be72f7 100644 --- a/lib/private/Activity/ActivitySettingsAdapter.php +++ b/lib/private/Activity/ActivitySettingsAdapter.php @@ -25,6 +25,7 @@ namespace OC\Activity; use OCP\Activity\ActivitySettings; use OCP\Activity\ISetting; +use OCP\IL10N; /** * Adapt the old interface based settings into the new abstract @@ -32,9 +33,11 @@ use OCP\Activity\ISetting; */ class ActivitySettingsAdapter extends ActivitySettings { private $oldSettings; + private $l10n; - public function __construct(ISetting $oldSettings) { + public function __construct(ISetting $oldSettings, IL10N $l10n) { $this->oldSettings = $oldSettings; + $this->l10n = $l10n; } public function getIdentifier() { @@ -45,6 +48,14 @@ class ActivitySettingsAdapter extends ActivitySettings { return $this->oldSettings->getName(); } + public function getGroupIdentifier() { + return 'other'; + } + + public function getGroupName() { + return $this->l10n->t('Other activities'); + } + public function getPriority() { return $this->oldSettings->getPriority(); } diff --git a/lib/private/Activity/Manager.php b/lib/private/Activity/Manager.php index 81fd91c778a..f5ea59491e5 100644 --- a/lib/private/Activity/Manager.php +++ b/lib/private/Activity/Manager.php @@ -36,6 +36,7 @@ use OCP\Activity\IManager; use OCP\Activity\IProvider; use OCP\Activity\ISetting; use OCP\IConfig; +use OCP\IL10N; use OCP\IRequest; use OCP\IUser; use OCP\IUserSession; @@ -66,14 +67,20 @@ class Manager implements IManager { /** @var string */ protected $currentUserId; - public function __construct(IRequest $request, - IUserSession $session, - IConfig $config, - IValidator $validator) { + protected $l10n; + + public function __construct( + IRequest $request, + IUserSession $session, + IConfig $config, + IValidator $validator, + IL10N $l10n + ) { $this->request = $request; $this->session = $session; $this->config = $config; $this->validator = $validator; + $this->l10n = $l10n; } /** @var \Closure[] */ @@ -273,7 +280,7 @@ class Manager implements IManager { if ($setting instanceof ISetting) { if (!$setting instanceof ActivitySettings) { - $setting = new ActivitySettingsAdapter($setting); + $setting = new ActivitySettingsAdapter($setting, $this->l10n); } } else { throw new \InvalidArgumentException('Invalid activity filter registered'); -- cgit v1.2.3