aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoas Schilling <coding@schilljs.com>2016-10-25 18:23:51 +0200
committerJoas Schilling <coding@schilljs.com>2016-11-16 09:25:44 +0100
commitca2124a2a17d1dc977bc5a3d31a6066b0833e58a (patch)
treee9c60819ec04f4adb809bc9a6f8adc743b15cff5
parent13ff56bfc583fc983276e38ba239ccc7a14a4f33 (diff)
downloadnextcloud-server-ca2124a2a17d1dc977bc5a3d31a6066b0833e58a.tar.gz
nextcloud-server-ca2124a2a17d1dc977bc5a3d31a6066b0833e58a.zip
Register the settings of the files app via info.xml
Signed-off-by: Joas Schilling <coding@schilljs.com>
-rw-r--r--apps/files/appinfo/info.xml8
-rw-r--r--apps/files/lib/Activity.php21
-rw-r--r--apps/files/lib/Activity/Settings/FileChanged.php98
-rw-r--r--apps/files/lib/Activity/Settings/FileCreated.php98
-rw-r--r--apps/files/lib/Activity/Settings/FileDeleted.php98
-rw-r--r--apps/files/lib/Activity/Settings/FileFavorite.php98
-rw-r--r--apps/files/lib/Activity/Settings/FileRestored.php98
7 files changed, 499 insertions, 20 deletions
diff --git a/apps/files/appinfo/info.xml b/apps/files/appinfo/info.xml
index d19c57dffe0..53452f4b071 100644
--- a/apps/files/appinfo/info.xml
+++ b/apps/files/appinfo/info.xml
@@ -18,6 +18,14 @@
</documentation>
<activity>
+ <settings>
+ <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>
+ </settings>
+
<filters>
<filter>OCA\Files\Activity\Filter\FileChanges</filter>
<filter>OCA\Files\Activity\Filter\Favorites</filter>
diff --git a/apps/files/lib/Activity.php b/apps/files/lib/Activity.php
index f60f4f16f0a..0155a3b7e9e 100644
--- a/apps/files/lib/Activity.php
+++ b/apps/files/lib/Activity.php
@@ -96,17 +96,7 @@ class Activity implements IExtension {
* ]
*/
public function getNotificationTypes($languageCode) {
- $l = $this->getL10N($languageCode);
- return [
- self::TYPE_SHARE_CREATED => (string) $l->t('A new file or folder has been <strong>created</strong>'),
- self::TYPE_SHARE_CHANGED => (string) $l->t('A file or folder has been <strong>changed</strong> or <strong>renamed</strong>'),
- self::TYPE_FAVORITES => [
- 'desc' => (string) $l->t('Limit notifications about creation and changes to your <strong>favorite files</strong> <em>(Stream only)</em>'),
- 'methods' => [self::METHOD_STREAM],
- ],
- self::TYPE_SHARE_DELETED => (string) $l->t('A file or folder has been <strong>deleted</strong>'),
- self::TYPE_SHARE_RESTORED => (string) $l->t('A file or folder has been <strong>restored</strong>'),
- ];
+ return false;
}
/**
@@ -117,15 +107,6 @@ class Activity implements IExtension {
* @return array|false
*/
public function getDefaultTypes($method) {
- if ($method === self::METHOD_STREAM) {
- $settings = array();
- $settings[] = self::TYPE_SHARE_CREATED;
- $settings[] = self::TYPE_SHARE_CHANGED;
- $settings[] = self::TYPE_SHARE_DELETED;
- $settings[] = self::TYPE_SHARE_RESTORED;
- return $settings;
- }
-
return false;
}
diff --git a/apps/files/lib/Activity/Settings/FileChanged.php b/apps/files/lib/Activity/Settings/FileChanged.php
new file mode 100644
index 00000000000..d0ff69faf5b
--- /dev/null
+++ b/apps/files/lib/Activity/Settings/FileChanged.php
@@ -0,0 +1,98 @@
+<?php
+/**
+ * @copyright Copyright (c) 2016 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;
+
+
+use OCP\Activity\ISetting;
+use OCP\IL10N;
+
+class FileChanged implements ISetting {
+
+ /** @var IL10N */
+ protected $l;
+
+ /**
+ * @param IL10N $l
+ */
+ public function __construct(IL10N $l) {
+ $this->l = $l;
+ }
+
+ /**
+ * @return string Lowercase a-z and underscore only identifier
+ * @since 9.2.0
+ */
+ public function getIdentifier() {
+ return 'file_changed';
+ }
+
+ /**
+ * @return string A translated string
+ * @since 9.2.0
+ */
+ public function getName() {
+ return $this->l->t('A file or folder has been <strong>changed</strong> or <strong>renamed</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 9.2.0
+ */
+ public function getPriority() {
+ return 1;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function canChangeStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the mail
+ * @since 9.2.0
+ */
+ public function canChangeMail() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledMail() {
+ return false;
+ }
+}
+
diff --git a/apps/files/lib/Activity/Settings/FileCreated.php b/apps/files/lib/Activity/Settings/FileCreated.php
new file mode 100644
index 00000000000..e0ae23a5fe5
--- /dev/null
+++ b/apps/files/lib/Activity/Settings/FileCreated.php
@@ -0,0 +1,98 @@
+<?php
+/**
+ * @copyright Copyright (c) 2016 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;
+
+
+use OCP\Activity\ISetting;
+use OCP\IL10N;
+
+class FileCreated implements ISetting {
+
+ /** @var IL10N */
+ protected $l;
+
+ /**
+ * @param IL10N $l
+ */
+ public function __construct(IL10N $l) {
+ $this->l = $l;
+ }
+
+ /**
+ * @return string Lowercase a-z and underscore only identifier
+ * @since 9.2.0
+ */
+ public function getIdentifier() {
+ return 'file_created';
+ }
+
+ /**
+ * @return string A translated string
+ * @since 9.2.0
+ */
+ public function getName() {
+ return $this->l->t('A new file or folder has been <strong>created</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 9.2.0
+ */
+ public function getPriority() {
+ return 0;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function canChangeStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the mail
+ * @since 9.2.0
+ */
+ public function canChangeMail() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledMail() {
+ return false;
+ }
+}
+
diff --git a/apps/files/lib/Activity/Settings/FileDeleted.php b/apps/files/lib/Activity/Settings/FileDeleted.php
new file mode 100644
index 00000000000..9378186fab5
--- /dev/null
+++ b/apps/files/lib/Activity/Settings/FileDeleted.php
@@ -0,0 +1,98 @@
+<?php
+/**
+ * @copyright Copyright (c) 2016 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;
+
+
+use OCP\Activity\ISetting;
+use OCP\IL10N;
+
+class FileDeleted implements ISetting {
+
+ /** @var IL10N */
+ protected $l;
+
+ /**
+ * @param IL10N $l
+ */
+ public function __construct(IL10N $l) {
+ $this->l = $l;
+ }
+
+ /**
+ * @return string Lowercase a-z and underscore only identifier
+ * @since 9.2.0
+ */
+ public function getIdentifier() {
+ return 'file_deleted';
+ }
+
+ /**
+ * @return string A translated string
+ * @since 9.2.0
+ */
+ public function getName() {
+ return $this->l->t('A new 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 9.2.0
+ */
+ public function getPriority() {
+ return 3;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function canChangeStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the mail
+ * @since 9.2.0
+ */
+ public function canChangeMail() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledMail() {
+ return false;
+ }
+}
+
diff --git a/apps/files/lib/Activity/Settings/FileFavorite.php b/apps/files/lib/Activity/Settings/FileFavorite.php
new file mode 100644
index 00000000000..00ac41b8e82
--- /dev/null
+++ b/apps/files/lib/Activity/Settings/FileFavorite.php
@@ -0,0 +1,98 @@
+<?php
+/**
+ * @copyright Copyright (c) 2016 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;
+
+
+use OCP\Activity\ISetting;
+use OCP\IL10N;
+
+class FileFavorite implements ISetting {
+
+ /** @var IL10N */
+ protected $l;
+
+ /**
+ * @param IL10N $l
+ */
+ public function __construct(IL10N $l) {
+ $this->l = $l;
+ }
+
+ /**
+ * @return string Lowercase a-z and underscore only identifier
+ * @since 9.2.0
+ */
+ public function getIdentifier() {
+ return 'file_favorite';
+ }
+
+ /**
+ * @return string A translated string
+ * @since 9.2.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 9.2.0
+ */
+ public function getPriority() {
+ return 2;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function canChangeStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledStream() {
+ return false;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the mail
+ * @since 9.2.0
+ */
+ public function canChangeMail() {
+ return false;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledMail() {
+ return false;
+ }
+}
+
diff --git a/apps/files/lib/Activity/Settings/FileRestored.php b/apps/files/lib/Activity/Settings/FileRestored.php
new file mode 100644
index 00000000000..bc6ec171254
--- /dev/null
+++ b/apps/files/lib/Activity/Settings/FileRestored.php
@@ -0,0 +1,98 @@
+<?php
+/**
+ * @copyright Copyright (c) 2016 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;
+
+
+use OCP\Activity\ISetting;
+use OCP\IL10N;
+
+class FileRestored implements ISetting {
+
+ /** @var IL10N */
+ protected $l;
+
+ /**
+ * @param IL10N $l
+ */
+ public function __construct(IL10N $l) {
+ $this->l = $l;
+ }
+
+ /**
+ * @return string Lowercase a-z and underscore only identifier
+ * @since 9.2.0
+ */
+ public function getIdentifier() {
+ return 'file_restored';
+ }
+
+ /**
+ * @return string A translated string
+ * @since 9.2.0
+ */
+ public function getName() {
+ return $this->l->t('A new 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 9.2.0
+ */
+ public function getPriority() {
+ return 4;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function canChangeStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledStream() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the mail
+ * @since 9.2.0
+ */
+ public function canChangeMail() {
+ return true;
+ }
+
+ /**
+ * @return bool True when the option can be changed for the stream
+ * @since 9.2.0
+ */
+ public function isDefaultEnabledMail() {
+ return false;
+ }
+}
+