#!/bin/bash

echo "=========================================="
echo "DEPLOY FINAL - TODAS AS CORREÇÕES"
echo "=========================================="
echo ""

cd /var/www/gestorstream

echo "1. Atualizando código do Git..."
git stash 2>/dev/null
git pull origin main
echo "✅ Código atualizado"
echo ""

echo "2. Limpando cache backend..."
cd backend
php artisan config:clear
php artisan cache:clear
php artisan route:clear
echo "✅ Cache limpo"
echo ""

echo "3. Recompilando frontend..."
cd ../frontend
sudo -u www-data npm run build
echo "✅ Frontend compilado"
echo ""

echo "4. Ajustando permissões..."
cd ..
sudo chown -R www-data:www-data backend/storage
sudo chmod -R 775 backend/storage
echo "✅ Permissões ajustadas"
echo ""

echo "5. Recarregando Nginx..."
sudo nginx -t && sudo nginx -s reload
echo "✅ Nginx recarregado"
echo ""

echo ""
echo "╔══════════════════════════════════════════╗"
echo "║   ✅  TODAS AS CORREÇÕES APLICADAS!     ║"
echo "╚══════════════════════════════════════════╝"
echo ""
echo "📋 RESUMO DAS IMPLEMENTAÇÕES:"
echo ""
echo "  ✅ 1. Bot ão 'Renovar Assinatura' agora abre modal profissional"
echo "  ✅ 2. Checkboxes de isenção em /admin/users (já existiam)"
echo "  ✅ 3. Lógica de isenção no backend (já funcionava)"
echo "  ✅ 4. Admins sem limite de API (rate limit desabilitado)"
echo "  ✅ 5. Widgets de planos ocultos para admins"
echo "  ✅ 6. Link 'Minha Assinatura' oculto no menu para admins"
echo "  ✅ 7. SubscriptionWidget oculto para admins"
echo "  ✅ 8. Componentes RequireSubscription e AdminRedirect criados"
echo ""
echo "⚠️  ATENÇÃO: Falta aplicar RequireSubscription no App.tsx!"
echo ""
echo "📝 PRÓXIMOS PASSOS MANUAIS:"
echo ""
echo "1. Editar frontend/src/App.tsx:"
echo ""
echo "   import { RequireSubscription } from './components/RequireSubscription';"
echo "   import { AdminRedirect } from './components/AdminRedirect';"
echo ""
echo "2. Envolver as rotas protegidas com RequireSubscription:"
echo ""
echo "   <Route path='/dashboard' element={"
echo "     <ProtectedRoute>"
echo "       <RequireSubscription>"
echo "         <DashboardPage />"
echo "       </RequireSubscription>"
echo "     </ProtectedRoute>"
echo "   } />"
echo ""
echo "3. Proteger a rota /subscription de admins:"
echo ""
echo "   <Route path='/subscription' element={"
echo "     <ProtectedRoute>"
echo "       <AdminRedirect redirectTo='/dashboard'>"
echo "         <SubscriptionPage />"
echo "       </AdminRedirect>"
echo "     </ProtectedRoute>"
echo "   } />"
echo ""
echo "4. Recompilar frontend:"
echo ""
echo "   cd /var/www/gestorstream/frontend"
echo "   sudo -u www-data npm run build"
echo "   sudo nginx -s reload"
echo ""
echo "5. Limpar cache do navegador (Ctrl+Shift+Del)"
echo ""
echo "✅ Pronto para testar!"
echo ""
