Files
dockerfluxodecaixapro/rules/09_LANGUAGE_CONFIG_README.md
T
2026-09-01 10:46:29 -03:00

2.4 KiB
Executable File

Configurações de Idioma no SysCMS

O SysCMS agora suporta configurações de idioma através das variáveis de ambiente APP_MULTI_LANG e APP_LANG_DEFAULT no arquivo .env.

Variáveis de Ambiente

APP_MULTI_LANG

  • Descrição: Controla se o seletor de idiomas deve ser exibido no sistema
  • Valores possíveis: true ou false
  • Padrão: false
  • Exemplo: APP_MULTI_LANG=true

APP_LANG_DEFAULT

  • Descrição: Define o idioma padrão do sistema quando nenhum idioma estiver selecionado
  • Valores possíveis: Códigos de idioma suportados (pt_BR, en_US, es_ES, de_DE, fr_FR)
  • Padrão: pt_BR
  • Exemplo: APP_LANG_DEFAULT=en_US

Como Funciona

1. Inicialização do Sistema

  • O sistema verifica as variáveis de ambiente durante a inicialização
  • O idioma padrão é definido na sessão com base em APP_LANG_DEFAULT
  • O tradutor é configurado com o idioma apropriado

2. Controle do Seletor de Idiomas

  • Quando APP_MULTI_LANG=false, o seletor de idiomas não é exibido
  • Quando APP_MULTI_LANG=true, o seletor de idiomas é exibido na interface
  • A troca de idioma é bloqueada quando APP_MULTI_LANG=false

3. Troca de Idioma

  • Quando habilitado, os usuários podem selecionar entre os idiomas disponíveis:
    • Português (pt_BR)
    • English (en_US)
    • Español (es_ES)
    • Deutsch (de_DE)
    • Français (fr_FR)

Exemplo de Configuração

# Habilita o seletor de idiomas
APP_MULTI_LANG=true

# Define o inglês como idioma padrão
APP_LANG_DEFAULT=en_US

Arquivos Modificados

  1. kernel/Application.php

    • Modificado para usar APP_LANG_DEFAULT ao definir o idioma padrão
    • Mantém compatibilidade com a configuração de multi-idioma
  2. modules/index/classes/Controllers/IndexController.php

    • Modificado para verificar APP_MULTI_LANG antes de permitir troca de idioma
    • Bloqueia alteração de idioma quando multi-idioma está desabilitado
  3. templates/partials/language-switcher.twig

    • Modificado para só exibir o seletor quando APP_MULTI_LANG=true
    • Usa a função helper is_multi_lang_enabled()
  4. app/helpers.php

    • Adicionada a função is_multi_lang_enabled() para verificar se multi-idioma está habilitado

Testes

Para testar as configurações, execute:

php simple_test.php

Este script irá exibir os valores atuais das variáveis de ambiente.