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
+13
View File
@@ -0,0 +1,13 @@
# Add a month_absolute column so that monthly repeats can be converted to the
# new format. The conversion itself is done in post.inc
# We save the current value of the timestamp before updating and restore it
# afterwards because we do not want the timestamp to be changed by this operation.
# The restoration is done in the next upgrade because we need to operate on the table
# first using post.inc
ALTER TABLE %DB_TBL_PREFIX%repeat
ADD COLUMN saved_ts DATETIME;
UPDATE %DB_TBL_PREFIX%repeat SET saved_ts=timestamp;
ALTER TABLE %DB_TBL_PREFIX%repeat
ADD COLUMN month_absolute smallint DEFAULT NULL;
+5
View File
@@ -0,0 +1,5 @@
-- Add a month_absolute column so that monthly repeats can be converted to the
-- new format. The conversion itself is done in post.inc
ALTER TABLE %DB_TBL_PREFIX%repeat
ADD COLUMN month_absolute smallint DEFAULT NULL;
+42
View File
@@ -0,0 +1,42 @@
<?php
namespace MRBS;
require_once 'standard_vars.inc.php'; // to ensure the timezone is set
// Get all the monthly repeats
$sql = "SELECT T.id, T.start_time, A.timezone
FROM " . _tbl('repeat') . " T, " . _tbl('area') . " A, " . _tbl('room') . " M
WHERE T.rep_type=" . RepeatRule::MONTHLY . "
AND T.room_id=M.id
AND M.area_id=A.id";
$res = $upgrade_handle->query($sql);
// Save the current default timezone so that we can restore it at the end
$old_tz = mrbs_default_timezone_get();
$mods = array();
while (false !== ($row = $res->next_row_keyed()))
{
// We need to make sure that we have the correct timezone set when we work out
// the day of the month that this series repeats on
if (!empty($row['timezone']))
{
mrbs_default_timezone_set($row['timezone']);
}
$mods[$row['id']] = date('j', $row['start_time']);
}
foreach ($mods as $id => $month_absolute)
{
$sql = "UPDATE " . _tbl('repeat') . "
SET month_absolute=$month_absolute
WHERE id=$id";
$upgrade_handle->command($sql);
}
// Restore the original timezone
mrbs_default_timezone_set($old_tz);