#!/usr/bin/env bash
set -euo pipefail
ROOT="/var/www/html/favo"
SRC="$(cd "$(dirname "$0")/.." && pwd)"
mkdir -p "$ROOT/storage/backups"
STAMP=$(date +%Y%m%d_%H%M%S)
for f in app/Services/RewardRedemptionService.php app/Controllers/RewardRedemptionController.php; do
  cp "$ROOT/$f" "$ROOT/storage/backups/$(basename "$f").before_redemption_${STAMP}.bak" 2>/dev/null || true
  if [ "$SRC/$f" != "$ROOT/$f" ]; then install -m 0644 "$SRC/$f" "$ROOT/$f"; fi
  chmod 0644 "$ROOT/$f"
done
python3 - <<'PY'
from pathlib import Path
p=Path('/var/www/html/favo/public/index.php')
s=p.read_text()
routes=[
"if($page==='api/v2/reward/redeem-token'){(new Favo\\\\Controllers\\\\RewardRedemptionController())->create(); exit;}",
"if($page==='api/v2/reward/redeem'){(new Favo\\\\Controllers\\\\RewardRedemptionController())->redeem(); exit;}"
]
marker="if(isset($routes[$page]))"
for r in routes:
    if r not in s: s=s.replace(marker,r+"\\n"+marker,1)
p.write_text(s)
PY
chmod 0644 "$ROOT/app/Services/RewardRedemptionService.php" "$ROOT/app/Controllers/RewardRedemptionController.php"
php -l "$ROOT/app/Services/RewardRedemptionService.php"
php -l "$ROOT/app/Controllers/RewardRedemptionController.php"
php -l "$ROOT/public/index.php"
echo "Reward Redemption V1: CODE READY"
