/** * * @param type $options */ function upgrade_from_profile_web($options) { // use profile object $pro = new profile(); $pro->setProfileInfo($options['profile']); // install modules foreach ($pro->profileModules as $key => $val) { $val['version'] = $val['module_version']; $val['module'] = $val['module_name']; $module = new moduleinstaller(); $res = $module->setInstallInfo($val); //if (!$res) continue; if ($module->isInstalled($val['module_name'])) { upgrade_module($val); } else { install_module($val); } } // install templates foreach ($pro->profileTemplates as $key => $val) { // no need to do anything // we use web install and sources // are downloaded. } }
/** * function for upgrading a module * * @param array options for the module to be upgraded */ function upgrade_module($options) { // module exists. $upgrade = new moduleinstaller($options); $proceed = $upgrade->setInstallInfo($options); if ($proceed === false) { common::echoMessage("No such module '{$options['module']}' exists in modules dir."); common::echoMessage("This means that module exists in modules table. Try uninstall"); return; } $ret = $upgrade->upgrade($options['version']); if (!$ret) { echo $upgrade->error . PHP_EOL; } else { echo $upgrade->confirm . PHP_EOL; } }