Verified Commit 9151865f authored by godotislate's avatar godotislate
Browse files

refactor: #3555670 Deprecate user_load_by_mail & user_load_by_name

By: danielveza
By: santanu mondal
By: astonvictor
By: voleger
By: samitk
By: dcam
By: berdir
By: moshe weitzman
By: kristiaanvandeneynde
By: alexpott
parent 0def9dc0
Loading
Loading
Loading
Loading
Loading
+4 −1
Changes for core/modules/dblog/tests/src/Functional/DbLogTest.php: 4 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -481,7 +481,10 @@ private function doUser(): void {
    $this->submitForm($edit, 'Create new account');
    $this->assertSession()->statusCodeEquals(200);
    // Retrieve the user object.
    $user = user_load_by_name($name);
    $users = \Drupal::entityTypeManager()
      ->getStorage('user')
      ->loadByProperties(['name' => $name]);
    $user = reset($users);
    $this->assertNotNull($user, "User $name was loaded");
    // pass_raw property is needed by drupalLogin.
    $user->passRaw = $pass;
+5 −1
Changes for core/modules/system/tests/modules/url_alter_test/src/PathProcessorTest.php: 5 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -21,7 +21,11 @@ class PathProcessorTest implements InboundPathProcessorInterface, OutboundPathPr
  public function processInbound($path, Request $request) {
    // Rewrite user/username to user/uid.
    if (preg_match('!^/user/([^/]+)(/.*)?!', $path, $matches)) {
      if ($account = user_load_by_name($matches[1])) {
      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties(['name' => $matches[1]]);
      $account = reset($users);
      if ($account) {
        $matches += [2 => ''];
        $path = '/user/' . $account->id() . $matches[2];
      }
+11 −6
Changes for core/modules/update/update.fetch.inc: 11 added lines, 6 removed lines.
Original line number Diff line number Diff line
@@ -33,13 +33,18 @@ function _update_cron_notify(): void {
    if (!empty($notify_list)) {
      $default_langcode = \Drupal::languageManager()->getDefaultLanguage()->getId();
      $request_time = \Drupal::time()->getRequestTime();
      foreach ($notify_list as $target) {
        if ($target_user = user_load_by_mail($target)) {
          $target_langcode = $target_user->getPreferredLangcode();
        }
        else {
          $target_langcode = $default_langcode;

      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties(['mail' => $notify_list]);

      // Index users by email for quick lookup.
      foreach ($users as $user) {
        $users_by_mail[$user->getEmail()] = $user;
      }
      foreach ($notify_list as $target) {
        $target_user = $users_by_mail[$target] ?? NULL;
        $target_langcode = $target_user ? $target_user->getPreferredLangcode() : $default_langcode;
        $message = \Drupal::service('plugin.manager.mail')->mail('update', 'status_notify', $target, $target_langcode, $params);
        // Track when the last mail was successfully sent to avoid sending
        // too many emails.
+4 −1
Changes for core/modules/user/tests/src/Functional/UserCreateTest.php: 4 added lines, 1 removed line.
Original line number Diff line number Diff line
@@ -120,7 +120,10 @@ public function testUserAdd(): void {

      $this->drupalGet('admin/people');
      $this->assertSession()->pageTextContains($edit['name']);
      $user = user_load_by_name($name);
      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties(['name' => $name]);
      $user = reset($users);
      $this->assertTrue($user->isActive(), 'User is not blocked');
    }

+10 −2
Changes for core/modules/user/tests/src/Functional/UserLanguageCreationTest.php: 10 added lines, 2 removed lines.
Original line number Diff line number Diff line
@@ -68,7 +68,11 @@ public function testLocalUserCreation(): void {
    $this->drupalGet($langcode . '/admin/people/create');
    $this->submitForm($edit, 'Create new account');

    $user = user_load_by_name($username);
    $users = \Drupal::entityTypeManager()
      ->getStorage('user')
      ->loadByProperties(['name' => $username]);
    $user = reset($users);

    $this->assertEquals($langcode, $user->getPreferredLangcode(), 'New user has correct preferred language set.');
    $this->assertEquals($langcode, $user->language()->getId(), 'New user has correct profile language set.');

@@ -87,7 +91,11 @@ public function testLocalUserCreation(): void {
    $this->drupalGet($langcode . '/user/register');
    $this->submitForm($edit, 'Create new account');

    $user = user_load_by_name($username);
    $users = \Drupal::entityTypeManager()
      ->getStorage('user')
      ->loadByProperties(['name' => $username]);
    $user = reset($users);

    $this->assertEquals($langcode, $user->getPreferredLangcode(), 'New user has correct preferred language set.');
    $this->assertEquals($langcode, $user->language()->getId(), 'New user has correct profile language set.');

Loading