Files
classifieds/app/services/settings.py
T
nngo 2e9025fe55 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.
2026-06-16 11:45:00 -04:00

19 lines
492 B
Python

"""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