public static function load($filename = null) { if (is_null($filename)) { $filename = sfConfig::get('app_default_tempos_configuration_file'); } chdir(dirname(__FILE__) . '/../../'); $configuration = @file_get_contents($filename); if ($configuration === false) { throw new Exception(sprintf('Unable to open configuration file ("%s")', $filename)); } else { $configuration = json_decode($configuration, true); if ($configuration === false) { throw new Exception(sprintf('Unable to parse configuration file ("%s")', $filename)); } if (is_array($configuration)) { self::$configuration = $configuration; } else { self::$configuration = array(); } } self::$filename = $filename; }