#!/usr/bin/env bash
set -euo pipefail

APP="/var/www/html/favo"
PATCH_DIR="$(cd "$(dirname "$0")/.." && pwd)"
STAMP="$(date +%Y%m%d_%H%M%S)"
BACKUP="$APP/storage/backups/reward_lifecycle_v1_$STAMP"

mkdir -p "$BACKUP"

echo "FAVO Reward Lifecycle V1 deployment"
echo "APP: $APP"

if [ -f "$APP/app/Services/UnlockService.php" ]; then
  cp -a "$APP/app/Services/UnlockService.php" "$BACKUP/UnlockService.php"
fi

if [ -f "$APP/database/migrations/009_reward_lifecycle.sql" ]; then
  cp -a "$APP/database/migrations/009_reward_lifecycle.sql" "$BACKUP/009_reward_lifecycle.sql"
fi

install -m 0644 \
  "$PATCH_DIR/app/Services/UnlockService.php" \
  "$APP/app/Services/UnlockService.php"

install -m 0644 \
  "$PATCH_DIR/database/migrations/009_reward_lifecycle.sql" \
  "$APP/database/migrations/009_reward_lifecycle.sql"

php -l "$APP/app/Services/UnlockService.php"

echo
echo "Code deployment: PASS"
echo "Backup: $BACKUP"
echo
echo "Migration is intentionally NOT executed by this script."
echo "Run the migration commands from docs/README.md after verifying the backup."
