Files
2026-08-21 22:57:44 +00:00

77 lines
2.8 KiB
PHP

<?php
/**
* AçãoOpção — configuração de ambiente (desenvolvimento / produção).
* Inclua este arquivo antes de includes/theme.php.
*/
define('AO_AMBIENTE_ARQUIVO', __DIR__ . '/ambiente.json');
const AO_URLS = [
'desenvolvimento' => 'http://localhost:8080/claude/AcaoOpcao/',
'producao' => 'https://acaoeopcaoderivativos.systems/',
];
function ao_ler_ambiente() {
$padrao = 'desenvolvimento';
if (!file_exists(AO_AMBIENTE_ARQUIVO)) {
return $padrao;
}
$conteudo = json_decode((string) file_get_contents(AO_AMBIENTE_ARQUIVO), true);
$ambiente = is_array($conteudo) ? ($conteudo['ambiente'] ?? $padrao) : $padrao;
return array_key_exists($ambiente, AO_URLS) ? $ambiente : $padrao;
}
function ao_salvar_ambiente($ambiente) {
if (!array_key_exists($ambiente, AO_URLS)) {
return false;
}
$ok = file_put_contents(
AO_AMBIENTE_ARQUIVO,
json_encode(['ambiente' => $ambiente], JSON_PRETTY_PRINT)
);
return $ok !== false;
}
// Constantes disponíveis para o resto do sistema:
// AO_AMBIENTE 'desenvolvimento' | 'producao'
// AO_BASE_URL URL completa do ambiente ativo
// AO_IS_PRODUCAO true quando o ambiente ativo é produção (https)
define('AO_AMBIENTE', ao_ler_ambiente());
define('AO_BASE_URL', AO_URLS[AO_AMBIENTE]);
define('AO_IS_PRODUCAO', AO_AMBIENTE === 'producao');
// Credenciais do banco de dados MySQL por ambiente. Troque os valores de
// "producao" diretamente aqui, editando o arquivo no servidor — por segurança,
// evite colar senha de produção em e-mail, chat ou qualquer lugar fora deste
// arquivo. O ambiente ativo é escolhido na tela Configurações do sistema.
const AO_BANCOS = [
'desenvolvimento' => [
'host' => 'localhost',
'nome' => 'acaoopcao',
'usuario' => 'josima70_josimar',
'senha' => 'Josim@r230976',
],
'producao' => [
'host' => 'database', // ajuste se o banco de produção estiver em outro host
'nome' => 'acaoopcao',
'usuario' => 'root',
'senha' => 'Josim@r230976',
],
];
define('AO_DB_HOST', AO_BANCOS[AO_AMBIENTE]['host']);
define('AO_DB_NOME', AO_BANCOS[AO_AMBIENTE]['nome']);
define('AO_DB_USUARIO', AO_BANCOS[AO_AMBIENTE]['usuario']);
define('AO_DB_SENHA', AO_BANCOS[AO_AMBIENTE]['senha']);
/**
* Monta uma URL absoluta a partir de um caminho relativo ao projeto,
* usando a URL base do ambiente ativo. Útil para links que precisam
* ser absolutos (ex.: compartilhamento, tag canonical, e-mails).
* Os links internos do próprio sistema continuam relativos e não
* precisam desta função para funcionar nos dois ambientes.
*/
function ao_url($caminho = '') {
return rtrim(AO_BASE_URL, '/') . '/' . ltrim($caminho, '/');
}