ProfileFieldOptionTranslation.php in Drupal 8
File
core/modules/user/src/Plugin/migrate/process/d6/ProfileFieldOptionTranslation.php
View source
<?php
namespace Drupal\user\Plugin\migrate\process\d6;
use Drupal\migrate\MigrateExecutableInterface;
use Drupal\migrate\ProcessPluginBase;
use Drupal\migrate\Row;
class ProfileFieldOptionTranslation extends ProcessPluginBase {
public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
list($field_type, $translation) = $value;
$new_value = NULL;
if (isset($translation)) {
$allowed_values = [];
$list = explode("\n", $translation);
$list = array_map('trim', $list);
$list = array_filter($list, 'strlen');
if ($field_type === 'list_string') {
foreach ($list as $key => $value) {
$allowed_values[] = [
'label' => $value,
];
}
}
$new_value = [
'settings.allowed_values',
$allowed_values,
];
}
return $new_value;
}
}