mail2log/_define.php

44 lines
1.4 KiB
PHP
Raw Permalink Normal View History

2022-11-27 00:56:22 +00:00
<?php
/**
2023-10-13 18:57:41 +00:00
* @file
* @brief The plugin mail2log definition
* @ingroup mail2log
2022-11-27 00:56:22 +00:00
*
2023-10-13 18:57:41 +00:00
* @defgroup mail2log Plugin mail2log.
2022-11-27 00:56:22 +00:00
*
2023-10-13 18:57:41 +00:00
* Do not send mails but log them.
2022-11-27 00:56:22 +00:00
*
2023-10-13 18:57:41 +00:00
* @author Jean-Christian Denis (author)
* @copyright GPL-2.0 https://www.gnu.org/licenses/gpl-2.0.html
2022-11-27 00:56:22 +00:00
*/
2023-10-13 18:57:41 +00:00
declare(strict_types=1);
2022-11-27 00:56:22 +00:00
$this->registerModule(
2023-03-11 16:14:04 +00:00
'Mail to log',
2022-11-27 00:56:22 +00:00
'Do not send mails but log them',
'Jean-Christian Denis and contributors',
2023-10-13 18:57:41 +00:00
'0.7',
2022-11-27 00:56:22 +00:00
[
2023-10-07 21:25:54 +00:00
'requires' => [['core', '2.28']],
2023-10-13 18:57:41 +00:00
'permissions' => 'My',
2023-10-13 18:59:07 +00:00
'type' => 'plugin',
'support' => 'https://git.dotclear.watch/JcDenis/' . basename(__DIR__) . '/issues',
'details' => 'https://git.dotclear.watch/JcDenis/' . basename(__DIR__) . '/src/branch/master/README.md',
'repository' => 'https://git.dotclear.watch/JcDenis/' . basename(__DIR__) . '/raw/branch/master/dcstore.xml',
2022-11-27 00:56:22 +00:00
]
);
2023-03-11 16:14:04 +00:00
if (!function_exists('\_mail')) {
2023-06-17 09:13:58 +00:00
function _mail(string $to, string $subject, string $message, $headers = '', ?string $params = null): bool
2023-03-11 16:14:04 +00:00
{
2023-06-17 09:13:58 +00:00
$headers = is_array($headers) ? implode("\n\t", $headers) : (is_string($headers) ? $headers : '');
2023-03-11 16:14:04 +00:00
2023-10-07 21:25:54 +00:00
$cur = App::log()->openLogCursor();
2023-04-24 13:48:48 +00:00
$cur->setField('log_table', basename(__DIR__));
$cur->setField('log_msg', sprintf("%s\n-----\n To: %s\n Subject: %s\n-----\n Message:\n%s\n", $headers, $to, $subject, $message));
2023-10-07 21:25:54 +00:00
App::log()->addLog($cur);
2023-03-11 16:14:04 +00:00
return true;
}
}