[ticket/17487] Add wrapper method to add headers to interface

PHPBB-17487
This commit is contained in:
rxu 2025-04-03 22:15:37 +07:00
parent 21314a34a6
commit cebc19f2ed
No known key found for this signature in database
GPG key ID: 955F0567380E586A
4 changed files with 37 additions and 10 deletions

View file

@ -265,16 +265,16 @@ class message
if (isset($messenger_method->headers) && $messenger_method->headers instanceof \Symfony\Component\Mime\Header\Headers) if (isset($messenger_method->headers) && $messenger_method->headers instanceof \Symfony\Component\Mime\Header\Headers)
{ {
$messenger_method->headers->addHeader('X-AntiAbuse', 'Board servername - ' . $this->server_name); $messenger_method->header('X-AntiAbuse', 'Board servername - ' . $this->server_name);
$messenger_method->headers->addHeader('X-AntiAbuse', 'User IP - ' . $this->sender_ip); $messenger_method->header('X-AntiAbuse', 'User IP - ' . $this->sender_ip);
if ($this->sender_id) if ($this->sender_id)
{ {
$messenger_method->headers->addHeader('X-AntiAbuse', 'User_id - ' . $this->sender_id); $messenger_method->header('X-AntiAbuse', 'User_id - ' . $this->sender_id);
} }
if ($this->sender_username) if ($this->sender_username)
{ {
$messenger_method->headers->addHeader('X-AntiAbuse', 'Username - ' . $this->sender_username); $messenger_method->header('X-AntiAbuse', 'Username - ' . $this->sender_username);
} }
} }

View file

@ -481,4 +481,12 @@ abstract class base implements messenger_interface
$this->setup_template(); $this->setup_template();
$this->template->set_custom_style($path_name, $paths); $this->template->set_custom_style($path_name, $paths);
} }
/**
* {@inheritdoc}
*/
public function header(string $header_name, mixed $header_value): void
{
return;
}
} }

View file

@ -47,7 +47,7 @@ class email extends base
protected $from; protected $from;
/** @var Headers */ /** @var Headers */
public $headers; protected $headers;
/** /**
* @var int * @var int
@ -242,10 +242,10 @@ class email extends base
*/ */
public function anti_abuse_headers(\phpbb\config\config $config, \phpbb\user $user): void public function anti_abuse_headers(\phpbb\config\config $config, \phpbb\user $user): void
{ {
$this->headers->addHeader('X-AntiAbuse', 'Board servername - ' . $config['server_name']); $this->header('X-AntiAbuse', 'Board servername - ' . $config['server_name']);
$this->headers->addHeader('X-AntiAbuse', 'User_id - ' . $user->data['user_id']); $this->header('X-AntiAbuse', 'User_id - ' . $user->data['user_id']);
$this->headers->addHeader('X-AntiAbuse', 'Username - ' . $user->data['username']); $this->header('X-AntiAbuse', 'Username - ' . $user->data['username']);
$this->headers->addHeader('X-AntiAbuse', 'User IP - ' . $user->ip); $this->header('X-AntiAbuse', 'User IP - ' . $user->ip);
} }
/** /**
@ -313,7 +313,7 @@ class email extends base
foreach ($headers as $header => $value) foreach ($headers as $header => $value)
{ {
$this->headers->addHeader($header, $value); $this->header($header, $value);
} }
} }
@ -576,4 +576,12 @@ class email extends base
return true; return true;
} }
/**
* {@inheritdoc}
*/
public function header(string $header_name, mixed $header_value): void
{
$this->headers->addHeader($header_name, $header_value);
}
} }

View file

@ -64,5 +64,16 @@ interface messenger_interface
* *
* @return void * @return void
*/ */
public function error(string $msg): void; public function error(string $msg): void;
/**
* Add message header
*
* @param string $header_name Message header name
* @param mixed $header_value Message header value
*
* @return void
*/
public function header(string $header_name, mixed $header_value): void;
} }