function audit_log_elastic_search_settings_validate in Audit Log 7
Validate the setting form submission.
Parameters
array $form: Form array.
array $form_state: Form state array.
1 string reference to 'audit_log_elastic_search_settings_validate'
- audit_log_elastic_search_settings in modules/
audit_log_elastic_search/ audit_log_elastic_search.admin.inc - Render admin form.
File
- modules/
audit_log_elastic_search/ audit_log_elastic_search.admin.inc, line 45 - Hook implemenations for the Audit elastic search logging module.
Code
function audit_log_elastic_search_settings_validate(array $form, array &$form_state) {
$values = $form_state['values'];
if (!empty($form_state['triggering_element']['#ajax']) || empty($values['audit_log_elastic_search_cluster_id']['index'])) {
return;
}
$client = elasticsearch_connector_get_client_by_id($values['audit_log_elastic_search_cluster_id']['cluster_id']);
$index_name = audit_log_elastic_search_get_realindex_name($values['audit_log_elastic_search_cluster_id']['index']);
$alias_name = audit_log_elastic_search_get_index_name($values['audit_log_elastic_search_cluster_id']['index']);
$old_type_name = variable_get('audit_log_elastic_search_type', NULL);
$type_name = audit_log_elastic_search_get_type_name($values['audit_log_elastic_search_type']);
if ($client) {
if (!$client
->indices()
->exists(array(
'index' => $index_name,
))) {
form_set_error('audit_log_elastic_search_cluster_id', t("The index doesn't exists. Please created it before continue."));
}
else {
if (!$client
->indices()
->existsType(array(
'index' => $index_name,
'type' => $type_name,
))) {
audit_log_elastic_search_create_type($client, $index_name, $type_name);
}
// Alias.
if (!$client
->indices()
->existsAlias(array(
'index' => $index_name,
'name' => $alias_name,
))) {
try {
audit_log_elastic_search_create_alias($client, $index_name, $alias_name);
} catch (Exception $e) {
error_log($e
->getMessage());
}
}
if (isset($old_type_name) && $old_type_name != $type_name) {
try {
$client
->indices()
->deleteMapping(array(
'index' => $index_name,
'type' => $old_type_name,
));
drupal_set_message(t('The old type @type has been successfully deleted.', array(
'@type' => $old_type_name,
)));
} catch (Exception $e) {
error_log($e
->getMessage());
}
}
}
}
else {
form_set_error('audit_log_elastic_search_cluster_id', t('Cannot connect to the cluster for some reason! Please contact your system administrator.'));
}
}