# ============================================================
# .env.example — COPIE PARA .env E PREENCHA OS VALORES REAIS
# NUNCA versione o arquivo .env no Git!
# ============================================================

# Ambiente Rails
# ⚠️ NO SERVIDOR DE PRODUÇÃO use `production` (modo development expõe páginas de
# erro com código-fonte/stack, o rack-mini-profiler e desliga otimizações).
# Use `development` só na sua máquina local.
RAILS_ENV=production

# ── Banco de dados (seu PostgreSQL já existente) ─────────────
# Aponte DB_HOST para o IP ou hostname do seu servidor PostgreSQL
DATABASE_URL=postgresql://postgres:senha_segura@SEU_IP:5432/logistica_db
DB_HOST=SEU_IP        # ex: 192.168.1.100 ou db.gade.com.br
DB_PORT=5432
DB_NAME=logistica_db  # nome do banco NOVO que o sistema vai criar
DB_USER=postgres
DB_PASSWORD=senha_segura

# ── SimpliRoute — API de escrita (edição de lançamentos pelo ADM) ─────
# A base de rastreio (DB_EXISTING_TABLE) é só LEITURA e sincroniza a partir
# do SimpliRoute. Para CORRIGIR um lançamento (status/motivo/comentário) o
# sistema grava direto na API do SimpliRoute usando este token.
# Pegue em: SimpliRoute → Configurações → API. NUNCA versione o token real.
SIMPLIROUTE_TOKEN=
SIMPLIROUTE_BASE_URL=https://api.simpliroute.com

# ── Tabela existente (apenas leitura — NÃO modificar) ────────
DB_EXISTING_TABLE=db_reem_simplerout_2026
DB_EXISTING_SCHEMA=public
# Conta(s) consideradas. A coluna account_id é texto e pode vir vazia.
#   95907         → só essa conta
#   95907,12345   → várias contas
#   95907,        → essa conta + os registros de conta vazia
#   all (ou vazio)→ NÃO filtra por conta (conta tudo da tabela)  ← recomendado aqui
DB_EXISTING_ACCOUNT_ID=all

# ── Rails Security ────────────────────────────────────────────
# Gere com: docker-compose exec app bundle exec rails secret
SECRET_KEY_BASE=gere_com_rails_secret_e_cole_aqui

# Força HTTPS: redireciona HTTP→HTTPS e marca cookies como "Secure".
# Deixe "true" no servidor (atrás do Cloudflare). Em desenvolvimento local
# deixe vazio/false para não forçar https em localhost.
FORCE_SSL=true

# ══════════════════════════════════════════════════════════════
# NOTIFICAÇÕES (WhatsApp e e-mail)
#
# ⚠️ Estas variáveis são apenas FALLBACK. A configuração preferencial fica no
#    BANCO e é editada pelo ADM em Configurações → Notificações e E-mail
#    (/admin/configuracao_notificacao), valendo sem reiniciar o container.
#    Enquanto a tela não for preenchida e ativada, valem os valores abaixo.
# ══════════════════════════════════════════════════════════════

# ── Twilio — WhatsApp (opcional, Fase 8) ─────────────────────
TWILIO_ACCOUNT_SID=
TWILIO_AUTH_TOKEN=
TWILIO_WHATSAPP_FROM=whatsapp:+14155238886

# ── E-mail (opcional, Fase 8) ────────────────────────────────
SMTP_ADDRESS=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=
SMTP_PASSWORD=
SMTP_DOMAIN=gade.com.br

# ── Criptografia dos segredos gravados pela tela (opcional) ──
# A senha do SMTP e o token do Twilio salvos no banco são cifrados com uma
# chave derivada do SECRET_KEY_BASE. Se você trocar o SECRET_KEY_BASE, esses
# dois valores viram ilegíveis (o sistema volta a usar o .env e a tela avisa
# para redigitar). Defina NOTIFICACAO_SECRET com uma string longa e FIXA para
# desacoplar os segredos da rotação do SECRET_KEY_BASE.
# ⚠️ Se mudar depois de já ter salvo, os valores gravados também se perdem.
NOTIFICACAO_SECRET=

# ── App ───────────────────────────────────────────────────────
APP_HOST=localhost:3000
APP_NAME=Reem Logística
