public function CvWebformDateMinValidator::getJavascriptSettings in Clientside Validation 7.2
Overrides ClientsideValidationValidator::getJavascriptSettings
1 call to CvWebformDateMinValidator::getJavascriptSettings()
- CvWebformDateMinValidator::setDataAttributes in clientside_validation_webform/
plugins/ validator/ webformdatemin.inc
File
- clientside_validation_webform/
plugins/ validator/ webformdatemin.inc, line 22
Class
Code
public function getJavascriptSettings(array &$element, array &$form_state) {
$element_name = isset($element['#year_start']) ? $this
->getName($element) . '[year]' : 'webform-component-' . str_replace('_', '-', implode('--', array_slice($element['#parents'], 1)));
$rule_name = isset($element['#year_start']) ? 'min' : 'datemin';
$settings = array();
if (isset($element['#year_start'])) {
$settings = array(
'rules' => array(
$element_name => array(
$rule_name => $element['#year_start'],
),
),
'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['#start_date']);
$settings['messages'][$name][$rule_name] = $this
->getMessage($element);
}
}
return $settings;
}