Exemple #1
0
 /**
  * Application configuration
  * @param string|array $param
  * @param mixed $newConfig
  * @return AppConfiguration
  */
 function config($param = null, $newConfig = null)
 {
     $app_dir = dirname(dirname(dirname(dirname(dirname(__DIR__)))));
     $config = AppConfiguration::configure(require $app_dir . '/config/bootstrap.php');
     if ($param === null) {
         return $config;
     }
     if (!in_array($param, ['name', 'engine', 'root', 'public', 'view path', 'logger', 'local', 'key', null])) {
         throw new InvalidArgumentException('Paramètre invalide.', E_USER_ERROR);
     }
     switch (true) {
         case $param === 'public':
             if ($newConfig === null) {
                 return $config->getPublicPath();
             }
             $config->setPublicPath($newConfig);
             break;
         case $param === 'engine':
             if ($newConfig === null) {
                 return $config->getTemplateEngine();
             }
             $config->setTemplateEngine($newConfig);
             break;
         case $param === 'root':
             if ($newConfig === null) {
             }
             return $config->getApproot();
             break;
         case $param === 'name':
             if ($newConfig === null) {
                 return $config->getAppname();
             }
             $config->setAppname($newConfig);
             break;
         case $param === 'route':
             return $config->getApplicationRoutes();
             break;
         case $param === 'view path':
             if ($newConfig === null) {
                 return $config->getViewpath();
             }
             $config->setViewpath($newConfig);
             break;
         case $param === 'logger':
             if ($newConfig === null) {
                 return $config->getLoggerMode();
             }
             $config->setLoggerMode($newConfig);
             break;
         case $param === 'mail':
             return $config->getMailConfiguration();
             break;
         case $param === 'db':
             return $config->getDatabaseConfiguration();
             break;
         case $param === 'key':
             if ($newConfig === null) {
                 return $config->getAppkey();
             }
             return $config->setAppkey($newConfig);
             break;
     }
     return $config;
 }