public function CvHSValidator::setDataAttributes in Clientside Validation 7.2
Overrides ClientsideValidationValidator::setDataAttributes
File
- clientside_validation_hierarchical_select/
plugins/ validator/ hs.inc, line 45
Class
Code
public function setDataAttributes(array &$element, array &$form_state) {
$js_settings = $this
->getJavascriptSettings($element, $form_state);
foreach (element_children($element['hierarchical_select']['selects']) as $child) {
if ($element['#config']['enforce_deepest'] || $child < 1) {
$name = $this
->getName($element['hierarchical_select']['selects'][$child]);
foreach ($js_settings['rules'][$name] as $rulename => $rulearg) {
$element['hierarchical_select']['selects'][$child]['#attributes']['data-rule' . drupal_ucfirst(drupal_strtolower($rulename))] = is_object($rulearg) || is_array($rulearg) ? drupal_json_encode($rulearg) : $rulearg;
$element['hierarchical_select']['selects'][$child]['#attributes']['data-msg' . drupal_ucfirst(drupal_strtolower($rulename))] = $js_settings['messages'][$name][$rulename];
}
}
}
}