private static function doAllInitialization() { /* * Se il core non è installato si installa * */ if (!InstalledModules::is_installed(ModuleUtils::FRAMEWORK_CATEGORY_NAME, ModuleUtils::FRAMEWORK_MODULE_NAME)) { AvailableModules::install(ModuleUtils::FRAMEWORK_CATEGORY_NAME, ModuleUtils::FRAMEWORK_MODULE_NAME); } //il core è sicuramente installato, ora per tutti i moduli eseguo il load ... return; $all_installed_modules = InstalledModules::get_all_installed_modules(); foreach ($all_installed_modules as $module) { extract($module["global"]); if ($nome_categoria != ModuleUtils::FRAMEWORK_CATEGORY_NAME && $nome_modulo != ModuleUtils::FRAMEWORK_MODULE_NAME) { if (AvailableModules::is_module_ok($nome_categoria, $nome_modulo)) { extract($module["properties"]); //$installed_version = $major_version.".".$minor_version.".".$revision; //$filesystem_version = AvailableModules::get_available_module_version($nome_categoria, $nome_modulo); /* if ($installed_version==$filesystem_version) self::initializeModule($nome_categoria,$nome_modulo); else { Log::warn("doAllInitialization", "Module version mismatch ".$nome_categoria."/".$nome_modulo." : installed ($installed_version) - filesystem ($filesystem_version)" ); } */ } else { //attenzione : modulo installato non presente su filesystem : errore!! throw new Exception("Modulo {$nome_categoria}/{$nome_modulo} installato ma non presente su filesystem."); } } } }
function testGetAllInstalledModules() { ModuleUtils::set_modules_path(FRAMEWORK_CORE_PATH . "tests/base/fakeroot/modules/"); Storage::set_storage_root(DS . FRAMEWORK_CORE_PATH . "tests/modules/test_installed_modules_storage/"); $all_installed_modules = InstalledModules::get_all_installed_modules(); $this->assertEqual(count($all_installed_modules), 2, "Il numero di moduli installati non corrisponde!!"); Storage::set_storage_root(Storage::get_default_storage_root()); }
function admin_page($title, $show_forbidden = true) { if (call("admin", "is_logged")) { Html::set_layout("admin"); } else { if ($show_forbidden) { Html::set_title("Pannello di amministrazione - Sessione scaduta"); Html::set_layout("admin_forbidden"); return; } else { Html::set_layout("admin"); } } Html::set_title("Pannello di amministrazione - " . $title); if (call("admin", "is_logged")) { //Carico tutti i moduli andando a includere i file che trovo in /include/plugins/admin/ $plugins = Plugin::list_files("admin"); foreach ($plugins as $p) { @(include_once $p); } } //se non e' stato definito nessun modulo, lascio vuoto. if (!has_sector("/pannello_sinistra")) { set_sector("/pannello_sinistra", ""); } //inizio settore "bottom" start_sector("/bottom"); include_block("common/powered_by"); end_sector(); start_sector("/framework/installed_modules"); $modules = InstalledModules::get_all_installed_modules(); echo "Elenco dei moduli installati : <br /><br />"; echo "<ul>"; foreach ($modules as $mod) { $global = $mod["global"]; $properties = $mod["properties"]; ?> <li><?php echo $global["nome_categoria"]; ?> /<?php echo $global["nome_modulo"]; ?> : <b><?php echo $properties["major_version"]; ?> .<?php echo $properties["minor_version"]; ?> .<?php echo $properties["revision"]; ?> </b></li> <?php } echo "</ul>"; end_sector(); }
function get_installed_modules() { $installed_modules = InstalledModules::get_all_installed_modules(); $all_provided_services = InstalledModules::get_all_provided_services(); foreach ($installed_modules as $mod) { $mod["additional"] = array(); //$mod["additional"]["missing_modules"] = InstalledModules::get_missing_required_modules($installed_modules, $mod["global"]["nome_categoria"], $mod["global"]["nome_modulo"]); //$mod["additional"]["missing_services"] = InstalledModules::get_missing_required_services($all_provided_services, $mod["global"]["nome_categoria"], $mod["global"]["nome_modulo"]); } return $installed_modules; }