function _webform_edit_number_validate in Webform 6.3
Same name and namespace in other branches
- 7.4 components/number.inc \_webform_edit_number_validate()
- 7.3 components/number.inc \_webform_edit_number_validate()
Validation of number edit form items.
1 string reference to '_webform_edit_number_validate'
- _webform_edit_number in components/
number.inc - Implements _webform_edit_component().
File
- components/
number.inc, line 659 - Webform module number component.
Code
function _webform_edit_number_validate($element, &$form_state) {
// Find the value of all related fields to this element.
$parents = $element['#parents'];
$key = array_pop($parents);
$values = $form_state['values'];
foreach ($parents as $parent) {
$values = $values[$parent];
}
switch ($key) {
case 'min':
if ($values['min'] == '') {
if (isset($values['type']) && $values['type'] === 'select') {
form_error($element, t('Minimum is required when using a select list element.'));
}
}
else {
if (!is_numeric($values['min'])) {
form_error($element, t('Minimum must be numeric.'));
}
if ($values['integer'] && !is_int($values['min'] * 1)) {
form_error($element, t('Minimum must have an integer value.'));
}
}
break;
case 'max':
if ($values['max'] == '') {
if (isset($values['type']) && $values['type'] === 'select') {
form_error($element, t('Maximum is required when using a select list element.'));
}
}
else {
if (!is_numeric($values['max'])) {
form_error($element, t('Maximum must be numeric.'));
}
if ($values['integer'] && !is_int($values['max'] * 1)) {
form_error($element, t('Maximum must have an integer value.'));
}
}
break;
case 'step':
if ($values['step'] !== '') {
if (!is_numeric($values['step'])) {
form_error($element, t('Step must be numeric.'));
}
else {
if ($values['integer'] && !is_int($values['step'] * 1)) {
form_error($element, t('Step must have an integer value.'));
}
}
}
break;
}
return TRUE;
}