function init() { if ( !isset( $this->PersistenceList['run_finetune'] ) ) $this->PersistenceList['run_finetune'] = false; if ( $this->PersistenceList['run_finetune'] ) { $criticalTests = eZSetupCriticalTests(); $optionalTests = eZSetupOptionalTests(); $testTable = eZSetupTestTable(); $runResult = eZSetupRunTests( $criticalTests, 'eZSetup:init:system_check', $this->PersistenceList ); $optionalRunResult = eZSetupRunTests( $optionalTests, 'eZSetup:init:system_check', $this->PersistenceList ); $this->Results = $runResult['results']; $this->Result = $runResult['result']; $this->OptionalResults = $optionalRunResult['results']; $this->OptionalResult = $optionalRunResult['result']; $persistenceData = $runResult['persistence_list']; $testsRun = array(); foreach ( $this->Results as $testResultItem ) { $testsRun[$testResultItem[1]] = $testResultItem[0]; } eZSetupMergePersistenceList( $this->PersistenceList, $persistenceData ); $this->PersistenceList['tests_run'] = $testsRun; $this->PersistenceList['optional_tests_run'] = $testsRun; return ( $this->OptionalResult == EZ_SETUP_TEST_SUCCESS ); } return true; }
function eZSetupRunTests( $testList, $client, &$givenPersistentList ) { eZSetupPrvtExtractExtraPaths( $givenPersistentList ); $testTable = eZSetupTestTable(); $testResults = array(); $persistenceResults = array(); $testResult = EZ_SETUP_TEST_SUCCESS; $successCount = 0; $http = eZHTTPTool::instance(); foreach ( $testList as $testItem ) { $testName = $testItem; $testElement = array(); $testElement[0] = EZ_SETUP_TEST_FAILURE; if ( !isset( $testTable[$testItem] ) ) { eZDebug::writeError( "The setup test '$testName' is not defined", $client ); continue; } if ( $http->hasPostVariable( $testItem . '_Ignore' ) and $http->postVariable( $testItem . '_Ignore' ) != 0 ) { continue; } $testInfo = $testTable[$testItem]; $testFunction = $testInfo[0]; if ( !function_exists( $testFunction ) ) continue; $testResultArray = $testFunction( $testName ); if ( $testResultArray['result'] ) { $testElement[0] = EZ_SETUP_TEST_SUCCESS; ++$successCount; } else $testResult = EZ_SETUP_TEST_FAILURE; if ( isset( $testResultArray['persistent_data'] ) ) { $persistenceResults[] = array( $testName, $testResultArray['persistent_data'] ); } else if ( isset( $testResultArray['persistence_list'] ) ) { $persistenceResults = array_merge( $persistenceResults, $testResultArray['persistence_list'] ); } $testElement[1] = $testName; $testElement[2] = $testResultArray; $testResults[] = $testElement; } return array( 'result' => $testResult, 'results' => $testResults, 'persistence_list' => $persistenceResults, 'success_count' => $successCount ); }
function init() { $optionalTests = eZSetupOptionalTests(); $testTable = eZSetupTestTable(); $optionalRunResult = eZSetupRunTests($optionalTests, 'eZSetup:init:system_check', $this->PersistenceList); $this->OptionalResults = $optionalRunResult['results']; $this->OptionalResult = $optionalRunResult['result']; $testsRun = array(); if (isset($this->Results) && is_array($this->Results)) { foreach ($this->Results as $testResultItem) { $testsRun[$testResultItem[1]] = $testResultItem[0]; } } $this->PersistenceList['tests_run'] = $testsRun; $this->PersistenceList['optional_tests_run'] = $testsRun; return false; // Always show welcome message }
function generateRegistration($mailTpl, $comments) { $databaseMap = eZSetupDatabaseMap(); $databaseInfo = $this->PersistenceList['database_info']; $databaseInfo['info'] = $databaseMap[$databaseInfo['type']]; $regionalInfo = $this->PersistenceList['regional_info']; if (!isset($regionalInfo['languages'])) { $regionalInfo['languages'] = array(); } // $demoData = $this->PersistenceList['demo_data']; $emailInfo = $this->PersistenceList['email_info']; $siteTemplates = array(); $siteType = $this->chosenSiteType(); /* $typeFunctionality = eZSetupFunctionality( $siteType['identifier'] ); $additionalPackages = array(); if ( isset( $this->PersistenceList['additional_packages'] ) ) $additionalPackages = $this->PersistenceList['additional_packages']; $extraFunctionality = array_merge( $additionalPackages, $typeFunctionality['required'] ); $extraFunctionality = array_unique( $extraFunctionality );*/ $url = $siteType['url']; if (!preg_match("#^[a-zA-Z0-9]+://(.*)\$#", $url)) { $url = 'http://' . $url; } $currentURL = $url; $adminURL = $url; if ($siteType['access_type'] == 'url') { $url .= '/' . $siteType['access_type_value']; $adminURL .= '/' . $siteType['admin_access_type_value']; } else { if ($siteType['access_type'] == 'hostname') { $url = eZHTTPTool::createRedirectURL('http://' . $siteType['access_type_value']); $adminURL = eZHTTPTool::createRedirectURL('http://' . $siteType['admin_access_type_value']); } else { if ($siteType['access_type'] == 'port') { $url = eZHTTPTool::createRedirectURL($currentURL, array('override_port' => $siteType['access_type_value'])); $adminURL = eZHTTPTool::createRedirectURL($currentURL, array('override_port' => $siteType['admin_access_type_value'])); } } } $siteType['url'] = $url; $siteType['admin_url'] = $adminURL; //$siteType['extra_functionality'] = $extraFunctionality; $testsRun = $this->PersistenceList['tests_run']; $imageMagickProgram = $this->PersistenceList['imagemagick_program']; $imageGDExtension = $this->PersistenceList['imagegd_extension']; $phpVersion = $this->PersistenceList['phpversion']; $webserverInfo = false; if (function_exists('apache_get_version')) { $webserverInfo = array('version' => apache_get_version()); } $systemInfo = new eZSysInfo(); $systemInfo->scan(); $optionalTests = eZSetupOptionalTests(); $testTable = eZSetupTestTable(); $runResult = eZSetupRunTests($optionalTests, 'eZSetup:init:send_registration', $this->PersistenceList); $testResults = $runResult['results']; $testResult = $runResult['result']; $successCount = $runResult['success_count']; $persistenceData = $runResult['persistence_list']; // Send e-mail $mailTpl->setVariable('comments', $comments); $mailTpl->setVariable('database_info', $databaseInfo); $mailTpl->setVariable('regional_info', $regionalInfo); // $mailTpl->setVariable( 'demo_data', $demoData ); $mailTpl->setVariable('email_info', $emailInfo); $mailTpl->setVariable('site_type', $siteType); $mailTpl->setVariable('tests_run', $testsRun); $mailTpl->setVariable('imagemagick_program', $imageMagickProgram); $mailTpl->setVariable('imagegd_extension', $imageGDExtension); $mailTpl->setVariable('phpversion', $phpVersion); $mailTpl->setVariable('webserver', $webserverInfo); $mailTpl->setVariable('system', $systemInfo); $mailTpl->setVariable('os', array('name' => php_uname())); $mailTpl->setVariable('optional_tests', $testResults); $mailTpl->setVariable("version", array("text" => eZPublishSDK::version(), "major" => eZPublishSDK::majorVersion(), "minor" => eZPublishSDK::minorVersion(), "release" => eZPublishSDK::release())); return $mailTpl->fetch('design:setup/registration_email.tpl'); }