<?php declare(strict_types=1); namespace GamesShop\Environment; use DotenvVault\DotenvVault; use GamesShop\Paths; final class EnvironmentHandler { private const string ENVIRONMENT_PATH = Paths::ROOT_PATH . '/config'; public function load() { $dotEnv = DotenvVault::createImmutable( self::ENVIRONMENT_PATH ); $dotEnv->safeLoad(); } public function getDiscordEnvironment(): DiscordEnvironment { return new DiscordEnvironment( $_SERVER['DISCORD_CLIENT_ID'], $_SERVER['DISCORD_CLIENT_SECRET'], $_SERVER['DISCORD_CLIENT_LOGIN_URI'], ); } public function getDatabaseEnvironment(): DatabaseEnvironment { return new DatabaseEnvironment( $_SERVER['DB_DRIVER'], $_SERVER['DB_PATH'] ); } public function isProduction(): bool { return $_SERVER['PRODUCTION'] === 'true'; } }