/** * Validate the resource configuration by trying to connect with it * * @param Form $form The form to fetch the configuration values from * * @return bool Whether validation succeeded or not */ public static function isValidResource(Form $form) { $result = ResourceFactory::createResource(new ConfigObject($form->getValues()))->inspect(); if ($result->hasError()) { $form->addError(sprintf('%s (%s)', $form->translate('Connectivity validation failed, connection to the given resource not possible.'), $result->getError())); } // TODO: display diagnostics in $result->toArray() to the user return !$result->hasError(); }
/** * {@inheritdoc} * * Values from subforms are directly added to the returned values array instead of being grouped by the subforms' * names. */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues($suppressArrayNotation); foreach (array_keys($this->_subForms) as $name) { // Zend returns values from subforms grouped by their names, but we want them flat $values = array_merge($values, $values[$name]); unset($values[$name]); } return $values; }
/** * {@inheritdoc} */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues($suppressArrayNotation); if (isset($values['url']) && $values['url']) { $url = Url::fromPath($values['url']); if (!$url->isExternal() && ($relativePath = $url->getRelativeUrl())) { $values['url'] = $relativePath; } } return $values; }
/** * {@inheritdoc} */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues($suppressArrayNotation); if ($values['themes_default'] === '' || $values['themes_default'] === StyleSheet::DEFAULT_THEME) { $values['themes_default'] = null; } if (!$values['themes_disabled']) { $values['themes_disabled'] = null; } return $values; }
/** * Validate the resource configuration by trying to connect with it * * @param Form $form The form to fetch the configuration values from * * @return bool Whether validation succeeded or not */ public static function isValidResource(Form $form) { try { $resource = ResourceFactory::createResource(new ConfigObject($form->getValues())); $resource->getConnection()->getConnection(); } catch (Exception $e) { $form->addError($form->translate('Connectivity validation failed, connection to the given resource not possible.')); return false; } return true; }
/** * {@inheritdoc} */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues($suppressArrayNotation); if ($values['themes_default'] === 'Icinga') { $values['themes_default'] = null; } if (!$values['themes_disabled']) { $values['themes_disabled'] = null; } return $values; }
/** * {@inheritdoc} */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues($suppressArrayNotation); if (isset($values['url']) && $values['url']) { $url = Url::fromPath($values['url']); if ($url->getBasePath() === $this->getRequest()->getBasePath()) { $values['url'] = $url->getRelativeUrl(); } else { $values['url'] = $url->getAbsoluteUrl(); } } return $values; }
/** * Validate the resource configuration by trying to connect with it * * @param Form $form The form to fetch the configuration values from * * @return bool Whether validation succeeded or not */ public static function isValidResource(Form $form) { try { $resource = ResourceFactory::createResource(new ConfigObject($form->getValues())); $resource->bind(); } catch (Exception $e) { $msg = $form->translate('Connectivity validation failed, connection to the given resource not possible.'); if ($error = $e->getMessage()) { $msg .= ' (' . $error . ')'; } $form->addError($msg); return false; } return true; }
/** * Validate the configuration by creating a backend and requesting the user count * * @param Form $form The form to fetch the configuration values from * * @return bool Whether validation succeeded or not */ public static function isValidUserBackend(Form $form) { try { $ldapUserBackend = UserBackend::create(null, new ConfigObject($form->getValues())); $ldapUserBackend->assertAuthenticationPossible(); } catch (AuthenticationException $e) { if (($previous = $e->getPrevious()) !== null) { $form->addError($previous->getMessage()); } else { $form->addError($e->getMessage()); } return false; } catch (Exception $e) { $form->addError(sprintf($form->translate('Unable to validate authentication: %s'), $e->getMessage())); return false; } return true; }
/** * Create a resource by using the given form's values and return its inspection results * * @param Form $form * * @return Inspection */ public static function inspectResource(Form $form) { if ($form->getValue('type') !== 'ssh') { $resource = ResourceFactory::createResource(new ConfigObject($form->getValues())); if ($resource instanceof Inspectable) { return $resource->inspect(); } } }
/** * Retrieve all form element values * * @param bool $suppressArrayNotation Ignored * * @return array */ public function getValues($suppressArrayNotation = false) { $values = parent::getValues(); $values = array_merge($values, $values['backend_form']); unset($values['backend_form']); return $values; }
/** * Create a user backend by using the given form's values and return its inspection results * * Returns null for non-inspectable backends. * * @param Form $form * * @return Inspection|null */ public static function inspectUserBackend(Form $form) { $backend = UserBackend::create(null, new ConfigObject($form->getValues())); if ($backend instanceof Inspectable) { return $backend->inspect(); } }
/** * Validate the configuration by creating a backend and requesting the user count * * @param Form $form The form to fetch the configuration values from * * @return bool Whether validation succeeded or not */ public static function isValidUserBackend(Form $form) { /** * @var $result Inspection */ $result = UserBackend::create(null, new ConfigObject($form->getValues()))->inspect(); if ($result->hasError()) { $form->addError($result->getError()); } // TODO: display diagnostics in $result->toArray() to the user return !$result->hasError(); }