PDO::ERRMODE_EXCEPTION,PDO::ATTR_DEFAULT_FETCH_MODE=>PDO::FETCH_ASSOC]); }catch(PDOException $e){ http_response_code(503); die('Database connection failed. Check config.php credentials, then run diagnose.php for a full report.'); } } return $pdo; } function log_activity(string $actor,string $action,string $detail=''): void { try{ db()->prepare('INSERT INTO activity_log(ts,actor,action,detail) VALUES(NOW(),?,?,?)') ->execute([$actor,$action,mb_substr($detail,0,400)]); }catch(Throwable $e){} }