diff --git a/core/modules/user/lib/Drupal/user/Tests/UserPasswordResetTest.php b/core/modules/user/lib/Drupal/user/Tests/UserPasswordResetTest.php old mode 100644 new mode 100755 index bd75e06..bf641ed --- a/core/modules/user/lib/Drupal/user/Tests/UserPasswordResetTest.php +++ b/core/modules/user/lib/Drupal/user/Tests/UserPasswordResetTest.php @@ -108,4 +108,20 @@ public function getResetURL() { return $urls[0]; } + + /** + * Show prefilled text box on user incorrect login and redirected to password reset page. + */ + public function testUserResetPasswordTextboxFilled() { + $this->drupalGet('user/login'); + $edit = array( + 'name' => $this->randomName(), + 'pass' => $this->randomName(), + ); + $this->drupalPost('user', $edit, t('Log in')); + $this->assertText(t('Sorry, unrecognized username or password. Have you forgotten your password?')); + unset($edit['pass']); + $this->drupalPost('user/password?name='.$edit['name'], $edit, t(' Have you forgotten your password?')); + $this->assertFieldByName('name', $edit['name'], 'User name found.'); + } } diff --git a/core/modules/user/user.module b/core/modules/user/user.module old mode 100644 new mode 100755 index ead593b..eb44dc6 --- a/core/modules/user/user.module +++ b/core/modules/user/user.module @@ -1372,7 +1372,7 @@ function user_login_final_validate($form, &$form_state) { } } else { - form_set_error('name', t('Sorry, unrecognized username or password. Have you forgotten your password?', array('@password' => url('user/password')))); + form_set_error('name', t('Sorry, unrecognized username or password. Have you forgotten your password?', array('@password' => url('user/password', array('query' => array('name' => $form_state['values']['name'])))))); watchdog('user', 'Login attempt failed for %user.', array('%user' => $form_state['values']['name'])); } } diff --git a/core/modules/user/user.pages.inc b/core/modules/user/user.pages.inc old mode 100644 new mode 100755 index 140b767..4776845 --- a/core/modules/user/user.pages.inc +++ b/core/modules/user/user.pages.inc @@ -38,6 +38,9 @@ function user_pass() { '#suffix' => '

', ); } + else { + $form['name']['#default_value'] = isset($_GET['name']) ? $_GET['name'] : ''; + } $form['actions'] = array('#type' => 'actions'); $form['actions']['submit'] = array('#type' => 'submit', '#value' => t('E-mail new password'));