#!/bin/bash
# Corregge script disinstallazione ModuleMaker dopo upgrade VTE 26
# (VTWorkflowApplication.inc -> .php). Esecuzione: sudo bash fix-modmaker-uninstall-v26.sh

set -euo pipefail
[[ "${EUID:-0}" -ne 0 ]] && { echo "Esegui: sudo bash $0" >&2; exit 1; }

MM_DIR="/var/www/html/vte23083_2711/storage/custom_modules"
TARGET="${MM_DIR}/modmaker_14_Operatori_u.php"

if [[ ! -f "${MM_DIR}/mm_workflow_compat.php" ]]; then
	echo "[ERR] Manca ${MM_DIR}/mm_workflow_compat.php" >&2
	exit 1
fi

if grep -q 'mm_require_workflow_libs' "$TARGET"; then
	echo "[OK] ${TARGET} già aggiornato"
	exit 0
fi

cp -a "$TARGET" "${TARGET}.bak-$(date +%Y%m%d%H%M%S)"
python3 <<'PY'
from pathlib import Path
path = Path("/var/www/html/vte23083_2711/storage/custom_modules/modmaker_14_Operatori_u.php")
text = path.read_text()
old = '''\t\trequire_once("modules/com_vtiger_workflow/VTWorkflowApplication.inc");
\t\trequire_once("modules/com_vtiger_workflow/VTWorkflowManager.inc");
\t\trequire_once("modules/com_vtiger_workflow/VTWorkflowUtils.php");'''
new = '''\t\trequire_once __DIR__ . '/mm_workflow_compat.php';
\t\tmm_require_workflow_libs();'''
if old not in text:
	raise SystemExit("Pattern .inc non trovato in modmaker_14_Operatori_u.php")
path.write_text(text.replace(old, new, 1))
print("[OK] Patch applicata a modmaker_14_Operatori_u.php")
PY

chown www-data:www-data "$TARGET"
echo "[OK] Fatto. Riprova disinstallazione Operatori da Module Maker."
