function _clientside_validation_field_validation_ajax in Clientside Validation 7
Validates a field using a field validation rule.
2 string references to '_clientside_validation_field_validation_ajax'
- clientside_validation_field_validation_js_info in clientside_validation_field_validation/
clientside_validation_field_validation.module - Implements hook_js_info().
- clientside_validation_field_validation_menu in clientside_validation_field_validation/
clientside_validation_field_validation.module - Implements hook_menu().
File
- clientside_validation_field_validation/
clientside_validation_field_validation.module, line 408 - Add clientside validation support for Field Validation
Code
function _clientside_validation_field_validation_ajax() {
$data = _clientside_validation_field_validation_ajax_get_value();
if (isset($data['value']) && isset($data['rules']) && is_array($data['rules'])) {
// Fetch the rules to use and ensure the names are save.
$rule_names = array_map('check_plain', array_keys($data['rules']));
// Use ctools export API to fetch the rules.
ctools_include('export');
ctools_include('plugins');
$rules = ctools_export_load_object('field_validation_rule', 'names', $rule_names);
$errors = array();
$value = filter_xss($data['value']);
foreach ($rules as $rule_name => $rule) {
if (isset($data['rules'][$rule_name])) {
$settings = $data['rules'][$rule_name];
_clientside_validation_field_validation($rule, $errors, $value, $settings['entity_id'], $settings['revision_id'], $settings['language'], $settings['delta']);
}
}
if (!empty($errors)) {
drupal_json_output(implode("\n", $errors));
return;
}
}
drupal_json_output(TRUE);
}