function loadModules() { include_once Openbiz::$app->getModulePath() . "/system/lib/ModuleLoader.php"; $modules = array('system', 'menu', 'help', 'contact', 'cronjob'); foreach (glob(Openbiz::$app->getModulePath() . DIRECTORY_SEPARATOR . "*") as $dir) { $modName = str_replace(Openbiz::$app->getModulePath() . DIRECTORY_SEPARATOR, "", $dir); if (!in_array($modName, $modules)) { array_push($modules, $modName); } } $logs = ""; // find all modules foreach ($modules as $mod) { $logs .= "Loading Module: {$mod}\n"; $loader = new ModuleLoader($mod); $loader->debug = 0; $loader->loadModule(true); $logs .= $loader->logs; $logs .= $loader->errors; $logs .= "\n"; } giveActionAccess("", 1); // admin to access all actions //giveActionAccess("module='user'", 2); file_put_contents(OPENBIZ_APP_FILE_PATH . '/install.log', $logs); echo "SUCCESS. Modules are loaded in Cubi. ###\n" . $logs; }
$_module = basename($_module); if ($_module == "system" || $_module == "menu") { continue; } $moduleArr[] = $_module; } } foreach ($moduleArr as $moduleName) { $loader = new ModuleLoader($moduleName); echo "Start loading {$moduleName} module ..." . PHP_EOL; echo "--------------------------------------------------------" . PHP_EOL; $loader->loadModule($installSql); echo $loader->errors . "" . PHP_EOL; // give predefined users access to actions echo "Give admin to access all actions of module '{$moduleName}'" . PHP_EOL; giveActionAccess("module='{$moduleName}'", 1); // admin to access all actions echo "--------------------------------------------------------" . PHP_EOL; echo "End loading {$moduleName} module" . PHP_EOL; } // give predefined users access to actions function giveActionAccess($where, $role_id) { $db = BizSystem::dbConnection(); try { if (empty($where)) { $sql = "SELECT * FROM acl_action"; } else { $sql = "SELECT * FROM acl_action WHERE {$where}"; } BizSystem::log(LOG_DEBUG, "DATAOBJ", $sql);
} // find all modules foreach ($modules as $mod) { echo PHP_EOL . "---------------------------------------------------" . PHP_EOL; echo "> Start loading '{$mod}' module ..." . PHP_EOL; $loader = new ModuleLoader($mod, $cubiInstallDb); $loader->loadModule(true); echo "> End loading '{$mod}' module" . PHP_EOL; } echo PHP_EOL . "---------------------------------------------------" . PHP_EOL; // give predefined users access to actions echo "> Give admin to access all actions " . PHP_EOL; giveActionAccess("", 1); // admin to access all actions echo "> Give member access to user related actions " . PHP_EOL; giveActionAccess("module='user'", 2); // member access to user related actions echo PHP_EOL . "---------------------------------------------------" . PHP_EOL; echo "Cubi install database is created successfully!" . PHP_EOL; // give predefined users access to actions function giveActionAccess($where, $role_id) { global $db; try { $sql = "DELETE FROM acl_role_action WHERE role_id={$role_id}"; $db->query($sql); if (empty($where)) { $sql = "SELECT * FROM acl_action"; } else { $sql = "SELECT * FROM acl_action WHERE {$where}"; }
function fillDB() { include_once MODULE_PATH . "/system/lib/ModuleLoader.php"; replaceDbConfig(); $modules = array('system', 'menu'); foreach (glob(MODULE_PATH . DIRECTORY_SEPARATOR . "*") as $dir) { $modName = str_replace(MODULE_PATH . DIRECTORY_SEPARATOR, "", $dir); if ($modName != "system" && $modName != "menu") { array_push($modules, $modName); } } // find all modules foreach ($modules as $mod) { $loader = new ModuleLoader($mod); $loader->debug = 0; $loader->loadModule(true); } // admin to access all actions giveActionAccess("", 1); // sipadmin to access siremis user profile and sip admin pages giveActionAccess("module='user' OR module='ser'", 2); // sipuser to access siremis user profile and sip user pages giveActionAccess("module='user' OR module='sipuser'", 3); return true; }