public function CvCoreRequiredValidator::setDataAttributes in Clientside Validation 7.2
Overrides ClientsideValidationValidator::setDataAttributes
File
- plugins/
validator/ required.inc, line 61
Class
Code
public function setDataAttributes(array &$element, array &$form_state) {
if ($element['#type'] == 'checkboxes') {
$js_settings = $this
->getJavascriptSettings($element, $form_state);
foreach (array_keys($element['#options']) as $child) {
$name = $this
->getName($element[$child]);
foreach ($js_settings['rules'][$name] as $rulename => $rulearg) {
$element[$child]['#attributes']['data-rule' . drupal_ucfirst(drupal_strtolower($rulename))] = drupal_json_encode($rulearg);
$element[$child]['#attributes']['data-msg' . drupal_ucfirst(drupal_strtolower($rulename))] = $js_settings['messages'][$name][$rulename];
}
}
}
elseif ($element['#type'] == 'radios') {
$js_settings = $this
->getJavascriptSettings($element, $form_state);
$name = $this
->getName($element);
foreach (array_keys($element['#options']) as $child) {
foreach ($js_settings['rules'][$name] as $rulename => $rulearg) {
$element[$child]['#attributes']['data-rule' . drupal_ucfirst(drupal_strtolower($rulename))] = drupal_json_encode($rulearg);
$element[$child]['#attributes']['data-msg' . drupal_ucfirst(drupal_strtolower($rulename))] = $js_settings['messages'][$name][$rulename];
}
}
}
else {
parent::setDataAttributes($element, $form_state);
}
}