#!/bin/bash
# Script para instalar Composer e corrigir configuração do GestorStream
# Data: 2025-11-28

set -e

echo "🔧 =========================================="
echo "   Instalação do Composer"
echo "=========================================="
echo ""

# Verificar se já está instalado
if command -v composer >/dev/null 2>&1; then
    echo "✅ Composer já está instalado:"
    composer --version
    echo ""
    read -p "❓ Deseja reinstalar? (s/n): " -n 1 -r
    echo ""
    if [[ ! $REPLY =~ ^[Ss]$ ]]; then
        echo "⏩ Pulando instalação do Composer"
        exit 0
    fi
fi

echo "📥 [1/4] Baixando Composer..."
cd /tmp
curl -sS https://getcomposer.org/installer -o composer-setup.php

if [ ! -f composer-setup.php ]; then
    echo "❌ Erro ao baixar instalador do Composer"
    exit 1
fi

echo "✅ Instalador baixado"
echo ""

echo "🔍 [2/4] Verificando integridade..."
EXPECTED_CHECKSUM="$(php -r 'copy("https://composer.github.io/installer.sig", "php://stdout");')"
ACTUAL_CHECKSUM="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"

if [ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]; then
    echo "❌ Checksum inválido!"
    rm composer-setup.php
    exit 1
fi

echo "✅ Checksum verificado"
echo ""

echo "⚙️ [3/4] Instalando Composer globalmente..."
php composer-setup.php --install-dir=/usr/local/bin --filename=composer --quiet

if [ $? -eq 0 ]; then
    echo "✅ Composer instalado com sucesso!"
else
    echo "❌ Erro ao instalar Composer"
    exit 1
fi

echo ""

echo "🧹 [4/4] Limpando arquivos temporários..."
rm composer-setup.php

echo "✅ Limpeza concluída"
echo ""

echo "🎉 =========================================="
echo "   Instalação Concluída"
echo "=========================================="
echo ""
composer --version
echo ""
echo "💡 Próximo passo: Execute novamente o script fix-domain-issue.sh"
echo "   sudo bash fix-domain-issue.sh"
echo ""
