diff options
author | Dries Buytaert <dries@buytaert.net> | 2006-12-21 16:16:44 +0000 |
---|---|---|
committer | Dries Buytaert <dries@buytaert.net> | 2006-12-21 16:16:44 +0000 |
commit | d5fb9a23989169890431acc1cfd0cfe5952882c8 (patch) | |
tree | ef4d025a9d25b4683bec935d5005b6f0ca56d284 | |
parent | 1823f3596e0242a221250a0b12740ecdc8bb0f63 (diff) | |
download | brdo-d5fb9a23989169890431acc1cfd0cfe5952882c8.tar.gz brdo-d5fb9a23989169890431acc1cfd0cfe5952882c8.tar.bz2 |
- Patch #104598 by ChrisKennedy: validate max length of textfields.
-rw-r--r-- | includes/form.inc | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/includes/form.inc b/includes/form.inc index 28055474f..4c95ce22a 100644 --- a/includes/form.inc +++ b/includes/form.inc @@ -521,6 +521,11 @@ function _form_validate($elements, $form_id = NULL) { form_error($elements, t('!name field is required.', array('!name' => $elements['#title']))); } + // Verify that the value is not longer than #maxlength. + if (isset($elements['#maxlength']) && drupal_strlen($elements['#value']) > $elements['#maxlength']) { + form_error($elements, t('!name cannot be longer than %max characters but is currently %length characters long.', array('!name' => empty($elements['#title']) ? $elements['#parents'][0] : $elements['#title'], '%max' => $elements['#maxlength'], '%length' => drupal_strlen($elements['#value'])))); + } + // Add legal choice check if element has #options. Can be skipped, but then you must validate your own element. if (isset($elements['#options']) && isset($elements['#value']) && !isset($elements['#DANGEROUS_SKIP_CHECK'])) { if ($elements['#type'] == 'select') { |