protected function __construct()
 {
     $this->data = (require_once MOOJON_DIRECTORY . 'config/moojon.config.php');
     $project_config_path = moojon_paths::get_project_config_directory() . 'project.config.php';
     if (defined('PROJECT_DIRECTORY') && file_exists($project_config_path)) {
         $this->data = array_merge($this->data, require_once $project_config_path);
     }
     $config_environment = moojon_paths::get_project_config_environment_directory(ENVIRONMENT) . 'environment.config.php';
     if (defined('PROJECT_DIRECTORY') && is_file($config_environment)) {
         foreach (require_once $config_environment as $key => $value) {
             $this->data[$key] = $value;
         }
     }
     date_default_timezone_set($this->data['timezone']);
 }
 private static function environment_config($environment)
 {
     $project_config_environment_directory = moojon_paths::get_project_config_environment_directory($environment);
     moojon_files::attempt_mkdir($project_config_environment_directory);
     self::run(moojon_paths::get_moojon_templates_directory() . "{$environment}.environment.config.template", $project_config_environment_directory . 'environment.config.php', array(), false, true);
 }