MRBS 1.12.2 等保2.0二级整改完整提交

包含:登录失败锁定、90天密码有效期、30分钟会话超时、
强制改密、登录审计日志、屏幕水印、企业背景图、
备案信息固定底部、favicon、JS空集合保护、
会话过期体验优化(403 JSON)、display_errors 关闭、
固定 key 根治 Integrity check failed 等全部改动

注意:config.inc.php/.htaccess/.user.ini 含敏感信息,
通过 .gitignore 排除,勿推送到公开仓库。
This commit is contained in:
人事系统开发
2026-09-09 16:55:02 +08:00
commit 1ba6efd8ed
2151 changed files with 528780 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
/* Modifications to the standard CSS when using RTL languages (eg Hebrew) */
/* ------------ EDIT_USERS.PHP ------------------*/
#edit_room fieldset.submit_buttons {
padding-top: 460px;
margin-top: 1em
}
+26
View File
@@ -0,0 +1,26 @@
/* Fixes for Internet Explorer (all versions) */
/* ------------ ADMIN.PHP ---------------------------*/
#admin ul {
margin-top: 1.0em;
}
form.form_admin {
margin-top: 0;
}
.form_admin legend {
margin-bottom: 1.0em; /* by default IE gives no gap between legend and first form element */
}
/* ------------ INDEX.PHP ------------------*/
table.dwm_main {
border-collapse: collapse; /* separate gives better corners in Firefox, but doesn't work in IE6/7 */
}
div.booking_list {
overflow-x: hidden; /* we don't want IE to give us the horizontal scrollbar */
}
+64
View File
@@ -0,0 +1,64 @@
<?php
declare(strict_types=1);
namespace MRBS;
require_once "systemdefaults.inc.php";
require_once "config.inc.php";
require_once "theme.inc";
global $body_background_color, $standard_font_color, $standard_font_family;
global $banner_back_color, $banner_font_color;
?>
/* CSS to be used for email messages */
body#mrbs {
background-color: <?php echo $body_background_color ?>;
color: <?php echo $standard_font_color ?>;
font-family: <?php echo $standard_font_family ?>;
margin: 0;
padding: 0;
}
div#header {
width: 100%;
background-color: <?php echo $banner_back_color ?>;
color: <?php echo $banner_font_color ?>;
margin: 0;
padding: 10px;
}
div#contents {
width: 100%;
padding: 10px;
margin-bottom: 1em;
}
#mrbs a:link {
color: #0B263B;
text-decoration: none;
font-weight: bold;
}
#mrbs a:visited {
color: #0B263B;
text-decoration: none;
font-weight: bold;
}
#mrbs a:hover {
color: #ff0066;
text-decoration: underline;
font-weight: bold;
}
#mrbs tr {
padding: 0;
margin: 0;
}
#mrbs th, #mrbs td {
text-align: left;
padding: 1px 1em;
margin: 0;
}
+94
View File
@@ -0,0 +1,94 @@
<?php
declare(strict_types=1);
namespace MRBS;
require_once "../systemdefaults.inc.php";
require_once "../config.inc.php";
require_once "../functions.inc";
require_once "../theme.inc";
http_headers(array("Content-type: text/css"),
60*30); // 30 minute cache expiry
?>
.screenonly, .banner, div.minicalendars.formed,
nav:not(.main_calendar):not(.arrow):not(.location):not(.view) {
display: none;
}
nav.arrow, nav.view {
visibility: hidden;
}
td.new a, a.new_booking img { display: none; }
.dwm_main :not(tbody) th {
color: <?php echo $header_font_color_print ?>;
}
.dwm_main th a:link {
color: <?php echo $anchor_link_color_header_print ?>;
}
<?php
// redefine table and cell border colours so that they are visible in the print view
// (in the screen view the boundaries are visible due to the different background colours)
?>
table.dwm_main {
border-width: 1px 0 1px 1px;
border-color: <?php echo $main_table_border_color_print ?>;
}
.dwm_main td,
.dwm_main tbody th {
box-shadow: 0 -1px 0 <?php echo $main_table_body_h_border_color_print ?>;
}
<?php
// In the month view, get rid of horizontal and vertical scrollbars. Make
// horizontal overflow hidden and allow the table cell to grow to accommodate
// vertical overflow.
?>
div.cell_container {
min-height: 100px;
height: auto;
}
div.cell_header {
min-height: 1.4em;
height: 1.4em;
max-height: 1.4em;
}
div.booking_list {
overflow: hidden;
max-height: none;
}
div.booking_list div {
box-sizing: border-box;
}
<?php
// Generate the rules to give the colour coding by booking type in the day/week/month views
// and the colour key
foreach ($color_types as $type => $col)
{
echo "div.$type a, div.$type {outline: 2px solid $col; outline-offset: -2px}\n";
}
// hide DataTable buttons in print
?>
.ColVis_Button, .dataTables_filter, .dataTables_length, .dataTables_paginate {
display: none;
}
.ui-resizable-handle {
display: none;
}
+169
View File
@@ -0,0 +1,169 @@
<?php
declare(strict_types=1);
namespace MRBS;
// Modifications to the standard CSS when using RTL languages (eg Hebrew)
require_once "../systemdefaults.inc.php";
require_once "../config.inc.php";
require_once "../functions.inc";
require_once "../theme.inc";
http_headers(array("Content-type: text/css"),
60*30); // 30 minute cache expiry
?>
/* ------------ GENERAL -----------------------------*/
h1, h2, td, th {
direction: rtl;
}
legend {
float: right;
}
/* ------------ ADMIN.PHP ---------------------------*/
form.form_admin, .form_admin div, div#div_custom_html,
#area_form form, #area_form label[for="area_select"],
.areaChangeForm select, .areaChangeForm input, .areaChangeForm input.button {
float: right;
}
.form_admin label, .form_admin fieldset, .form_admin input,
div#area_form, div#room_form {
float: inherit;
}
.form_admin label {
padding-bottom: 5px;
}
.form_admin fieldset {
width: 700px;
}
.form_admin legend {
padding-left: 36px;
}
.admin h2 {
clear: right;
}
div#area_form, div.header_columns, div.body_columns {
direction: rtl;
}
/* ------------ INDEX.PHP ------------------*/
div#dwm_header, div.cell_container {
float: right;
}
.date_before {
float: right;
text-align: right;
}
.date_now {
float: right;
}
.date_after {
float: left;
text-align: left;
}
.date_before, .date_after, table.dwm_main {
direction: rtl;
}
#dwm_header ul {
margin-left: 30px;
}
<?php
foreach ($color_types as $type => $col)
{
echo ".month div.$type {float: right}\n"; // used in the month view
}
?>
/* ------------ EDIT_AREA.PHP ------------------*/
#book_ahead_periods_note span {
float: right;
}
/* ------------ FUNCTIONS.INC -------------------*/
.banner {
direction: rtl;
}
.banner li {
border-width: 0 <?php echo $banner_border_cell_width ?>px 0 0;
}
/* ------------ MINCALS.PHP ---------------------*/
div#cal_last, div#cal_this, div#cal_next {
float: right;
}
div#cal_last {
margin-left: 1.0em;
}
table.calendar {
margin-right: 30px
}
.calendar th {
font-weight: bold;
}
/* ------------ PENDING.PHP ------------------*/
table#pending_list {
direction: rtl;
}
#pending_list form {
float: right;
}
#pending_list td, #pending_list td.control + td,
#pending_list th.header_name, #pending_list th.header_create, #pending_list th.header_area,
#pending_list th.header_room, #pending_list th.header_action {
text-align: right;
}
#pending_list th.control + th, #pending_list td.control + td {
border-left-width: 1px;
}
/* ------------ REPORT.PHP ----------------------*/
.div_report h3, .div_report table,
div.report_entry_name {
direction: rtl;
}
div.report_entry_title, div.report_entry_name, p.report_entries {
float: right;
}
/* ------------ VIEW_ENTRY.PHP ------------------*/
.view_entry div#view_entry_nav {
direction: rtl;
}
.view_entry #approve_buttons form {
float: right;
}
+2911
View File
File diff suppressed because it is too large Load Diff