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

APP_ROOT="${1:-/home/iotcuboc/pyme}"
PAQUETE="$(cd "$(dirname "$0")" && pwd)"
MARCA="$(date +%Y%m%d_%H%M%S)"
RESPALDO="$APP_ROOT/respaldos/identidad_mypyme360_v5_2_$MARCA"
MENU="$APP_ROOT/app/includes/menu_v3.php"
LAYOUT="$APP_ROOT/app/includes/layout_v3.php"
LOGIN="$APP_ROOT/public/login_v3.php"
CSS="$APP_ROOT/assets/theme-v3.css"
LOGO="$APP_ROOT/assets/mypyme360-logo.png"

for requerido in "$MENU" "$LAYOUT" "$LOGIN" "$CSS" "$PAQUETE/assets/mypyme360-logo.png"; do
  if [[ ! -f "$requerido" ]]; then echo "ERROR: falta $requerido" >&2; exit 1; fi
done
php -l "$PAQUETE/paso/aplicar_identidad.php" >/dev/null
mkdir -p "$RESPALDO/app/includes" "$RESPALDO/public" "$RESPALDO/assets" "$RESPALDO/retirados"
cp -p "$MENU" "$RESPALDO/app/includes/menu_v3.php"
cp -p "$LAYOUT" "$RESPALDO/app/includes/layout_v3.php"
cp -p "$LOGIN" "$RESPALDO/public/login_v3.php"
cp -p "$CSS" "$RESPALDO/assets/theme-v3.css"
if [[ -f "$LOGO" ]]; then cp -p "$LOGO" "$RESPALDO/assets/mypyme360-logo.png"; touch "$RESPALDO/LOGO_EXISTIA"; else touch "$RESPALDO/LOGO_NUEVO"; fi

restaurar_error() {
  cp -p "$RESPALDO/app/includes/menu_v3.php" "$MENU" || true
  cp -p "$RESPALDO/app/includes/layout_v3.php" "$LAYOUT" || true
  cp -p "$RESPALDO/public/login_v3.php" "$LOGIN" || true
  cp -p "$RESPALDO/assets/theme-v3.css" "$CSS" || true
  if [[ -f "$RESPALDO/LOGO_EXISTIA" ]]; then cp -p "$RESPALDO/assets/mypyme360-logo.png" "$LOGO" || true; elif [[ -f "$LOGO" ]]; then mv "$LOGO" "$RESPALDO/retirados/mypyme360-logo.png" || true; fi
  echo "ERROR: instalación cancelada; se restauró la identidad anterior." >&2
}
trap restaurar_error ERR

php "$PAQUETE/paso/aplicar_identidad.php" menu "$RESPALDO/app/includes/menu_v3.php" "$RESPALDO/menu_nuevo.php"
php "$PAQUETE/paso/aplicar_identidad.php" layout "$RESPALDO/app/includes/layout_v3.php" "$RESPALDO/layout_nuevo.php"
php "$PAQUETE/paso/aplicar_identidad.php" login "$RESPALDO/public/login_v3.php" "$RESPALDO/login_nuevo.php"
php "$PAQUETE/paso/aplicar_identidad.php" css "$RESPALDO/assets/theme-v3.css" "$RESPALDO/theme_nuevo.css"
php -l "$RESPALDO/menu_nuevo.php" >/dev/null
php -l "$RESPALDO/layout_nuevo.php" >/dev/null
php -l "$RESPALDO/login_nuevo.php" >/dev/null

cp -p "$RESPALDO/menu_nuevo.php" "$MENU"
cp -p "$RESPALDO/layout_nuevo.php" "$LAYOUT"
cp -p "$RESPALDO/login_nuevo.php" "$LOGIN"
cp -p "$RESPALDO/theme_nuevo.css" "$CSS"
cp -p "$PAQUETE/assets/mypyme360-logo.png" "$LOGO"
chmod 644 "$LOGO"
php -l "$MENU" >/dev/null
php -l "$LAYOUT" >/dev/null
php -l "$LOGIN" >/dev/null
trap - ERR

echo "Identidad mypyme360 v5.2 instalada correctamente."
echo "Respaldo: $RESPALDO"
echo "Actualice el navegador con Ctrl + F5."
