Browse Source

show name of organizer in from name of invitation email

Signed-off-by: Georg Ehrke <developer@georgehrke.com>
tags/v13.0.0beta2
Georg Ehrke 6 years ago
parent
commit
072652b2af
No account linked to committer's email address

+ 11
- 1
apps/dav/lib/CalDAV/Schedule/IMipPlugin.php View File

@@ -26,6 +26,7 @@
namespace OCA\DAV\CalDAV\Schedule;

use OCP\AppFramework\Utility\ITimeFactory;
use OCP\Defaults;
use OCP\IConfig;
use OCP\IL10N;
use OCP\ILogger;
@@ -79,6 +80,9 @@ class IMipPlugin extends SabreIMipPlugin {
/** @var IURLGenerator */
private $urlGenerator;

/** @var Defaults */
private $defaults;

const MAX_DATE = '2038-01-01';

const METHOD_REQUEST = 'request';
@@ -92,9 +96,10 @@ class IMipPlugin extends SabreIMipPlugin {
* @param ITimeFactory $timeFactory
* @param L10NFactory $l10nFactory
* @param IUrlGenerator $urlGenerator
* @param Defaults $defaults
* @param string $userId
*/
public function __construct(IConfig $config, IMailer $mailer, ILogger $logger, ITimeFactory $timeFactory, L10NFactory $l10nFactory, IURLGenerator $urlGenerator, $userId) {
public function __construct(IConfig $config, IMailer $mailer, ILogger $logger, ITimeFactory $timeFactory, L10NFactory $l10nFactory, IURLGenerator $urlGenerator, Defaults $defaults, $userId) {
parent::__construct('');
$this->userId = $userId;
$this->config = $config;
@@ -103,6 +108,7 @@ class IMipPlugin extends SabreIMipPlugin {
$this->timeFactory = $timeFactory;
$this->l10nFactory = $l10nFactory;
$this->urlGenerator = $urlGenerator;
$this->defaults = $defaults;
}

/**
@@ -202,7 +208,11 @@ class IMipPlugin extends SabreIMipPlugin {
'meeting_url' => (string)$meetingUrl ?: $defaultVal,
);

$fromEMail = \OCP\Util::getDefaultEmailAddress('invitations-noreply');
$fromName = $l10n->t('%s via %s', [$senderName, $this->defaults->getName()]);

$message = $this->mailer->createMessage()
->setFrom([$fromEMail => $fromName])
->setReplyTo([$sender => $senderName])
->setTo([$recipient => $recipientName]);


+ 16
- 3
apps/dav/tests/unit/CalDAV/Schedule/IMipPluginTest.php View File

@@ -29,6 +29,7 @@ namespace OCA\DAV\Tests\unit\CalDAV\Schedule;
use OC\Mail\Mailer;
use OCA\DAV\CalDAV\Schedule\IMipPlugin;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\Defaults;
use OCP\IConfig;
use OCP\IL10N;
use OCP\ILogger;
@@ -46,6 +47,7 @@ class IMipPluginTest extends TestCase {

public function testDelivery() {
$mailMessage = $this->createMock(IMessage::class);
$mailMessage->method('setFrom')->willReturn($mailMessage);
$mailMessage->method('setReplyTo')->willReturn($mailMessage);
$mailMessage->method('setTo')->willReturn($mailMessage);
/** @var Mailer | \PHPUnit_Framework_MockObject_MockObject $mailer */
@@ -68,8 +70,13 @@ class IMipPluginTest extends TestCase {
$l10nFactory->method('get')->willReturn($l10n);
/** @var IURLGenerator | \PHPUnit_Framework_MockObject_MockObject $urlGenerator */
$urlGenerator = $this->createMock(IURLGenerator::class);
/** @var Defaults | \PHPUnit_Framework_MockObject_MockObject $defaults */
$defaults = $this->createMock(Defaults::class);
$defaults->expects($this->once())
->method('getName')
->will($this->returnValue('Instance Name 123'));

$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, 'user123');
$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, $defaults, 'user123');
$message = new Message();
$message->method = 'REQUEST';
$message->message = new VCalendar();
@@ -98,6 +105,7 @@ class IMipPluginTest extends TestCase {

public function testFailedDelivery() {
$mailMessage = $this->createMock(IMessage::class);
$mailMessage->method('setFrom')->willReturn($mailMessage);
$mailMessage->method('setReplyTo')->willReturn($mailMessage);
$mailMessage->method('setTo')->willReturn($mailMessage);
/** @var Mailer | \PHPUnit_Framework_MockObject_MockObject $mailer */
@@ -120,8 +128,10 @@ class IMipPluginTest extends TestCase {
$l10nFactory->method('get')->willReturn($l10n);
/** @var IURLGenerator | \PHPUnit_Framework_MockObject_MockObject $urlGenerator */
$urlGenerator = $this->createMock(IURLGenerator::class);
/** @var Defaults | \PHPUnit_Framework_MockObject_MockObject $defaults */
$defaults = $this->createMock(Defaults::class);

$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, 'user123');
$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, $defaults, 'user123');
$message = new Message();
$message->method = 'REQUEST';
$message->message = new VCalendar();
@@ -153,6 +163,7 @@ class IMipPluginTest extends TestCase {
*/
public function testNoMessageSendForPastEvents($veventParams, $expectsMail) {
$mailMessage = $this->createMock(IMessage::class);
$mailMessage->method('setFrom')->willReturn($mailMessage);
$mailMessage->method('setReplyTo')->willReturn($mailMessage);
$mailMessage->method('setTo')->willReturn($mailMessage);
/** @var Mailer | \PHPUnit_Framework_MockObject_MockObject $mailer */
@@ -179,8 +190,10 @@ class IMipPluginTest extends TestCase {
$l10nFactory->method('get')->willReturn($l10n);
/** @var IURLGenerator | \PHPUnit_Framework_MockObject_MockObject $urlGenerator */
$urlGenerator = $this->createMock(IURLGenerator::class);
/** @var Defaults | \PHPUnit_Framework_MockObject_MockObject $defaults */
$defaults = $this->createMock(Defaults::class);

$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, 'user123');
$plugin = new IMipPlugin($config, $mailer, $logger, $timeFactory, $l10nFactory, $urlGenerator, $defaults, 'user123');
$message = new Message();
$message->method = 'REQUEST';
$message->message = new VCalendar();

Loading…
Cancel
Save