Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/server.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin Appelman <robin@icewind.nl>2020-08-12 02:43:12 +0300
committerRobin Appelman <robin@icewind.nl>2020-08-13 01:01:34 +0300
commit5f58cefbd7898ebc07da7a80b75c98e4350d0cb5 (patch)
treead13ea82f7340ce7e6c9763c4bd9275529d6efff
parenta11769e0e33ab5a33d1f33868f556abb6c2b5dbe (diff)
merge file activity settings into a single 'favorite changed' item
Signed-off-by: Robin Appelman <robin@icewind.nl>
-rw-r--r--apps/files/appinfo/info.xml5
-rw-r--r--apps/files/composer/composer/autoload_classmap.php5
-rw-r--r--apps/files/composer/composer/autoload_static.php5
-rw-r--r--apps/files/lib/Activity/Settings/FileChanged.php32
-rw-r--r--apps/files/lib/Activity/Settings/FileDeleted.php84
-rw-r--r--apps/files/lib/Activity/Settings/FileFavorite.php84
-rw-r--r--apps/files/lib/Activity/Settings/FileFavoriteChanged.php (renamed from apps/files/lib/Activity/Settings/FileCreated.php)12
-rw-r--r--apps/files/lib/Activity/Settings/FileRestored.php84
-rw-r--r--apps/files/tests/Activity/Setting/GenericTest.php9
-rw-r--r--apps/files_sharing/lib/Activity/Settings/PublicLinks.php3
-rw-r--r--apps/files_sharing/lib/Activity/Settings/RemoteShare.php3
-rw-r--r--apps/files_sharing/lib/Activity/Settings/Shared.php3
-rw-r--r--lib/private/Tags.php17
13 files changed, 37 insertions, 309 deletions
diff --git a/apps/files/appinfo/info.xml b/apps/files/appinfo/info.xml
index 1ac21257a24..5390c0d1d91 100644
--- a/apps/files/appinfo/info.xml
+++ b/apps/files/appinfo/info.xml
@@ -40,10 +40,7 @@
<settings>
<setting>OCA\Files\Activity\Settings\FavoriteAction</setting>
<setting>OCA\Files\Activity\Settings\FileChanged</setting>
- <setting>OCA\Files\Activity\Settings\FileCreated</setting>
- <setting>OCA\Files\Activity\Settings\FileDeleted</setting>
- <setting>OCA\Files\Activity\Settings\FileFavorite</setting>
- <setting>OCA\Files\Activity\Settings\FileRestored</setting>
+ <setting>OCA\Files\Activity\Settings\FileFavoriteChanged</setting>
</settings>
<filters>
diff --git a/apps/files/composer/composer/autoload_classmap.php b/apps/files/composer/composer/autoload_classmap.php
index 2f5bb719166..a0cde3f8447 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 fe9809f9e29..620e7d8d55b 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 bf3780a575f..aa684e5acb1 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 <strong>changed</strong> or <strong>renamed</strong>');
+ return $this->l->t('A file or folder has been <strong>changed</strong>');
}
/**
@@ -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;
+ public function canChangeMail() {
+ return false;
}
- /**
- * @return bool True when the option can be changed for the stream
- * @since 11.0.0
- */
- public function isDefaultEnabledStream() {
- return true;
+ public function isDefaultEnabledMail() {
+ return false;
}
- /**
- * @return bool True when the option can be changed for the mail
- * @since 11.0.0
- */
- public function canChangeMail() {
- return true;
+ public function canChangeNotification() {
+ return false;
}
- /**
- * @return bool True when the option can be changed for the stream
- * @since 11.0.0
- */
- public function isDefaultEnabledMail() {
+ 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 05754463bc2..00000000000
--- a/apps/files/lib/Activity/Settings/FileDeleted.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com>
- *
- * @author Joas Schilling <coding@schilljs.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-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 <strong>deleted</strong>');
- }
-
- /**
- * @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 72ba01e537a..00000000000
--- a/apps/files/lib/Activity/Settings/FileFavorite.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com>
- *
- * @author Joas Schilling <coding@schilljs.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-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 <strong>favorite files</strong> <em>(Stream only)</em>');
- }
-
- /**
- * @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
index 589f905286a..e1730cc8d41 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 <strong>created</strong>');
+ return $this->l->t('A favorite file or folder has been <strong>changed</strong>');
}
/**
@@ -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 f149554bc88..00000000000
--- a/apps/files/lib/Activity/Settings/FileRestored.php
+++ /dev/null
@@ -1,84 +0,0 @@
-<?php
-/**
- * @copyright Copyright (c) 2016 Joas Schilling <coding@schilljs.com>
- *
- * @author Joas Schilling <coding@schilljs.com>
- *
- * @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 <http://www.gnu.org/licenses/>.
- *
- */
-
-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 <strong>restored</strong>');
- }
-
- /**
- * @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 e741a3e02a8..01d376a3d8f 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 fd8b6b56b88..87158cc5e03 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 f6c4b873b45..55eba626e2c 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 40c3e0fea06..9ec89d1d1f2 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 3fc66c69d6c..22c6c68ba6c 100644
--- a/lib/private/Tags.php
+++ b/lib/private/Tags.php
@@ -642,6 +642,23 @@ class Tags implements ITags {
}
/**
+ * 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.
*
* @param int $objid The id of the object