You are here

public function CvWebformDateValidator::setDataAttributes in Clientside Validation 7.2

Overrides ClientsideValidationValidator::setDataAttributes

File

clientside_validation_webform/plugins/validator/webformdate.inc, line 58

Class

CvWebformDateValidator

Code

public function setDataAttributes(array &$element, array &$form_state) {
  $js_settings = $this
    ->getJavascriptSettings($element, $form_state);
  foreach (array(
    'day',
    'month',
    'year',
  ) 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))] = is_object($rulearg) || is_array($rulearg) ? drupal_json_encode($rulearg) : $rulearg;
      $element[$child]['#attributes']['data-msg' . drupal_ucfirst(drupal_strtolower($rulename))] = $js_settings['messages'][$name][$rulename];
    }
  }
}