/** * Return the setup for this wizard * * @return Setup */ public function getSetup() { $pageData = $this->getPageData(); $setup = new Setup(); $setup->addStep(new BackendStep(array('backendConfig' => $pageData['setup_monitoring_backend'], 'resourceConfig' => isset($pageData['setup_monitoring_ido']) ? array_diff_key($pageData['setup_monitoring_ido'], array('skip_validation' => null)) : array_diff_key($pageData['setup_monitoring_livestatus'], array('skip_validation' => null))))); $setup->addStep(new TransportStep(array('transportConfig' => $pageData['setup_command_transport']))); $setup->addStep(new SecurityStep(array('securityConfig' => $pageData['setup_monitoring_security']))); return $setup; }
/** * Return the setup for this wizard * * @return Setup */ public function getSetup() { $pageData = $this->getPageData(); $setup = new Setup(); if (isset($pageData['setup_auth_db_resource']) && !$pageData['setup_auth_db_resource']['skip_validation'] && (!isset($pageData['setup_auth_db_creation']) || !$pageData['setup_auth_db_creation']['skip_validation'])) { $setup->addStep(new DatabaseStep(array('tables' => $this->databaseTables, 'privileges' => $this->databaseUsagePrivileges, 'resourceConfig' => $pageData['setup_auth_db_resource'], 'adminName' => isset($pageData['setup_auth_db_creation']['username']) ? $pageData['setup_auth_db_creation']['username'] : null, 'adminPassword' => isset($pageData['setup_auth_db_creation']['password']) ? $pageData['setup_auth_db_creation']['password'] : null, 'schemaPath' => Config::module('setup')->get('schema', 'path', Icinga::app()->getBaseDir('etc' . DIRECTORY_SEPARATOR . 'schema'))))); } elseif (isset($pageData['setup_config_db_resource']) && !$pageData['setup_config_db_resource']['skip_validation'] && (!isset($pageData['setup_config_db_creation']) || !$pageData['setup_config_db_creation']['skip_validation'])) { $setup->addStep(new DatabaseStep(array('tables' => $this->databaseTables, 'privileges' => $this->databaseUsagePrivileges, 'resourceConfig' => $pageData['setup_config_db_resource'], 'adminName' => isset($pageData['setup_config_db_creation']['username']) ? $pageData['setup_config_db_creation']['username'] : null, 'adminPassword' => isset($pageData['setup_config_db_creation']['password']) ? $pageData['setup_config_db_creation']['password'] : null, 'schemaPath' => Config::module('setup')->get('schema', 'path', Icinga::app()->getBaseDir('etc' . DIRECTORY_SEPARATOR . 'schema'))))); } $setup->addStep(new GeneralConfigStep(array('generalConfig' => $pageData['setup_general_config'], 'resourceName' => isset($pageData['setup_auth_db_resource']['name']) ? $pageData['setup_auth_db_resource']['name'] : (isset($pageData['setup_config_db_resource']['name']) ? $pageData['setup_config_db_resource']['name'] : null)))); $adminAccountType = $pageData['setup_admin_account']['user_type']; $adminAccountData = array('username' => $pageData['setup_admin_account'][$adminAccountType]); if ($adminAccountType === 'new_user' && !$pageData['setup_auth_db_resource']['skip_validation'] && (!isset($pageData['setup_auth_db_creation']) || !$pageData['setup_auth_db_creation']['skip_validation'])) { $adminAccountData['resourceConfig'] = $pageData['setup_auth_db_resource']; $adminAccountData['password'] = $pageData['setup_admin_account']['new_user_password']; } $authType = $pageData['setup_authentication_type']['type']; $setup->addStep(new AuthenticationStep(array('adminAccountData' => $adminAccountData, 'backendConfig' => $pageData['setup_authentication_backend'], 'resourceName' => $authType === 'db' ? $pageData['setup_auth_db_resource']['name'] : ($authType === 'ldap' ? $pageData['setup_ldap_resource']['name'] : null)))); if (isset($pageData['setup_auth_db_resource']) || isset($pageData['setup_config_db_resource']) || isset($pageData['setup_ldap_resource'])) { $setup->addStep(new ResourceStep(array('dbResourceConfig' => isset($pageData['setup_auth_db_resource']) ? array_diff_key($pageData['setup_auth_db_resource'], array('skip_validation' => null)) : (isset($pageData['setup_config_db_resource']) ? array_diff_key($pageData['setup_config_db_resource'], array('skip_validation' => null)) : null), 'ldapResourceConfig' => isset($pageData['setup_ldap_resource']) ? array_diff_key($pageData['setup_ldap_resource'], array('skip_validation' => null)) : null))); } foreach ($this->getWizards() as $wizard) { if ($wizard->isComplete()) { $setup->addSteps($wizard->getSetup()->getSteps()); } } $setup->addStep(new EnableModuleStep(array_keys($this->getPage('setup_modules')->getCheckedModules()))); return $setup; }