diff options
author | Joas Schilling <coding@schilljs.com> | 2016-10-25 18:23:51 +0200 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2016-11-16 09:25:44 +0100 |
commit | ca2124a2a17d1dc977bc5a3d31a6066b0833e58a (patch) | |
tree | e9c60819ec04f4adb809bc9a6f8adc743b15cff5 | |
parent | 13ff56bfc583fc983276e38ba239ccc7a14a4f33 (diff) | |
download | nextcloud-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.xml | 8 | ||||
-rw-r--r-- | apps/files/lib/Activity.php | 21 | ||||
-rw-r--r-- | apps/files/lib/Activity/Settings/FileChanged.php | 98 | ||||
-rw-r--r-- | apps/files/lib/Activity/Settings/FileCreated.php | 98 | ||||
-rw-r--r-- | apps/files/lib/Activity/Settings/FileDeleted.php | 98 | ||||
-rw-r--r-- | apps/files/lib/Activity/Settings/FileFavorite.php | 98 | ||||
-rw-r--r-- | apps/files/lib/Activity/Settings/FileRestored.php | 98 |
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; + } +} + |