public function __construct($name, $addonDir = null) { $this->name = $name; $this->addonDir = is_null($addonDir) ? FLUX_ADDON_DIR . "/{$name}" : $addonDir; $this->configDir = "{$this->addonDir}/config"; $this->moduleDir = "{$this->addonDir}/modules"; $this->themeDir = "{$this->addonDir}/themes/" . Flux::config('ThemeName'); $files = array('addonConfig' => "{$this->configDir}/addon.php", 'accessConfig' => "{$this->configDir}/access.php"); foreach ($files as $configName => $filename) { if (file_exists($filename)) { $this->{$configName} = Flux::parseConfigFile($filename); } if (!$this->{$configName} instanceof Flux_Config) { $tempArr = array(); $this->{$configName} = new Flux_Config($tempArr); } } // Use new language system for messages (also supports addons). $this->messagesConfig = Flux::parseLanguageConfigFile($name); }