cotizador/config/currencies.php

62 lines
1.7 KiB
PHP

<?php
// Configuración de monedas para el cotizador
/**
* Lee las monedas desde el archivo .env
* @return array Array asociativo con código de moneda => descripción completa
*/
function getCurrenciesFromEnv() {
$currencies = [];
$envFile = __DIR__ . '/../.env';
if (!file_exists($envFile)) {
// Fallback a configuración por defecto si no existe .env
return [
'BRL' => '🇧🇷 Real Brasileño (BRL)',
'CLP' => '🇨🇱 Peso Chileno (CLP)',
'USD' => '🇺🇸 Dólar Estadounidense (USD)',
'EUR' => '🇪🇺 Euro (EUR)'
];
}
$lines = file($envFile, FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);
foreach ($lines as $line) {
$line = trim($line);
// Ignorar comentarios y líneas vacías
if (empty($line) || $line[0] === '#') {
continue;
}
// Buscar líneas que empiecen con CURRENCIES_
if (strpos($line, 'CURRENCIES_') === 0) {
$parts = explode('=', $line, 2);
if (count($parts) === 2) {
$currencyCode = str_replace('CURRENCIES_', '', $parts[0]);
$currencyName = $parts[1];
$currencies[$currencyCode] = $currencyName;
}
}
}
return $currencies;
}
/**
* Obtiene solo los códigos de moneda
* @return array Array con los códigos de moneda
*/
function getCurrencyCodes() {
return array_keys(getCurrenciesFromEnv());
}
/**
* Genera el JSON de monedas para JavaScript
* @return string JSON string con las monedas
*/
function getCurrenciesJson() {
return json_encode(getCurrenciesFromEnv());
}
?>