function _apigee_api_catalog_form_node_form_validate in Apigee API Catalog 8.2
Form validator for the "apidoc" node bundle.
Parameters
array $form: The form.
\Drupal\Core\Form\FormStateInterface $form_state: The form state.
1 string reference to '_apigee_api_catalog_form_node_form_validate'
File
- ./
apigee_api_catalog.module, line 192 - Copyright 2019 Google Inc.
Code
function _apigee_api_catalog_form_node_form_validate(&$form, FormStateInterface $form_state) {
$values = $form_state
->getValues();
if (empty($values['field_apidoc_spec_file_source'])) {
return;
}
// Make sure the field_apidoc_spec (file) or field_apidoc_file_link (link)
// is not empty, according to what was selected as the file source.
$source = $values['field_apidoc_spec_file_source'][0]['value'] ?: NULL;
if ($source == SpecFetcherInterface::SPEC_AS_FILE && empty($values['field_apidoc_spec'][0]['fids'][0])) {
$form_state
->setErrorByName('field_apidoc_spec', t('Provide an OpenAPI specification file.'));
}
elseif ($source == SpecFetcherInterface::SPEC_AS_URL && empty($values['field_apidoc_file_link'][0]['uri'])) {
$form_state
->setErrorByName('field_apidoc_file_link', t('Provide the URL to an OpenAPI specification file.'));
}
}