From 43a11327a69ece55cbda3614c82336a205b02f4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Julius=20H=C3=A4rtl?= Date: Fri, 16 Nov 2018 14:53:45 +0100 Subject: [PATCH] Add dedicated setting for description change activities MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Julius Härtl --- appinfo/info.xml | 3 +- lib/Activity/ActivityManager.php | 4 ++- lib/Activity/DescriptionSetting.php | 45 +++++++++++++++++++++++++++++ lib/Activity/Setting.php | 14 ++++++++- 4 files changed, 63 insertions(+), 3 deletions(-) create mode 100644 lib/Activity/DescriptionSetting.php diff --git a/appinfo/info.xml b/appinfo/info.xml index a86a57867..3bcaaa55b 100644 --- a/appinfo/info.xml +++ b/appinfo/info.xml @@ -17,7 +17,7 @@ - 🚀 Get your project organized - 0.5.0 + 0.5.1-dev1 agpl Julius Härtl Deck @@ -53,6 +53,7 @@ OCA\Deck\Activity\Setting + OCA\Deck\Activity\DescriptionSetting OCA\Deck\Activity\Filter diff --git a/lib/Activity/ActivityManager.php b/lib/Activity/ActivityManager.php index ebecf0df6..f498aa17d 100644 --- a/lib/Activity/ActivityManager.php +++ b/lib/Activity/ActivityManager.php @@ -309,6 +309,7 @@ class ActivityManager { * Automatically fetch related details for subject parameters * depending on the subject */ + $eventType = 'deck'; $subjectParams = []; $message = null; switch ($subject) { @@ -372,6 +373,7 @@ class ActivityManager { if ($subject === self::SUBJECT_CARD_UPDATE_DESCRIPTION){ $subjectParams['diff'] = true; + $eventType = 'deck_card_description'; } if ($subject === self::SUBJECT_CARD_UPDATE_STACKID) { $subjectParams['stackBefore'] = $this->stackMapper->find($additionalParams['before']); @@ -382,7 +384,7 @@ class ActivityManager { $event = $this->manager->generateEvent(); $event->setApp('deck') - ->setType('deck') + ->setType($eventType) ->setAuthor($this->userId) ->setObject($objectType, (int)$object->getId(), $object->getTitle()) ->setSubject($subject, array_merge($subjectParams, $additionalParams)) diff --git a/lib/Activity/DescriptionSetting.php b/lib/Activity/DescriptionSetting.php new file mode 100644 index 000000000..787647ffa --- /dev/null +++ b/lib/Activity/DescriptionSetting.php @@ -0,0 +1,45 @@ + + * + * @author Julius Härtl + * + * @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\Deck\Activity; + + +class DescriptionSetting extends Setting { + + /** + * @return string Lowercase a-z and underscore only identifier + * @since 11.0.0 + */ + public function getIdentifier() { + return 'deck_card_description'; + } + + /** + * @return string A translated string + * @since 11.0.0 + */ + public function getName() { + return $this->l->t('A card description inside the Deck app has been changed'); + } + +} diff --git a/lib/Activity/Setting.php b/lib/Activity/Setting.php index 12080f263..9da38530c 100644 --- a/lib/Activity/Setting.php +++ b/lib/Activity/Setting.php @@ -24,8 +24,20 @@ namespace OCA\Deck\Activity; +use OCP\IL10N; + class Setting implements \OCP\Activity\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 11.0.0 @@ -39,7 +51,7 @@ class Setting implements \OCP\Activity\ISetting { * @since 11.0.0 */ public function getName() { - return 'Deck'; + return $this->l->t('Changes in the Deck app'); } /**