diff --git a/ldapauth.module b/ldapauth.module index 960f037..83b2e0f 100644 --- a/ldapauth.module +++ b/ldapauth.module @@ -205,8 +205,11 @@ function ldapauth_form_alter(&$form, $form_state, $form_id) { switch ($form_id) { case 'user_login_block': - if (LDAPAUTH_DISABLE_PASS_CHANGE) + if (LDAPAUTH_DISABLE_PASS_CHANGE) { unset($form['links']); + $key = array_search('user_login_final_validate', $form['#validate']); + $form['#validate'][$key] = 'ldapauth_user_login_final_validate'; + } break; case 'user_profile_form': $account = $form["_account"]["#value"]; @@ -235,6 +238,14 @@ function ldapauth_form_alter(&$form, $form_state, $form_id) { } } +function ldapauth_user_login_final_validate($form_id, &$form_states) { + global $user; + if (!$user->uid) { + form_set_error('name', t('Sorry, unrecognized username or password.')); + watchdog('user', t('Login attempt failed for %user.', array('%user' => $form_values['name']))); + } +} + function ldapauth_form_user_pass_alter(&$form, &$form_state) { $form['#validate'][] = 'ldapauth_user_pass'; }