%4$s

 Please select Modules you would like to install:

'; $first_time = $this->GetVar('step') != $this->currentStep; // data from this step was not submitted yet $selected = $this->GetVar('modules'); if (!$selected) { // preselect interface modules $selected = Array ('core'); } $modules_helper = $this->Application->recallObject('kModulesHelper'); /* @var $modules_helper kModulesHelper */ $licensed_modules = array_map('strtolower', $modules_helper->_GetModules()); $modules = $this->ScanModules(); foreach ($modules as $module) { $module_version = $this->toolkit->GetMaxModuleVersion('modules/' . $module . '/'); $prerequisites_errors = $this->toolkit->CheckPrerequisites('modules/' . $module . '/', Array ($module_version), 'install'); $license_module = $module; if (!in_array(strtolower($license_module), $licensed_modules)) { // when module isn't licensed user can't install it continue; // option #1: don't show non-licensed modules array_unshift($prerequisites_errors, 'Module not licensed'); // option #2: show warning under module name } if ($prerequisites_errors) { // disable checkbox, when some of prerequisites not passed $checked = 'disabled'; } else { // preserve user selected checked status $checked = in_array($module, $selected) || $first_time ? 'checked="checked"' : ''; } $error_msg = $prerequisites_errors ? implode('
', $prerequisites_errors) : ''; $module_string = $this->toolkit->getModuleString($module, $module_version); echo sprintf($module_tpl, $module, $module_string, $checked, $error_msg); } ?>