modifs.mineures sans commentaires

This commit is contained in:
Jephté Clain 2025-09-30 21:57:59 +04:00
parent 4e3d5290bb
commit e16581f849
3 changed files with 59 additions and 1 deletions

View File

@ -0,0 +1,50 @@
<?php
namespace nulib\app;
/**
* Class ProfileManager: gestionnaire de profils
*/
class ProfileManager {
const NAME = null;
const PROFILES = ["prod", "test", "devel"];
const PRODUCTION_MODES = [
"prod" => true,
"test" => true,
];
const PROFILE_MAP = null;
function __construct(?array $params=null) {
$name = $params["name"] ?? static::NAME;
if ($name !== null) $name .= "_";
$prefixes = [strtoupper($name)];
$app = $params["app"] ?? false;
if ($app) $prefixes[] = "APP_";
$this->envPrefixes = $prefixes;
}
protected array $envPrefixes;
function getEnvProfile(): ?string {
foreach ($this->envPrefixes as $prefix) {
$profile = getenv($prefix."PROFILE");
if ($profile !== false) return $profile;
}
return null;
}
protected ?string $defaultProfile = null;
function getDefaultProfile(): ?string {
return $this->defaultProfile;
}
function setDefaultProfile(?string $profile): void {
$this->defaultProfile = $profile;
}
function getProfile(?bool &$productionMode=null): string {
}
function setProfile(?string $profile=null, ?bool $productionMode=null): void {
}
}

View File

@ -386,7 +386,7 @@ class app {
"etcdir" => $this->etcdir, "etcdir" => $this->etcdir,
"vardir" => $this->vardir, "vardir" => $this->vardir,
"logdir" => $this->logdir, "logdir" => $this->logdir,
"profile" => $this->profile, "profile" => $this->le,
"appgroup" => $this->appgroup, "appgroup" => $this->appgroup,
"name" => $this->name, "name" => $this->name,
"title" => $this->title, "title" => $this->title,

8
src/app/config.php Normal file
View File

@ -0,0 +1,8 @@
<?php
namespace nulib\app;
/**
* Class config: gestion de la configuration de l'application
*/
class config {
}