phpunit checks update, update edit_log logging sets

This commit is contained in:
Clemens Schwaighofer
2024-12-10 14:40:07 +09:00
parent 23142a4549
commit 41cb6358f9
2 changed files with 35 additions and 22 deletions

View File

@@ -651,36 +651,43 @@ CREATE TABLE edit_log (
euid INT, -- this is a foreign key, but I don't nedd to reference to it
FOREIGN KEY (euid) REFERENCES edit_user (edit_user_id) MATCH FULL ON UPDATE CASCADE ON DELETE SET NULL,
ecuid VARCHAR,
ecuuid UUID,
ecuuid UUID, -- this is the one we want to use, full UUIDv4 from the edit user table
username VARCHAR,
password VARCHAR,
event_date TIMESTAMP WITHOUT TIME ZONE DEFAULT CURRENT_TIMESTAMP,
ip VARCHAR,
ip VARCHAR, -- just the REMOTE_IP, full set see ip_address
ip_address JSONB, -- REMOTE_IP and all other IPs (X_FORWARD, etc) as JSON block
error TEXT,
event TEXT,
data_binary BYTEA,
data TEXT,
page VARCHAR,
action VARCHAR,
action_id VARCHAR,
action_sub_id VARCHAR,
action_yes VARCHAR,
action_flag VARCHAR,
action_menu VARCHAR,
action_loaded VARCHAR,
action_value VARCHAR,
action_type VARCHAR,
action_error VARCHAR,
-- various info data sets
user_agent VARCHAR,
referer VARCHAR,
script_name VARCHAR,
query_string VARCHAR,
request_scheme VARCHAR, -- http or https
server_name VARCHAR,
http_host VARCHAR,
http_accept VARCHAR,
http_accept_charset VARCHAR,
http_accept_encoding VARCHAR,
session_id VARCHAR
http_data JSONB,
http_accept VARCHAR, -- in http_data
http_accept_charset VARCHAR, -- in http_data
http_accept_encoding VARCHAR, -- in http_data
-- session ID if set
session_id VARCHAR.
-- any action var, -> same set in action_data as JSON
action_data JSONB,
action VARCHAR, -- in action_data
action_id VARCHAR, -- in action_data
action_sub_id VARCHAR, -- in action_data
action_yes VARCHAR, -- in action_data
action_flag VARCHAR, -- in action_data
action_menu VARCHAR, -- in action_data
action_loaded VARCHAR, -- in action_data
action_value VARCHAR, -- in action_data
action_type VARCHAR, -- in action_data
action_error VARCHAR -- in action_data
) INHERITS (edit_generic) WITHOUT OIDS;
-- END: table/edit_log.sql
-- START: table/edit_log_overflow.sql

View File

@@ -2197,9 +2197,15 @@ HTML;
(string)$this->page_name,
// row 2
$_SERVER["REMOTE_ADDR"] ?? null,
[
Json::jsonConvertArrayTo([
'REMOTE_ADDR' => $_SERVER["REMOTE_ADDR"],
],
'HTTP_X_FORWARDED_FOR' => !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ?
explode(',', $_SERVER['HTTP_X_FORWARDED_FOR'])
: [],
'CLIENT_IP' => !empty($_SERVER['CLIENT_IP']) ?
explode(',', $_SERVER['CLIENT_IP'])
: [],
]),
$_SERVER['HTTP_USER_AGENT'] ?? null,
$_SERVER['HTTP_REFERER'] ?? null,
$_SERVER['SCRIPT_FILENAME'] ?? null,
@@ -2208,17 +2214,17 @@ HTML;
$_SERVER['SERVER_NAME'] ?? null,
// row 3
$_SERVER['HTTP_HOST'] ?? null,
[
Json::jsonConvertArrayTo([
'HTTP_ACCEPT' => $_SERVER['HTTP_ACCEPT'] ?? null,
'HTTP_ACCEPT_CHARSET' => $_SERVER['HTTP_ACCEPT_CHARSET'] ?? null,
'HTTP_ACCEPT_LANGUAGE' => $_SERVER['HTTP_ACCEPT_LANGUAGE'] ?? null,
'HTTP_ACCEPT_ENCODING' => $_SERVER['HTTP_ACCEPT_ENCODING'] ?? null,
],
]),
$this->session->getSessionId() !== '' ?
$this->session->getSessionId() : null,
// row 4
// action data as JSONB
[
Json::jsonConvertArrayTo([
'action' => $action_set['action'] ?? null,
'action_id' => $action_set['action_id'] ?? null,
'action_sub_id' => $action_set['action_sub_id'] ?? null,
@@ -2229,7 +2235,7 @@ HTML;
'action_value' => $action_set['action_value'] ?? null,
'action_type' => $action_set['action_type'] ?? null,
'action_error' => $action_set['action_error'] ?? null,
]
])
],
'NULL'
);