Merge pull request #49878 from nextcloud/backport/49746/stable30

[stable30] fix(share): Don't print twice the same text on emails
This commit is contained in:
Git'Fellow 2024-12-30 19:35:20 +01:00 committed by GitHub
commit 999f5dee00
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 16 additions and 31 deletions

View file

@ -331,7 +331,6 @@ class ShareByMailProvider extends DefaultShareProvider implements IShareProvider
$emailTemplate->setSubject($this->l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]));
$emailTemplate->addHeader();
$emailTemplate->addHeading($this->l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]), false);
$text = $this->l->t('%1$s shared %2$s with you.', [$initiatorDisplayName, $filename]);
if ($note !== '') {
$emailTemplate->addBodyListItem(
@ -352,8 +351,7 @@ class ShareByMailProvider extends DefaultShareProvider implements IShareProvider
}
$emailTemplate->addBodyText(
htmlspecialchars($text . ' ' . $this->l->t('Click the button below to open it.')),
$text
$this->l->t('Click the button below to open it.')
);
$emailTemplate->addBodyButton(

View file

@ -1305,10 +1305,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with(
'Mrs. Owner User shared file.txt with you. Click the button below to open it.',
'Mrs. Owner User shared file.txt with you.'
);
->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@ -1418,7 +1415,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with('Mrs. Owner User shared file.txt with you. Click the button below to open it.', 'Mrs. Owner User shared file.txt with you.');
->with('Click the button below to open it.');
$this->urlGenerator->expects($this->once())->method('imagePath')
->with('core', 'caldav/description.png')
@ -1544,7 +1541,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with('Mrs. Owner User shared file.txt with you. Click the button below to open it.', 'Mrs. Owner User shared file.txt with you.');
->with('Click the button below to open it.');
$expiration = new DateTime('2001-01-01');
$this->l->expects($this->once())
@ -1676,10 +1673,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with(
'Mr. Initiator User shared file.txt with you. Click the button below to open it.',
'Mr. Initiator User shared file.txt with you.'
);
->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@ -1780,10 +1774,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with(
'Mrs. Owner User shared file.txt with you. Click the button below to open it.',
'Mrs. Owner User shared file.txt with you.'
);
->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')
@ -1888,10 +1879,7 @@ class ShareByMailProviderTest extends TestCase {
$template
->expects($this->once())
->method('addBodyText')
->with(
'Mr. Initiator User shared file.txt with you. Click the button below to open it.',
'Mr. Initiator User shared file.txt with you.'
);
->with('Click the button below to open it.');
$template
->expects($this->once())
->method('addBodyButton')

View file

@ -1507,21 +1507,20 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv
'shareWith' => $shareWith,
]);
$emailTemplate->setSubject($l->t('%1$s shared »%2$s« with you', [$initiatorDisplayName, $filename]));
$emailTemplate->setSubject($l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]));
$emailTemplate->addHeader();
$emailTemplate->addHeading($l->t('%1$s shared »%2$s« with you', [$initiatorDisplayName, $filename]), false);
$text = $l->t('%1$s shared »%2$s« with you.', [$initiatorDisplayName, $filename]);
$emailTemplate->addHeading($l->t('%1$s shared %2$s with you', [$initiatorDisplayName, $filename]), false);
if ($note !== '') {
$emailTemplate->addBodyText(htmlspecialchars($note), $note);
}
$emailTemplate->addBodyText(
htmlspecialchars($text . ' ' . $l->t('Click the button below to open it.')),
$text
$l->t('Click the button below to open it.')
);
$emailTemplate->addBodyButton(
$l->t('Open »%s«', [$filename]),
$l->t('Open %s', [$filename]),
$link
);
@ -1596,20 +1595,20 @@ class DefaultShareProvider implements IShareProviderWithNotification, IShareProv
$initiatorUser = $this->userManager->get($initiator);
$initiatorDisplayName = ($initiatorUser instanceof IUser) ? $initiatorUser->getDisplayName() : $initiator;
$initiatorEmailAddress = ($initiatorUser instanceof IUser) ? $initiatorUser->getEMailAddress() : null;
$plainHeading = $l->t('%1$s shared »%2$s« with you and wants to add:', [$initiatorDisplayName, $filename]);
$htmlHeading = $l->t('%1$s shared »%2$s« with you and wants to add', [$initiatorDisplayName, $filename]);
$plainHeading = $l->t('%1$s shared %2$s with you and wants to add:', [$initiatorDisplayName, $filename]);
$htmlHeading = $l->t('%1$s shared %2$s with you and wants to add', [$initiatorDisplayName, $filename]);
$message = $this->mailer->createMessage();
$emailTemplate = $this->mailer->createEMailTemplate('defaultShareProvider.sendNote');
$emailTemplate->setSubject($l->t('»%s« added a note to a file shared with you', [$initiatorDisplayName]));
$emailTemplate->setSubject($l->t('%s added a note to a file shared with you', [$initiatorDisplayName]));
$emailTemplate->addHeader();
$emailTemplate->addHeading($htmlHeading, $plainHeading);
$emailTemplate->addBodyText(htmlspecialchars($note), $note);
$link = $this->urlGenerator->linkToRouteAbsolute('files.viewcontroller.showFile', ['fileid' => $share->getNode()->getId()]);
$emailTemplate->addBodyButton(
$l->t('Open »%s«', [$filename]),
$l->t('Open %s', [$filename]),
$link
);