Skip to content
Snippets Groups Projects
Commit 29af8565 authored by Colan Schwartz's avatar Colan Schwartz
Browse files

Issue #3287920 by colan: Merge branch '3287920-automated-drupal-10' into 3287920-drupal-10-for-v4

parents 9abc3aea f946d82d
No related branches found
No related tags found
1 merge request!5Issue #3287920: Drupal 10 compatibility fixes for v4
......@@ -2,7 +2,7 @@ name: HTML Mail
type: module
description: 'Enables HTML in system emails.'
package: Mail
core_version_requirement: ^10
core_version_requirement: ^9.3 || ^10
dependencies:
- mailsystem:mailsystem
......
......@@ -3,6 +3,7 @@
namespace Drupal\htmlmail\Helper;
use Drupal\Component\Utility\Html;
use Drupal\Core\Extension\ModuleExtensionList;
use Drupal;
/**
......@@ -30,7 +31,7 @@ class HtmlMailHelper {
if (!isset($allowed)) {
$allowed = ['' => t('No theme')];
$themes = \Drupal::service('theme_handler')->listInfo();
uasort($themes, 'system_sort_modules_by_info_name');
uasort($themes, [ModuleExtensionList::class, 'sortByName']);
foreach ($themes as $key => $value) {
if ($value->status) {
$allowed[$key] = Html::escape($value->info['name']);
......
......@@ -2,6 +2,7 @@
namespace Drupal\htmlmail\Plugin\Mail;
use Symfony\Component\Mime\MimeTypeGuesserInterface;
use Drupal\Core\Extension\ModuleHandlerInterface;
use Drupal\Core\Logger\LoggerChannelFactoryInterface;
use Drupal\Core\Mail\MailInterface;
......@@ -16,7 +17,7 @@ use Drupal\htmlmail\Helper\HtmlMailHelper;
use Symfony\Component\DependencyInjection\ContainerInterface;
use Egulias\EmailValidator\EmailValidator;
use Drupal\htmlmail\Utility\HtmlMailMime;
use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface;
use Symfony\Component\Mime\Header\UnstructuredHeader;
/**
* Modify the Drupal mail system to use HTML Mail when sending emails.
......@@ -74,7 +75,7 @@ class HtmlMailSystem implements MailInterface, ContainerFactoryPluginInterface {
/**
* The mime type guesser service.
*
* @var \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface
* @var \Symfony\Component\Mime\MimeTypeGuesserInterface
*/
protected $mimeType;
......@@ -103,7 +104,7 @@ class HtmlMailSystem implements MailInterface, ContainerFactoryPluginInterface {
* The site settings service.
* @param \Drupal\Core\Render\RendererInterface $renderer
* The render service.
* @param \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface $mimeTypeGuesser
* @param \Symfony\Component\Mime\MimeTypeGuesserInterface $mimeTypeGuesser
* The mime type guesser service.
*/
public function __construct(
......@@ -383,8 +384,8 @@ class HtmlMailSystem implements MailInterface, ContainerFactoryPluginInterface {
$txt_headers = $mime->mimeTxtHeaders($message['headers']);
}
else {
$to = Unicode::mimeHeaderEncode($message['to']);
$subject = Unicode::mimeHeaderEncode($message['subject']);
$to = (new UnstructuredHeader('to', $message['to']))->getBodyAsString();
$subject = (new UnstructuredHeader('subject', $message['subject']))->getBodyAsString();
$txt_headers = $this->txtHeaders($message['headers']);
}
......
......@@ -2,10 +2,10 @@
namespace Drupal\htmlmail\Utility;
use Symfony\Component\Mime\MimeTypeGuesserInterface;
use Drupal\Core\File\FileSystemInterface;
use Drupal\Core\Logger\LoggerChannelFactoryInterface;
use Drupal\Component\Utility\UrlHelper;
use Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface;
/**
* Provides the HtmlMailMime class for creating MIME-formatted email messages.
......@@ -41,7 +41,7 @@ class HtmlMailMime extends \Mail_mime {
/**
* The mime type guesser service.
*
* @var \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface
* @var \Symfony\Component\Mime\MimeTypeGuesserInterface
*/
protected static $mimeTypeGuesser;
......@@ -64,7 +64,7 @@ class HtmlMailMime extends \Mail_mime {
*
* @param \Drupal\Core\Logger\LoggerChannelFactoryInterface $logger
* The logger service.
* @param \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface $mime_type_guesser
* @param \Symfony\Component\Mime\MimeTypeGuesserInterface $mime_type_guesser
* The mime type service.
* @param \Drupal\Core\File\FileSystemInterface $file_system
* The filesystem service.
......@@ -465,7 +465,7 @@ class HtmlMailMime extends \Mail_mime {
* The complete message, including headers and body.
* @param \Drupal\Core\Logger\LoggerChannelFactoryInterface $logger
* The logger service.
* @param \Symfony\Component\HttpFoundation\File\MimeType\MimeTypeGuesserInterface $mimeTypeGuesser
* @param \Symfony\Component\Mime\MimeTypeGuesserInterface $mimeTypeGuesser
* The mime type guesser service.
* @param \Drupal\Core\File\FileSystemInterface $fileSystem
* The file system service.
......
......@@ -24,7 +24,7 @@ class HtmlMailTest extends BrowserTestBase {
/**
* {@inheritdoc}
*/
protected function setUp() {
protected function setUp(): void {
parent::setUp();
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment