You are here

function get_user_info in Content Import 8.9

To get user information based on emailIds.

1 call to get_user_info()
import_node in ./contentimport.module
To import data as Content type nodes.

File

./contentimport.module, line 144
Module file for Contentimport.

Code

function get_user_info($userArray) {
  $uids = [];
  foreach ($userArray as $usermail) {
    if (filter_var($usermail, FILTER_VALIDATE_EMAIL)) {
      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties([
        'mail' => $usermail,
      ]);
    }
    else {
      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties([
        'name' => $usermail,
      ]);
    }
    $user = reset($users);
    if ($user) {
      $uids[] = $user
        ->id();
    }
    else {
      $user = User::create();
      $user->uid = '';
      $user
        ->setUsername($usermail);
      $user
        ->setEmail($usermail);
      $user
        ->set("init", $usermail);
      $user
        ->enforceIsNew();
      $user
        ->activate();
      $user
        ->save();
      $users = \Drupal::entityTypeManager()
        ->getStorage('user')
        ->loadByProperties([
        'mail' => $usermail,
      ]);
      $uids[] = $user
        ->id();
    }
  }
  return $uids;
}