diff --git a/api/lib/env.php b/api/lib/env.php index e0c0db1..b23d7d6 100644 --- a/api/lib/env.php +++ b/api/lib/env.php @@ -2,7 +2,6 @@ /** * EverShelf — environment variable loader (.env). */ - function loadEnv(): array { static $cache = null; if ($cache !== null) { @@ -22,14 +21,20 @@ function loadEnv(): array { } return $cache; } - function env(string $key, string $default = ''): string { $vars = loadEnv(); - return $vars[$key] ?? $default; + if (isset($vars[$key]) && $vars[$key] !== '') { + return $vars[$key]; + } + // Fallback to system/Docker environment variables (e.g. set via Portainer) + $sysVal = getenv($key); + if ($sysVal !== false && $sysVal !== '') { + return $sysVal; + } + return $default; } - /** Push a single key into the in-memory env cache (after .env write). */ function envCacheSet(string $key, string $value): void { loadEnv(); // Force reload on next call — callers should use loadEnv() return for batch updates -} +} \ No newline at end of file