summaryrefslogtreecommitdiffstats
path: root/apps/files/lib/Activity/FavoriteProvider.php
diff options
context:
space:
mode:
Diffstat (limited to 'apps/files/lib/Activity/FavoriteProvider.php')
-rw-r--r--apps/files/lib/Activity/FavoriteProvider.php17
1 files changed, 13 insertions, 4 deletions
diff --git a/apps/files/lib/Activity/FavoriteProvider.php b/apps/files/lib/Activity/FavoriteProvider.php
index ed00d50f221..941579e730d 100644
--- a/apps/files/lib/Activity/FavoriteProvider.php
+++ b/apps/files/lib/Activity/FavoriteProvider.php
@@ -138,12 +138,21 @@ class FavoriteProvider implements IProvider {
* @param string $subject
*/
protected function setSubjects(IEvent $event, $subject) {
+ $subjectParams = $event->getSubjectParameters();
+ if (empty($subjectParams)) {
+ // Try to fall back to the old way, but this does not work for emails.
+ // But at least old activities still work.
+ $subjectParams = [
+ 'id' => $event->getObjectId(),
+ 'path' => $event->getObjectName(),
+ ];
+ }
$parameter = [
'type' => 'file',
- 'id' => $event->getObjectId(),
- 'name' => basename($event->getObjectName()),
- 'path' => trim($event->getObjectName(), '/'),
- 'link' => $this->url->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $event->getObjectId()]),
+ 'id' => $subjectParams['id'],
+ 'name' => basename($subjectParams['path']),
+ 'path' => trim($subjectParams['path'], '/'),
+ 'link' => $this->url->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $subjectParams['id']]),
];
$event->setParsedSubject(str_replace('{file}', $parameter['path'], $subject))