MRBS 1.12.2 等保2.0二级整改完整提交
Docker image / push (push) Canceled after 0s

包含:登录失败锁定、90天密码有效期、30分钟会话超时、
强制改密、登录审计日志、屏幕水印、企业背景图、
备案信息固定底部、favicon、登录页JS修复等全部改动
This commit is contained in:
人事系统开发
2026-09-08 21:19:47 +08:00
commit 48092cab42
2221 changed files with 659586 additions and 0 deletions
@@ -0,0 +1,64 @@
<?php
declare(strict_types=1);
namespace MRBS\Errors\Handler;
use Monolog\Formatter\FormatterInterface;
use Monolog\Handler\MailHandler;
use Monolog\Logger;
use MRBS\Errors\Formatter\BrowserFormatter;
use MRBS\Errors\Formatter\ErrorLogFormatter;
use MRBS\Errors\Formatter\MailFormatter;
use PHPMailer\PHPMailer\PHPMailer;
class PHPMailerHandler extends MailHandler
{
private $mailer;
public function __construct(PHPMailer $mailer, $level = Logger::ERROR, bool $bubble = true)
{
parent::__construct($level, $bubble);
$this->mailer = $mailer;
}
protected function send(string $content, array $records): void
{
$mailer = $this->buildMessage($content, $records);
$mailer->send();
}
private function buildMessage(string $content, array $records): PHPMailer
{
$mailer = clone $this->mailer;
$record = $records[0];
if (isset($record['context']['details']))
{
$mailer->Subject = $record['context']['details'];
}
else
{
$mailer->Subject = $record['channel'] . '.' . $record['level_name'];
if (isset($record['extra']['file']))
{
$mailer->Subject .= ' in ' . $record['extra']['file'];
}
if (isset($record['extra']['line']))
{
$mailer->Subject .= ' at line ' . $record['extra']['line'];
}
}
$mailer->Body = $content;
return $mailer;
}
protected function getDefaultFormatter(): FormatterInterface
{
return new ErrorLogFormatter();
}
}