Skip to content
Ed Mozley edited this page May 13, 2026 · 1 revision

System

Folder: system/ Colour: Blue-grey #546e7a

System administration and configuration — encryption keys, module access control, demo data, and global settings.

Encryption (system/encryption/)

Guided interface for managing the AES-256-GCM encryption key.

  • Status card shows whether the key file is configured / missing / invalid, with a colour-coded indicator
  • One-click key generation — writes a fresh 256-bit key directly to C:\wamp64\encryption_keys\sdtickets.key
  • Instructions on key placement, backup importance, and what data is encrypted
  • No regenerate button — preventing accidental key destruction is more important than convenience. Replacing the key after data is encrypted means losing access to all encrypted values, so the UI is deliberately one-way

See Security for what's encrypted and how.

Module Access (system/modules/)

Per-analyst module access control.

  • Toggle matrix: analysts as rows, modules as columns
  • "All Access" toggle per analyst — the default state, backward-compatible with installs that pre-date this feature
  • System module cannot be disabled — always accessible to active analysts so admins can't accidentally lock themselves out
  • Auto-saves on toggle with debounced API calls and toast notifications
  • Enforced on: the homepage cards and the waffle-menu nav so a restricted analyst won't even see modules they're not permitted to use

Demo Data (system/demo-data/)

One-click import of realistic sample data across all modules — perfect for evaluation and demos.

Populates:

  • Tickets (sample queue with attached emails)
  • Assets (devices with disks, network, software, GPU, TPM)
  • Knowledge articles
  • Changes with risk + CAB votes
  • Calendar events
  • Morning checks (definitions + sample results)
  • Contracts (with terms, suppliers, contacts)
  • Services + incidents
  • Software inventory + licences
  • Forms (definitions + submissions)
  • Tasks (with subtasks)
  • Process Mapper flowcharts (auto-laid-out — JSON omits coords, server-side layered-DAG pass assigns x/y)
  • CMDB — 8 classes, 39 objects, ~30 relationships across six verbs, demonstrating the synthesis layer end-to-end
  • Analysts (demo password demo1234)
  • End users (for ticket requesters)

Designed for fresh installations — each module can be imported once. Existing data is preserved.

General Settings

Other system-wide settings live at the Tickets → Settings or appropriate per-module locations. The System module specifically covers cross-cutting administration.

Toast Notifications

Global notification system shipped at assets/js/toast.js — used across every module. Four types (success, error, warning, info), nine configurable screen positions via a visual grid picker in System Settings → General. Position is saved per-browser in localStorage. Slide-in animations, 4s auto-dismiss, manual close button.

Key Tables

Table Purpose
system_settings Key-value store for global config (sensitive values encrypted)
analyst_module_access Per-analyst module access toggles
system_event_logs Administrative action audit

Clone this wiki locally