| // +---------------------------------------------------------------------------+ // $Id$ function environmentOk() { if (SGL_Install_Common::errorsExist()) { return false; } else { // cleanup data for storage $oTask = $GLOBALS['_SGL']['runner']; $aSummary = array(); foreach ($oTask->aTasks as $oTask) { $aSummary[$oTask->key] = $oTask->aData; } $serialized = serialize($aSummary); @file_put_contents(SGL_VAR_DIR . '/env.php', $serialized); return true; } } /** * @package Install */ class WizardDetectEnv extends HTML_QuickForm_Page { function buildForm() { $this->_formBuilt = true; $this->setDefaults(array( 'detectEnv' => 1, )); $this->setDefaults(SGL_Install_Common::overrideDefaultInstallSettings()); $this->addElement('header', null, 'Detect Environment: page 3 of 6'); $runner = new SGL_TaskRunner(); $runner->addTask(new SGL_Task_GetLoadedModules()); $runner->addTask(new SGL_Task_GetPhpEnv()); $runner->addTask(new SGL_Task_GetPhpIniValues()); $runner->addTask(new SGL_Task_GetFilesystemInfo()); if (!SGL::isMinimalInstall()) { $runner->addTask(new SGL_Task_GetPearInfo()); } $html = $runner->main(); // store global copy for error callback $GLOBALS['_SGL']['runner'] = $runner; $this->addElement('checkbox', 'detectEnv', 'Detect Env?', 'Yes'); $this->addElement('static', 'colourKey', 'Legend', 'Errors are displayed in '. 'red, recommendations in '. 'yellow and success in '. 'green'); $this->registerRule('environmentOk','function','environmentOk'); $this->addRule('detectEnv', 'please fix the listed errors', 'environmentOk'); $this->addElement('static', 'env', null, $html); // submit $prevnext[] =& $this->createElement('submit', $this->getButtonName('back'), '<< Back'); $prevnext[] =& $this->createElement('submit', $this->getButtonName('next'), 'Next >>'); $this->addGroup($prevnext, null, '', ' ', false); $this->setDefaultAction('next'); } } ?>