m_SiteSettings = &MohitoAPISettings::GetInstance(); } /** * ModuleManager::GetRTManager() * * @param mixed $par_ModuleName * @param mixed $par_StructureItemID * @param string $par_ModuleFolderOffset * @return */ function &GetRTManager($par_ModuleName, $par_StructureItemID, $par_ModuleFolderOffset = '../') { global $g_Settings, $g_Templates, $g_Modules; require_once ($par_ModuleFolderOffset . $g_Modules[$par_ModuleName]->GetPath() . 'include.php'); // check if there're no initialized runtime managers or required runtime manager is not initialized if (($this->m_RunTimeManagerList == null) || (!isset($this-> m_RunTimeManagerList[$par_ModuleName]))) { // if standalone - take $l_ModuleSettings from include.php, otherwise - from DB if (!$par_StructureItemID) { $l_ModuleSettings = &$g_Settings[$par_ModuleName]; $l_Templates = &$g_Templates[$par_ModuleName]; } else { // ??? // select from structure DB where id = $par_StructureItemID $l_ModuleSettings = unserialize(base64_decode("")); $l_Templates = unserialize(base64_decode("")); } // =================================================================== // = Module initialization // =================================================================== $l_ModuleInstance = &$g_Modules[$par_ModuleName]->GetInstance(); eval('$this->m_RunTimeManagerList[$par_ModuleName] = new ' . $l_ModuleInstance . '($this->m_SiteSettings, $this, $l_ModuleSettings, $l_Templates);'); // ==================================================================== } // return particular RuntimeManager Instance return $this->m_RunTimeManagerList[$par_ModuleName]; } } ?>