This commit is contained in:
2025-11-30 01:08:20 +01:00
parent 1ba6ac5111
commit 0b1791995c
2 changed files with 199 additions and 35 deletions

View File

@@ -109,3 +109,58 @@ CREATE TABLE IF NOT EXISTS usb_tests (
FOREIGN KEY (user_id) REFERENCES users(id)
ON DELETE CASCADE
);
-- ============================================================
-- WEB QUICKTESTS Browser-Schnellcheck (Gast + eingeloggt)
-- Ergebnisse können anonym oder usergebunden sein.
-- ============================================================
CREATE TABLE IF NOT EXISTS web_quicktests (
id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-- Zuordnung zum Nutzer (NULL = anonym)
user_id BIGINT UNSIGNED NULL,
is_logged_in TINYINT(1) NOT NULL DEFAULT 0,
-- optional: Zuordnung zu einem gespeicherten Stick (falls vorhanden)
usb_device_id BIGINT UNSIGNED NULL,
-- Umgebung (für Statistik / Debug)
browser_name VARCHAR(100) NULL,
browser_version VARCHAR(50) NULL,
os_name VARCHAR(100) NULL,
os_version VARCHAR(50) NULL,
-- Stick-Infos aus dem Schnelldurchlauf (soweit ermittelbar)
volume_label VARCHAR(255) NULL, -- z.B. "USB DISK", "NO NAME"
manufacturer VARCHAR(255) NULL,
model_name VARCHAR(255) NULL,
usb_type ENUM('USB 2.0', 'USB 3.0', 'USB 3.1', 'USB 3.2', 'USB 4.0') NULL,
-- Kapazitätsdaten (Hersteller vs. gemessen im Schnellcheck)
advertised_capacity_bytes BIGINT UNSIGNED NULL,
measured_capacity_bytes BIGINT UNSIGNED NULL,
capacity_status ENUM('unknown', 'ok', 'suspicious', 'fake')
NOT NULL DEFAULT 'unknown',
filesystem VARCHAR(64) NULL,
-- Detaildaten (z.B. Block-Infos, Logs, Messpunkte)
test_report_json JSON NULL,
-- Meta
ip_address VARCHAR(45) NULL,
session_id VARCHAR(64) NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id)
ON DELETE CASCADE,
FOREIGN KEY (usb_device_id) REFERENCES usb_devices(id)
ON DELETE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;