public function CvWebformDateMaxValidator::getJavascriptSettings in Clientside Validation 7.2
Overrides ClientsideValidationValidator::getJavascriptSettings
1 call to CvWebformDateMaxValidator::getJavascriptSettings()
- CvWebformDateMaxValidator::setDataAttributes in clientside_validation_webform/
plugins/ validator/ webformdatemax.inc
File
- clientside_validation_webform/
plugins/ validator/ webformdatemax.inc, line 22
Class
Code
public function getJavascriptSettings(array &$element, array &$form_state) {
$element_name = isset($element['#year_end']) ? $this
->getName($element) . '[year]' : 'webform-component-' . str_replace('_', '-', implode('--', array_slice($element['#parents'], 1)));
$rule_name = isset($element['#year_end']) ? 'max' : 'datemax';
$settings = array();
if (isset($element['#year_end'])) {
$settings = array(
'rules' => array(
$element_name => array(
$rule_name => $element['#year_end'],
),
),
'messages' => array(
$element_name => array(
$rule_name => $this
->getMessage($element),
),
),
);
}
else {
$settings['groups'][$element_name] = array(
$this
->getName($element) . '[year]',
$this
->getName($element) . '[month]',
$this
->getName($element) . '[day]',
);
foreach ($settings['groups'][$element_name] as $name) {
$settings['rules'][$name][$rule_name] = explode('-', $element['#end_date']);
$settings['messages'][$name][$rule_name] = $this
->getMessage($element);
}
}
return $settings;
}