diff --git a/logintoboggan.module b/logintoboggan.module index cc3959ee69e3b5a5c9eab851c3dd7e6d5656a9aa..69ab9fd6e010dd482db6b07f91e35a31e997a8d2 100755 --- a/logintoboggan.module +++ b/logintoboggan.module @@ -103,6 +103,7 @@ function logintoboggan_form_alter($form_id, &$form) { } break; case 'user_edit': + $form['#validate'] += array('logintoboggan_user_edit_validate' => array()); $user = user_load(array('uid' => arg(1))); $id = logintoboggan_validating_id(); $in_pre_auth_role = in_array($id, array_keys($user->roles)); @@ -339,6 +340,21 @@ function logintoboggan_user_register_validate($form_id, $form_values) { } } +/** + * Custom validation function for user edit form + * + * @ingroup logintoboggan_form + */ +function logintoboggan_user_edit_validate($form_id, $form_values) { + if (strlen($form_values['pass'])) { + // if we're changing the password, validate it + $pass_err = logintoboggan_validate_pass($form_values['pass']); + if ($pass_err) { + form_set_error('pass', $pass_err); + } + } +} + /** * Implementation of hook_init() *