From a11769e0e33ab5a33d1f33868f556abb6c2b5dbe Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 12 Aug 2020 00:15:53 +0200 Subject: [PATCH 1/2] move share notifcation settings to files group Signed-off-by: Robin Appelman --- .../composer/composer/autoload_classmap.php | 1 + .../composer/composer/autoload_static.php | 1 + .../lib/Activity/Settings/PublicLinks.php | 13 +---- .../lib/Activity/Settings/RemoteShare.php | 13 +---- .../Settings/ShareActivitySettings.php | 47 +++++++++++++++++++ .../lib/Activity/Settings/Shared.php | 13 +---- 6 files changed, 52 insertions(+), 36 deletions(-) create mode 100644 apps/files_sharing/lib/Activity/Settings/ShareActivitySettings.php diff --git a/apps/files_sharing/composer/composer/autoload_classmap.php b/apps/files_sharing/composer/composer/autoload_classmap.php index 5203b80a1b..4ba8d1659a 100644 --- a/apps/files_sharing/composer/composer/autoload_classmap.php +++ b/apps/files_sharing/composer/composer/autoload_classmap.php @@ -15,6 +15,7 @@ return array( 'OCA\\Files_Sharing\\Activity\\Providers\\Users' => $baseDir . '/../lib/Activity/Providers/Users.php', 'OCA\\Files_Sharing\\Activity\\Settings\\PublicLinks' => $baseDir . '/../lib/Activity/Settings/PublicLinks.php', 'OCA\\Files_Sharing\\Activity\\Settings\\RemoteShare' => $baseDir . '/../lib/Activity/Settings/RemoteShare.php', + 'OCA\\Files_Sharing\\Activity\\Settings\\ShareActivitySettings' => $baseDir . '/../lib/Activity/Settings/ShareActivitySettings.php', 'OCA\\Files_Sharing\\Activity\\Settings\\Shared' => $baseDir . '/../lib/Activity/Settings/Shared.php', 'OCA\\Files_Sharing\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php', 'OCA\\Files_Sharing\\BackgroundJob\\FederatedSharesDiscoverJob' => $baseDir . '/../lib/BackgroundJob/FederatedSharesDiscoverJob.php', diff --git a/apps/files_sharing/composer/composer/autoload_static.php b/apps/files_sharing/composer/composer/autoload_static.php index 56036b035e..4376ad0b82 100644 --- a/apps/files_sharing/composer/composer/autoload_static.php +++ b/apps/files_sharing/composer/composer/autoload_static.php @@ -30,6 +30,7 @@ class ComposerStaticInitFiles_Sharing 'OCA\\Files_Sharing\\Activity\\Providers\\Users' => __DIR__ . '/..' . '/../lib/Activity/Providers/Users.php', 'OCA\\Files_Sharing\\Activity\\Settings\\PublicLinks' => __DIR__ . '/..' . '/../lib/Activity/Settings/PublicLinks.php', 'OCA\\Files_Sharing\\Activity\\Settings\\RemoteShare' => __DIR__ . '/..' . '/../lib/Activity/Settings/RemoteShare.php', + 'OCA\\Files_Sharing\\Activity\\Settings\\ShareActivitySettings' => __DIR__ . '/..' . '/../lib/Activity/Settings/ShareActivitySettings.php', 'OCA\\Files_Sharing\\Activity\\Settings\\Shared' => __DIR__ . '/..' . '/../lib/Activity/Settings/Shared.php', 'OCA\\Files_Sharing\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php', 'OCA\\Files_Sharing\\BackgroundJob\\FederatedSharesDiscoverJob' => __DIR__ . '/..' . '/../lib/BackgroundJob/FederatedSharesDiscoverJob.php', diff --git a/apps/files_sharing/lib/Activity/Settings/PublicLinks.php b/apps/files_sharing/lib/Activity/Settings/PublicLinks.php index 60094b656e..fd8b6b56b8 100644 --- a/apps/files_sharing/lib/Activity/Settings/PublicLinks.php +++ b/apps/files_sharing/lib/Activity/Settings/PublicLinks.php @@ -26,18 +26,7 @@ namespace OCA\Files_Sharing\Activity\Settings; use OCP\Activity\ISetting; use OCP\IL10N; -class PublicLinks implements ISetting { - - /** @var IL10N */ - protected $l; - - /** - * @param IL10N $l - */ - public function __construct(IL10N $l) { - $this->l = $l; - } - +class PublicLinks extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier * @since 11.0.0 diff --git a/apps/files_sharing/lib/Activity/Settings/RemoteShare.php b/apps/files_sharing/lib/Activity/Settings/RemoteShare.php index 319b4ebfef..f6c4b873b4 100644 --- a/apps/files_sharing/lib/Activity/Settings/RemoteShare.php +++ b/apps/files_sharing/lib/Activity/Settings/RemoteShare.php @@ -27,18 +27,7 @@ namespace OCA\Files_Sharing\Activity\Settings; use OCP\Activity\ISetting; use OCP\IL10N; -class RemoteShare implements ISetting { - - /** @var IL10N */ - protected $l; - - /** - * @param IL10N $l - */ - public function __construct(IL10N $l) { - $this->l = $l; - } - +class RemoteShare extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier * @since 11.0.0 diff --git a/apps/files_sharing/lib/Activity/Settings/ShareActivitySettings.php b/apps/files_sharing/lib/Activity/Settings/ShareActivitySettings.php new file mode 100644 index 0000000000..14f3fe339c --- /dev/null +++ b/apps/files_sharing/lib/Activity/Settings/ShareActivitySettings.php @@ -0,0 +1,47 @@ + + * + * @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 . + * + */ + +namespace OCA\Files_Sharing\Activity\Settings; + +use OCP\Activity\ActivitySettings; +use OCP\IL10N; + +abstract class ShareActivitySettings extends ActivitySettings { + /** @var IL10N */ + protected $l; + + /** + * @param IL10N $l + */ + public function __construct(IL10N $l) { + $this->l = $l; + } + + public function getGroupIdentifier() { + return 'files'; + } + + public function getGroupName() { + return $this->l->t('Files'); + } +} diff --git a/apps/files_sharing/lib/Activity/Settings/Shared.php b/apps/files_sharing/lib/Activity/Settings/Shared.php index 1eb6270af3..40c3e0fea0 100644 --- a/apps/files_sharing/lib/Activity/Settings/Shared.php +++ b/apps/files_sharing/lib/Activity/Settings/Shared.php @@ -27,18 +27,7 @@ namespace OCA\Files_Sharing\Activity\Settings; use OCP\Activity\ISetting; use OCP\IL10N; -class Shared implements ISetting { - - /** @var IL10N */ - protected $l; - - /** - * @param IL10N $l - */ - public function __construct(IL10N $l) { - $this->l = $l; - } - +class Shared extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier * @since 11.0.0 From 5f58cefbd7898ebc07da7a80b75c98e4350d0cb5 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Wed, 12 Aug 2020 01:43:12 +0200 Subject: [PATCH 2/2] merge file activity settings into a single 'favorite changed' item Signed-off-by: Robin Appelman --- apps/files/appinfo/info.xml | 5 +- .../composer/composer/autoload_classmap.php | 5 +- .../composer/composer/autoload_static.php | 5 +- .../lib/Activity/Settings/FileChanged.php | 36 +++----- .../lib/Activity/Settings/FileDeleted.php | 84 ------------------- .../lib/Activity/Settings/FileFavorite.php | 84 ------------------- ...ileCreated.php => FileFavoriteChanged.php} | 12 ++- .../lib/Activity/Settings/FileRestored.php | 84 ------------------- .../tests/Activity/Setting/GenericTest.php | 9 +- .../lib/Activity/Settings/PublicLinks.php | 3 - .../lib/Activity/Settings/RemoteShare.php | 3 - .../lib/Activity/Settings/Shared.php | 3 - lib/private/Tags.php | 17 ++++ 13 files changed, 39 insertions(+), 311 deletions(-) delete mode 100644 apps/files/lib/Activity/Settings/FileDeleted.php delete mode 100644 apps/files/lib/Activity/Settings/FileFavorite.php rename apps/files/lib/Activity/Settings/{FileCreated.php => FileFavoriteChanged.php} (88%) delete mode 100644 apps/files/lib/Activity/Settings/FileRestored.php diff --git a/apps/files/appinfo/info.xml b/apps/files/appinfo/info.xml index 1ac21257a2..5390c0d1d9 100644 --- a/apps/files/appinfo/info.xml +++ b/apps/files/appinfo/info.xml @@ -40,10 +40,7 @@ OCA\Files\Activity\Settings\FavoriteAction OCA\Files\Activity\Settings\FileChanged - OCA\Files\Activity\Settings\FileCreated - OCA\Files\Activity\Settings\FileDeleted - OCA\Files\Activity\Settings\FileFavorite - OCA\Files\Activity\Settings\FileRestored + OCA\Files\Activity\Settings\FileFavoriteChanged diff --git a/apps/files/composer/composer/autoload_classmap.php b/apps/files/composer/composer/autoload_classmap.php index 2f5bb71916..a0cde3f844 100644 --- a/apps/files/composer/composer/autoload_classmap.php +++ b/apps/files/composer/composer/autoload_classmap.php @@ -14,10 +14,7 @@ return array( 'OCA\\Files\\Activity\\Settings\\FavoriteAction' => $baseDir . '/../lib/Activity/Settings/FavoriteAction.php', 'OCA\\Files\\Activity\\Settings\\FileActivitySettings' => $baseDir . '/../lib/Activity/Settings/FileActivitySettings.php', 'OCA\\Files\\Activity\\Settings\\FileChanged' => $baseDir . '/../lib/Activity/Settings/FileChanged.php', - 'OCA\\Files\\Activity\\Settings\\FileCreated' => $baseDir . '/../lib/Activity/Settings/FileCreated.php', - 'OCA\\Files\\Activity\\Settings\\FileDeleted' => $baseDir . '/../lib/Activity/Settings/FileDeleted.php', - 'OCA\\Files\\Activity\\Settings\\FileFavorite' => $baseDir . '/../lib/Activity/Settings/FileFavorite.php', - 'OCA\\Files\\Activity\\Settings\\FileRestored' => $baseDir . '/../lib/Activity/Settings/FileRestored.php', + 'OCA\\Files\\Activity\\Settings\\FileFavoriteChanged' => $baseDir . '/../lib/Activity/Settings/FileFavoriteChanged.php', 'OCA\\Files\\App' => $baseDir . '/../lib/App.php', 'OCA\\Files\\AppInfo\\Application' => $baseDir . '/../lib/AppInfo/Application.php', 'OCA\\Files\\BackgroundJob\\CleanupDirectEditingTokens' => $baseDir . '/../lib/BackgroundJob/CleanupDirectEditingTokens.php', diff --git a/apps/files/composer/composer/autoload_static.php b/apps/files/composer/composer/autoload_static.php index fe9809f9e2..620e7d8d55 100644 --- a/apps/files/composer/composer/autoload_static.php +++ b/apps/files/composer/composer/autoload_static.php @@ -29,10 +29,7 @@ class ComposerStaticInitFiles 'OCA\\Files\\Activity\\Settings\\FavoriteAction' => __DIR__ . '/..' . '/../lib/Activity/Settings/FavoriteAction.php', 'OCA\\Files\\Activity\\Settings\\FileActivitySettings' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileActivitySettings.php', 'OCA\\Files\\Activity\\Settings\\FileChanged' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileChanged.php', - 'OCA\\Files\\Activity\\Settings\\FileCreated' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileCreated.php', - 'OCA\\Files\\Activity\\Settings\\FileDeleted' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileDeleted.php', - 'OCA\\Files\\Activity\\Settings\\FileFavorite' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileFavorite.php', - 'OCA\\Files\\Activity\\Settings\\FileRestored' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileRestored.php', + 'OCA\\Files\\Activity\\Settings\\FileFavoriteChanged' => __DIR__ . '/..' . '/../lib/Activity/Settings/FileFavoriteChanged.php', 'OCA\\Files\\App' => __DIR__ . '/..' . '/../lib/App.php', 'OCA\\Files\\AppInfo\\Application' => __DIR__ . '/..' . '/../lib/AppInfo/Application.php', 'OCA\\Files\\BackgroundJob\\CleanupDirectEditingTokens' => __DIR__ . '/..' . '/../lib/BackgroundJob/CleanupDirectEditingTokens.php', diff --git a/apps/files/lib/Activity/Settings/FileChanged.php b/apps/files/lib/Activity/Settings/FileChanged.php index bf3780a575..aa684e5acb 100644 --- a/apps/files/lib/Activity/Settings/FileChanged.php +++ b/apps/files/lib/Activity/Settings/FileChanged.php @@ -37,7 +37,7 @@ class FileChanged extends FileActivitySettings { * @since 11.0.0 */ public function getName() { - return $this->l->t('A file or folder has been changed or renamed'); + return $this->l->t('A file or folder has been changed'); } /** @@ -50,35 +50,19 @@ class FileChanged extends FileActivitySettings { return 1; } - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function canChangeStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the mail - * @since 11.0.0 - */ public function canChangeMail() { - return true; + return false; } - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ public function isDefaultEnabledMail() { return false; } + + public function canChangeNotification() { + return false; + } + + public function isDefaultEnabledNotification() { + return false; + } } diff --git a/apps/files/lib/Activity/Settings/FileDeleted.php b/apps/files/lib/Activity/Settings/FileDeleted.php deleted file mode 100644 index 05754463bc..0000000000 --- a/apps/files/lib/Activity/Settings/FileDeleted.php +++ /dev/null @@ -1,84 +0,0 @@ - - * - * @author Joas Schilling - * - * @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 . - * - */ - -namespace OCA\Files\Activity\Settings; - -class FileDeleted extends FileActivitySettings { - /** - * @return string Lowercase a-z and underscore only identifier - * @since 11.0.0 - */ - public function getIdentifier() { - return 'file_deleted'; - } - - /** - * @return string A translated string - * @since 11.0.0 - */ - public function getName() { - return $this->l->t('A file or folder has been deleted'); - } - - /** - * @return int whether the filter should be rather on the top or bottom of - * the admin section. The filters are arranged in ascending order of the - * priority values. It is required to return a value between 0 and 100. - * @since 11.0.0 - */ - public function getPriority() { - return 3; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function canChangeStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the mail - * @since 11.0.0 - */ - public function canChangeMail() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledMail() { - return false; - } -} diff --git a/apps/files/lib/Activity/Settings/FileFavorite.php b/apps/files/lib/Activity/Settings/FileFavorite.php deleted file mode 100644 index 72ba01e537..0000000000 --- a/apps/files/lib/Activity/Settings/FileFavorite.php +++ /dev/null @@ -1,84 +0,0 @@ - - * - * @author Joas Schilling - * - * @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 . - * - */ - -namespace OCA\Files\Activity\Settings; - -class FileFavorite extends FileActivitySettings { - /** - * @return string Lowercase a-z and underscore only identifier - * @since 11.0.0 - */ - public function getIdentifier() { - return 'file_favorite'; - } - - /** - * @return string A translated string - * @since 11.0.0 - */ - public function getName() { - return $this->l->t('Limit notifications about creation and changes to your favorite files (Stream only)'); - } - - /** - * @return int whether the filter should be rather on the top or bottom of - * the admin section. The filters are arranged in ascending order of the - * priority values. It is required to return a value between 0 and 100. - * @since 11.0.0 - */ - public function getPriority() { - return 2; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function canChangeStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledStream() { - return false; - } - - /** - * @return bool True when the option can be changed for the mail - * @since 11.0.0 - */ - public function canChangeMail() { - return false; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledMail() { - return false; - } -} diff --git a/apps/files/lib/Activity/Settings/FileCreated.php b/apps/files/lib/Activity/Settings/FileFavoriteChanged.php similarity index 88% rename from apps/files/lib/Activity/Settings/FileCreated.php rename to apps/files/lib/Activity/Settings/FileFavoriteChanged.php index 589f905286..e1730cc8d4 100644 --- a/apps/files/lib/Activity/Settings/FileCreated.php +++ b/apps/files/lib/Activity/Settings/FileFavoriteChanged.php @@ -23,13 +23,13 @@ namespace OCA\Files\Activity\Settings; -class FileCreated extends FileActivitySettings { +class FileFavoriteChanged extends FileActivitySettings { /** * @return string Lowercase a-z and underscore only identifier * @since 11.0.0 */ public function getIdentifier() { - return 'file_created'; + return 'file_favorite_changed'; } /** @@ -37,7 +37,7 @@ class FileCreated extends FileActivitySettings { * @since 11.0.0 */ public function getName() { - return $this->l->t('A new file or folder has been created'); + return $this->l->t('A favorite file or folder has been changed'); } /** @@ -47,7 +47,7 @@ class FileCreated extends FileActivitySettings { * @since 11.0.0 */ public function getPriority() { - return 0; + return 1; } /** @@ -81,4 +81,8 @@ class FileCreated extends FileActivitySettings { public function isDefaultEnabledMail() { return false; } + + public function isDefaultEnabledNotification() { + return true; + } } diff --git a/apps/files/lib/Activity/Settings/FileRestored.php b/apps/files/lib/Activity/Settings/FileRestored.php deleted file mode 100644 index f149554bc8..0000000000 --- a/apps/files/lib/Activity/Settings/FileRestored.php +++ /dev/null @@ -1,84 +0,0 @@ - - * - * @author Joas Schilling - * - * @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 . - * - */ - -namespace OCA\Files\Activity\Settings; - -class FileRestored extends FileActivitySettings { - /** - * @return string Lowercase a-z and underscore only identifier - * @since 11.0.0 - */ - public function getIdentifier() { - return 'file_restored'; - } - - /** - * @return string A translated string - * @since 11.0.0 - */ - public function getName() { - return $this->l->t('A file or folder has been restored'); - } - - /** - * @return int whether the filter should be rather on the top or bottom of - * the admin section. The filters are arranged in ascending order of the - * priority values. It is required to return a value between 0 and 100. - * @since 11.0.0 - */ - public function getPriority() { - return 4; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function canChangeStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledStream() { - return true; - } - - /** - * @return bool True when the option can be changed for the mail - * @since 11.0.0 - */ - public function canChangeMail() { - return true; - } - - /** - * @return bool True when the option can be changed for the stream - * @since 11.0.0 - */ - public function isDefaultEnabledMail() { - return false; - } -} diff --git a/apps/files/tests/Activity/Setting/GenericTest.php b/apps/files/tests/Activity/Setting/GenericTest.php index e741a3e02a..01d376a3d8 100644 --- a/apps/files/tests/Activity/Setting/GenericTest.php +++ b/apps/files/tests/Activity/Setting/GenericTest.php @@ -26,10 +26,6 @@ namespace OCA\Files\Tests\Activity\Setting; use OCA\Files\Activity\Settings\FavoriteAction; use OCA\Files\Activity\Settings\FileChanged; -use OCA\Files\Activity\Settings\FileCreated; -use OCA\Files\Activity\Settings\FileDeleted; -use OCA\Files\Activity\Settings\FileFavorite; -use OCA\Files\Activity\Settings\FileRestored; use OCP\Activity\ISetting; use Test\TestCase; @@ -38,10 +34,7 @@ class GenericTest extends TestCase { return [ [FavoriteAction::class], [FileChanged::class], - [FileCreated::class], - [FileDeleted::class], - [FileFavorite::class], - [FileRestored::class], + [FileChanged::class], ]; } diff --git a/apps/files_sharing/lib/Activity/Settings/PublicLinks.php b/apps/files_sharing/lib/Activity/Settings/PublicLinks.php index fd8b6b56b8..87158cc5e0 100644 --- a/apps/files_sharing/lib/Activity/Settings/PublicLinks.php +++ b/apps/files_sharing/lib/Activity/Settings/PublicLinks.php @@ -23,9 +23,6 @@ namespace OCA\Files_Sharing\Activity\Settings; -use OCP\Activity\ISetting; -use OCP\IL10N; - class PublicLinks extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier diff --git a/apps/files_sharing/lib/Activity/Settings/RemoteShare.php b/apps/files_sharing/lib/Activity/Settings/RemoteShare.php index f6c4b873b4..55eba626e2 100644 --- a/apps/files_sharing/lib/Activity/Settings/RemoteShare.php +++ b/apps/files_sharing/lib/Activity/Settings/RemoteShare.php @@ -24,9 +24,6 @@ namespace OCA\Files_Sharing\Activity\Settings; -use OCP\Activity\ISetting; -use OCP\IL10N; - class RemoteShare extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier diff --git a/apps/files_sharing/lib/Activity/Settings/Shared.php b/apps/files_sharing/lib/Activity/Settings/Shared.php index 40c3e0fea0..9ec89d1d1f 100644 --- a/apps/files_sharing/lib/Activity/Settings/Shared.php +++ b/apps/files_sharing/lib/Activity/Settings/Shared.php @@ -24,9 +24,6 @@ namespace OCA\Files_Sharing\Activity\Settings; -use OCP\Activity\ISetting; -use OCP\IL10N; - class Shared extends ShareActivitySettings { /** * @return string Lowercase a-z and underscore only identifier diff --git a/lib/private/Tags.php b/lib/private/Tags.php index 3fc66c69d6..22c6c68ba6 100644 --- a/lib/private/Tags.php +++ b/lib/private/Tags.php @@ -641,6 +641,23 @@ class Tags implements ITags { return $this->unTag($objid, ITags::TAG_FAVORITE); } + /** + * Get all users who favorited an object + */ + public function getUsersFavoritingObject($objId) { + $entries = []; + + $query = \OC::$server->getDatabaseConnection()->getQueryBuilder(); + $query->select('uid') + ->from('vcategory_to_object', 'o') + ->innerJoin('o', 'vcategory', 'c', $query->expr()->eq('o.categoryid', 'c.id')) + ->where($query->expr()->eq('objid', $query->createNamedParameter($objId, IQueryBuilder::PARAM_INT))) + ->andWhere($query->expr()->eq('c.type', $query->createNamedParameter($this->type))) + ->andWhere($query->expr()->eq('c.category', $query->createNamedParameter(ITags::TAG_FAVORITE))); + + return $query->execute()->fetchAll(\PDO::FETCH_COLUMN); + } + /** * Creates a tag/object relation. *