remove temp fix script

This commit is contained in:
Hamza-Ayed
2026-06-17 07:48:34 +03:00
parent 72eeb24cd7
commit 790d58aaa2

View File

@@ -1,76 +0,0 @@
#!/usr/bin/env python3
"""Replace $e->getMessage() in client-facing JSON/echo responses with generic error + error_log."""
import os, re, glob
BACKEND = "/Users/hamzaaleghwairyeen/development/App/Siro/backend"
def fix_file(fpath):
with open(fpath) as f:
content = f.read()
original = content
base = os.path.basename(fpath)
# Add error_log before any line that does jsonError/echo with $e->getMessage() inside a catch block
# Pattern: catch (...) {\n jsonError/echo(... $e->getMessage() )
content = re.sub(
r'(catch\s*\((?:PDOException|Exception|\\Exception|Throwable)\s*\$\w+\)\s*\{)\n(\s*)(jsonError|echo)\s*\(',
lambda m: f"{m.group(1)}\n{m.group(2)}error_log(\"[{base}] \" . $e->getMessage());\n{m.group(2)}{m.group(3)}(",
content,
)
# Replace jsonError("... " . $e->getMessage()) with generic message
content = re.sub(
r'jsonError\s*\(\s*"[^"]*"\s*\.\s*\$\w+->getMessage\s*\(\s*\)\s*\)',
'jsonError("An internal error occurred. Please try again later.")',
content,
)
# Replace jsonError($e->getMessage())
content = re.sub(
r'jsonError\s*\(\s*\$\w+->getMessage\s*\(\s*\)\s*\)',
'jsonError("An internal error occurred. Please try again later.")',
content,
)
# Replace echo "... " . $e->getMessage()
content = re.sub(
r'echo\s+"[^"]*"\s*\.\s*\$\w+->getMessage\s*\(\s*\)',
'echo "An internal error occurred"',
content,
)
# Replace echo $e->getMessage()
content = re.sub(
r'echo\s+\$\w+->getMessage\s*\(\s*\)',
'echo "An internal error occurred"',
content,
)
# Replace json_encode with $e->getMessage() in response
content = re.sub(
r'(json_encode\s*\(\s*(?:array\s*\(|\[)[^)]*"message"\s*=>?\s*)"[^"]*"\s*\.\s*\$\w+->getMessage\s*\(\s*\)([^)]*[)\]]\s*\))',
r'\1"An internal error occurred"\2',
content,
)
content = re.sub(
r'(json_encode\s*\(\s*(?:array\s*\(|\[)[^)]*"message"\s*=>?\s*)\$\w+->getMessage\s*\(\s*\)([^)]*[)\]]\s*\))',
r'\1"An internal error occurred"\2',
content,
)
if content != original:
with open(fpath, 'w') as f:
f.write(content)
return True
return False
fixed = 0
for fpath in glob.glob(os.path.join(BACKEND, '**/*.php'), recursive=True):
if '/vendor/' in fpath:
continue
if fix_file(fpath):
fixed += 1
rel = os.path.relpath(fpath, BACKEND)
print(f" {rel}")
print(f"\nFixed: {fixed} files")