#!/bin/bash
# ============================================================================
# Script de Preservacao de Assets - Avanzato
# ============================================================================
# Uso: bash scripts/preserve-assets.sh [pasta-do-site-no-servidor]
#
# Este script copia assets personalizados (logo, imagens, etc.)
# para a pasta do site apos o deploy, SEM alterar os arquivos do build.
#
# EXEMPLO:
#   bash scripts/preserve-assets.sh /var/www/avanzato
# ============================================================================

set -e

# Cores para output
GREEN='\033[0;32m'
YELLOW='\033[1;33m'
RED='\033[0;31m'
NC='\033[0m' # No Color

# Diretorio do script
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_DIR="$(dirname "$SCRIPT_DIR")"

# Diretorio dos assets personalizados
ASSETS_DIR="${PROJECT_DIR}/custom-assets"

# Diretorio de destino (passado como argumento ou usa default)
DEST_DIR="${1:-/var/www/avanzato/dist}"

echo "=========================================="
echo "  Avanzato - Preservacao de Assets"
echo "=========================================="
echo ""

# Verifica se a pasta de assets existe
if [ ! -d "$ASSETS_DIR" ]; then
    echo -e "${YELLOW}Pasta custom-assets/ nao encontrada.${NC}"
    echo "Criando estrutura em: ${ASSETS_DIR}"
    mkdir -p "$ASSETS_DIR"
    mkdir -p "$ASSETS_DIR/images"
    mkdir -p "$ASSETS_DIR/logo"
    mkdir -p "$ASSETS_DIR/fonts"
    echo -e "${GREEN}Estrutura criada!${NC} Coloque seus assets nesta pasta."
    echo ""
fi

# Verifica se o destino existe
if [ ! -d "$DEST_DIR" ]; then
    echo -e "${RED}Erro: Diretorio de destino nao existe: ${DEST_DIR}${NC}"
    echo "Usage: bash scripts/preserve-assets.sh /caminho/do/site"
    exit 1
fi

echo -e "${GREEN}Assets origem:${NC}  ${ASSETS_DIR}"
echo -e "${GREEN}Assets destino:${NC} ${DEST_DIR}"
echo ""

# Contador de arquivos copiados
COPIED=0

# ============================================================================
# 1. LOGO
# ============================================================================
if [ -f "$ASSETS_DIR/logo/logo.png" ]; then
    echo -e "${GREEN}[LOGO]${NC} Copiando logo.png..."
    cp "$ASSETS_DIR/logo/logo.png" "$DEST_DIR/assets/logo.png"
    COPIED=$((COPIED + 1))
fi

if [ -f "$ASSETS_DIR/logo/logo.svg" ]; then
    echo -e "${GREEN}[LOGO]${NC} Copiando logo.svg..."
    cp "$ASSETS_DIR/logo/logo.svg" "$DEST_DIR/assets/logo.svg"
    COPIED=$((COPIED + 1))
fi

if [ -f "$ASSETS_DIR/logo/favicon.ico" ]; then
    echo -e "${GREEN}[LOGO]${NC} Copiando favicon.ico..."
    cp "$ASSETS_DIR/logo/favicon.ico" "$DEST_DIR/favicon.ico"
    COPIED=$((COPIED + 1))
fi

if [ -f "$ASSETS_DIR/logo/favicon.svg" ]; then
    echo -e "${GREEN}[LOGO]${NC} Copiando favicon.svg..."
    cp "$ASSETS_DIR/logo/favicon.svg" "$DEST_DIR/favicon.svg"
    COPIED=$((COPIED + 1))
fi

# ============================================================================
# 2. IMAGENS
# ============================================================================
if [ -d "$ASSETS_DIR/images" ] && [ "$(ls -A "$ASSETS_DIR/images/" 2>/dev/null)" ]; then
    echo -e "${GREEN}[IMAGENS]${NC} Copiando imagens personalizadas..."
    for img in "$ASSETS_DIR/images"/*; do
        if [ -f "$img" ]; then
            filename=$(basename "$img")
            cp "$img" "$DEST_DIR/assets/${filename}"
            echo "  -> ${filename}"
            COPIED=$((COPIED + 1))
        fi
    done
fi

# ============================================================================
# 3. FONTS
# ============================================================================
if [ -d "$ASSETS_DIR/fonts" ] && [ "$(ls -A "$ASSETS_DIR/fonts/" 2>/dev/null)" ]; then
    echo -e "${GREEN}[FONTES]${NC} Copiando fontes personalizadas..."
    for font in "$ASSETS_DIR/fonts"/*; do
        if [ -f "$font" ]; then
            filename=$(basename "$font")
            cp "$font" "$DEST_DIR/assets/${filename}"
            echo "  -> ${filename}"
            COPIED=$((COPIED + 1))
        fi
    done
fi

# ============================================================================
# 4. ARQUIVOS EXTRAS (robots.txt, sitemap, etc.)
# ============================================================================
if [ -f "$ASSETS_DIR/robots.txt" ]; then
    echo -e "${GREEN}[EXTRA]${NC} Copiando robots.txt personalizado..."
    cp "$ASSETS_DIR/robots.txt" "$DEST_DIR/robots.txt"
    COPIED=$((COPIED + 1))
fi

if [ -f "$ASSETS_DIR/sitemap.xml" ]; then
    echo -e "${GREEN}[EXTRA]${NC} Copiando sitemap.xml personalizado..."
    cp "$ASSETS_DIR/sitemap.xml" "$DEST_DIR/sitemap.xml"
    COPIED=$((COPIED + 1))
fi

# ============================================================================
# RESULTADO
# ============================================================================
echo ""
echo "=========================================="
if [ $COPIED -gt 0 ]; then
    echo -e "${GREEN}Concluido! ${COPIED} arquivo(s) preservado(s).${NC}"
else
    echo -e "${YELLOW}Nenhum arquivo customizado encontrado.${NC}"
    echo ""
    echo "Para usar, coloque seus arquivos em:"
    echo "  ${ASSETS_DIR}/logo/     -> logo.png, logo.svg, favicon.ico"
    echo "  ${ASSETS_DIR}/images/   -> imagens personalizadas"
    echo "  ${ASSETS_DIR}/fonts/    -> fontes personalizadas"
    echo "  ${ASSETS_DIR}/          -> robots.txt, sitemap.xml"
fi
echo "=========================================="
