function UserLangcode::transform

Same name in this branch
  1. main core/modules/user/src/Plugin/migrate/process/UserLangcode.php \Drupal\user\Plugin\migrate\process\UserLangcode::transform()
Same name and namespace in other branches
  1. 11.x core/modules/user/src/Plugin/migrate/process/UserLangcode.php \Drupal\user\Plugin\migrate\process\UserLangcode::transform()
  2. 10 core/modules/user/src/Plugin/migrate/process/UserLangcode.php \Drupal\user\Plugin\migrate\process\UserLangcode::transform()
  3. 9 core/modules/user/src/Plugin/migrate/process/UserLangcode.php \Drupal\user\Plugin\migrate\process\UserLangcode::transform()
  4. 8.9.x core/modules/user/src/Plugin/migrate/process/UserLangcode.php \Drupal\user\Plugin\migrate\process\UserLangcode::transform()
  5. 11.x core/modules/migrate/src/Plugin/migrate/process/UserLangcode.php \Drupal\migrate\Plugin\migrate\process\UserLangcode::transform()

File

core/modules/migrate/src/Plugin/migrate/process/UserLangcode.php, line 32

Class

UserLangcode
Provides a process plugin for the user langcode.

Namespace

Drupal\migrate\Plugin\migrate\process

Code

public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
  $this->configuration += [
    'fallback_to_site_default' => TRUE,
  ];
  // If the user's language is empty, then default to English and set the
  // user's preferred_langcode and preferred_admin_langcode to the default
  // language.
  if (empty($value)) {
    return $this->configuration['fallback_to_site_default'] ? $this->languageManager
      ->getDefaultLanguage()
      ->getId() : 'en';
  }
  elseif ($this->languageManager
    ->getLanguage($value) === NULL) {
    return $this->languageManager
      ->getDefaultLanguage()
      ->getId();
  }
  // If the langcode is a valid one, then just return it.
  return $value;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.