Exemplo n.º 1
0
 /**
  * Constructeur.
  *
  * @param boolean $bAutoInit Si vaut FALSE, aucune initialiation des propriétés n'est réalisée.
  * Si vaut TRUE, deux cas de figure :
  * <ul>
  *	<li>une instance principale de configuration du projet existe dèjà : les propriétés de l'instance principale sont copiées dans la nouvelle instance</li>
  *	<li>aucune instance principale de configuration du projet n'existe : les propriétés de la nouvelle instance sont initialisées à partir de l'ananlyse du projet</li>
  * </ul>
  */
 public function __construct($bAutoInit = false)
 {
     if ($bAutoInit) {
         if (static::$_oMainConfig) {
             $this->setProperty(static::$_oMainConfig->getProperty());
         } else {
             // On définit l'environnement du projet
             $this->setEnv(self::detectEnv());
             // On définit le code du projet
             $sProjectCode = self::detectCode();
             if ($sProjectCode) {
                 $this->setCode($sProjectCode);
             }
             // On définit les chemins du projet
             $aPaths = self::detectPath();
             if ($aPaths) {
                 $this->setPath($aPaths);
             }
         }
     }
 }
Exemplo n.º 2
0
 /**
  * Rend disponible les variables de la route.
  */
 protected function _extractVars()
 {
     foreach ($this->_aParams as $cRoutePathType => $aVars) {
         foreach ($aVars as $sName => $sValue) {
             switch ($cRoutePathType) {
                 case AbstractRouting::VAR_GET:
                     $_REQUEST[$sName] = $_GET[$sName] = $sValue;
                     break;
                 case AbstractRouting::VAR_POST:
                     $_REQUEST[$sName] = $_POST[$sName] = $sValue;
                     break;
                 case AbstractRouting::VAR_VAR:
                     eval("global \${$sName}; \${$sName} = '{$sValue}';");
                     break;
                 case AbstractRouting::VAR_CONST:
                     define($sName, $sValue);
                     break;
                 case AbstractRouting::VAR_CONF:
                     \Aouka\Project\Config::get()->setProperty($sName, $sValue);
             }
         }
     }
 }