diff --git a/lib/Listeners/Files/ShareCreatedSendMail.php b/lib/Listeners/Files/ShareCreatedSendMail.php index c205df367..20827c493 100644 --- a/lib/Listeners/Files/ShareCreatedSendMail.php +++ b/lib/Listeners/Files/ShareCreatedSendMail.php @@ -32,6 +32,7 @@ use OCA\Circles\Tools\Traits\TStringTools; use OCP\EventDispatcher\Event; use OCP\EventDispatcher\IEventListener; +use OCP\IUserManager; /** @template-implements IEventListener */ class ShareCreatedSendMail implements IEventListener { @@ -56,6 +57,8 @@ class ShareCreatedSendMail implements IEventListener { /** @var ContactService */ private $contactService; + /** @var IUserManager */ + private $userManager; public function __construct( ShareWrapperService $shareWrapperService, @@ -64,6 +67,7 @@ public function __construct( SendMailService $sendMailService, ContactService $contactService, ConfigService $configService, + IUserManager $userManager, ) { $this->shareWrapperService = $shareWrapperService; $this->shareTokenService = $shareTokenService; @@ -71,6 +75,7 @@ public function __construct( $this->sendMailService = $sendMailService; $this->contactService = $contactService; $this->configService = $configService; + $this->userManager = $userManager; $this->setup('app', Application::APP_ID); } @@ -127,6 +132,8 @@ public function handle(Event $event): void { if (!is_null($share)) { if ($share->hasInitiator()) { $author = $share->getInitiator()->getDisplayName(); + } elseif ($user = $this->userManager->get($share->getSharedBy())) { + $author = $user->getDisplayName(); } else { $author = 'someone'; }