feat: implement user account management features including enable/disable functionality and real-time presence tracking

This commit is contained in:
Flavio Fois
2026-02-16 07:43:31 +01:00
parent a89b18d434
commit 894e8d9e51
19 changed files with 395 additions and 8 deletions

View File

@@ -25,6 +25,7 @@ export async function runMigrations(): Promise<void> {
`ALTER TABLE bug_reports ADD COLUMN IF NOT EXISTS os_user VARCHAR(255) NOT NULL DEFAULT '' AFTER hostname`,
`ALTER TABLE bug_reports ADD INDEX IF NOT EXISTS idx_hostname (hostname)`,
`ALTER TABLE bug_reports ADD INDEX IF NOT EXISTS idx_os_user (os_user)`,
`ALTER TABLE user ADD COLUMN IF NOT EXISTS enabled BOOLEAN NOT NULL DEFAULT TRUE AFTER role`,
];
for (const migration of alterMigrations) {

View File

@@ -42,6 +42,7 @@ CREATE TABLE IF NOT EXISTS `user` (
`username` VARCHAR(255) NOT NULL UNIQUE,
`password_hash` VARCHAR(255) NOT NULL,
`role` ENUM('admin', 'user') NOT NULL DEFAULT 'user',
`enabled` BOOLEAN NOT NULL DEFAULT TRUE,
`created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
`displayname` VARCHAR(255) NOT NULL DEFAULT ''
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;