06/16 Phase 6 foundation: admin blueprint, audit log, user management
Adds the admin backend foundation: AuditLog + Setting models/migration, an admin-only dashboard with KPI cards, and user management (search, ban/suspend/activate, tier override, trust adjust) with audit logging on every write action. Smoke suite extended to 64 checks.
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
"""Admin-editable runtime settings, stored as key/JSON-value rows."""
|
||||
from app.extensions import db
|
||||
from app.models.setting import Setting
|
||||
|
||||
|
||||
def get_setting(key: str, default=None):
|
||||
row = db.session.get(Setting, key)
|
||||
return row.value if row is not None else default
|
||||
|
||||
|
||||
def set_setting(key: str, value):
|
||||
row = db.session.get(Setting, key)
|
||||
if row is None:
|
||||
row = Setting(key=key, value=value)
|
||||
db.session.add(row)
|
||||
else:
|
||||
row.value = value
|
||||
return row
|
||||
Reference in New Issue
Block a user