_module_list[$module]['stat'] = 'loading'; $this->_module_list[$module]['inst'] = $module::loadInst(); if(!call_user_func(array($this->_module_list[$module]['inst'], 'module_loaded'))) { $this->_module_list[$module]['stat'] = 'unloaded'; die("Error: Module '$module' didn't load."); } $this->_module_list[$module]['stat'] = 'loaded'; return $this->_module_list[$module]['inst']; } public function unloadModule($module = null) { $path = dirname(__FILE__); if($module === null) die("Error: Module is null."); if(is_array($this->_module_list[$module]) && is_object($this->_module_list[$module]['inst'])) { $this->_module_list[$module]['stat'] = 'unloaded'; unset($this->_module_list[$module]['inst']); return true; } return false; } public function listModules() { return is_array($this->_module_list)?$this->_module_list:array(); } } ?>