feat: add global search pagination saved filters mobile ux and email settings

This commit is contained in:
Marco0300
2026-09-02 00:32:40 +02:00
parent 5f1b5dd1f0
commit 668ab374a6
6 changed files with 155 additions and 21 deletions
+32 -1
View File
@@ -7,7 +7,38 @@ CREATE TABLE IF NOT EXISTS app_settings (
FOREIGN KEY (updated_by) REFERENCES users(id) ON DELETE SET NULL
) ENGINE=InnoDB;
-- Take a database backup first. Run with the target database selected:
CREATE TABLE IF NOT EXISTS email_settings (
id TINYINT UNSIGNED PRIMARY KEY,
smtp_host VARCHAR(190) NULL,
smtp_port SMALLINT UNSIGNED NULL,
smtp_encryption ENUM('none','tls','ssl') NOT NULL DEFAULT 'tls',
smtp_username VARCHAR(190) NULL,
smtp_password_ciphertext TEXT NULL,
from_email VARCHAR(190) NULL,
from_name VARCHAR(190) NULL,
notification_recipients TEXT NULL,
assignment_enabled BOOLEAN NOT NULL DEFAULT TRUE,
status_enabled BOOLEAN NOT NULL DEFAULT TRUE,
sla_enabled BOOLEAN NOT NULL DEFAULT TRUE,
overdue_enabled BOOLEAN NOT NULL DEFAULT TRUE,
updated_by BIGINT UNSIGNED NULL,
updated_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY (updated_by) REFERENCES users(id) ON DELETE SET NULL
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS saved_filters (
id BIGINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
user_id BIGINT UNSIGNED NOT NULL,
name VARCHAR(120) NOT NULL,
route VARCHAR(60) NOT NULL,
filter_json JSON NOT NULL,
created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
UNIQUE KEY saved_filter_user_name (user_id, name),
INDEX saved_filter_route_idx (user_id, route)
) ENGINE=InnoDB;
-- mysql --default-character-set=utf8mb4 -u USER -p DATABASE < database/upgrade.sql
-- Resolve duplicate SLA rows before adding the unique client constraint.