Files
pgz-sport/erp/audit_helper.py_prije_env_deepseek
T

29 lines
1.2 KiB
Python

#!/usr/bin/env python3
import os
# erp/audit_helper.py — centralni helper za pisanje u pgz_sport.audit_log
# Author: dradulic@outlook.com — 2026-05-05
# Description: Lightweight audit_log writer za CRM module i druge routere koji
# ne koriste erp/permissions.py.
import psycopg2
DB = dict(host="10.10.0.2", port=6432, dbname="rinet_v3", user="rinet",
password=os.environ["DB_PASSWORD"])
def audit(tablica: str, op: str, record_id, korisnik: str = "anon",
field: str = None, old=None, new=None, ip: str = None) -> None:
"""Sigurno upiši red u pgz_sport.audit_log. Greške se proguta."""
try:
with psycopg2.connect(**DB) as c:
c.autocommit = True
c.cursor().execute(
"""INSERT INTO pgz_sport.audit_log
(tablica, operacija, record_id, korisnik, ip,
promijenjeno_polje, stara_vrijednost, nova_vrijednost)
VALUES (%s,%s,%s,%s,%s,%s,%s,%s)""",
(tablica, op, record_id, korisnik or "anon", ip,
field,
None if old is None else str(old)[:500],
None if new is None else str(new)[:500]),
)
except Exception:
pass