LanguageContentSettings.php in Drupal 10
File
core/modules/language/src/Plugin/migrate/source/d7/LanguageContentSettings.php
View source
<?php
namespace Drupal\language\Plugin\migrate\source\d7;
use Drupal\migrate\Row;
use Drupal\migrate_drupal\Plugin\migrate\source\DrupalSqlBase;
class LanguageContentSettings extends DrupalSqlBase {
public function query() {
return $this
->select('node_type', 't')
->fields('t', [
'type',
]);
}
public function fields() {
$fields = [
'type' => $this
->t('Type'),
'language_content_type' => $this
->t('Multilingual support.'),
'i18n_lock_node' => $this
->t('Lock language.'),
];
return $fields;
}
public function prepareRow(Row $row) {
$type = $row
->getSourceProperty('type');
$row
->setSourceProperty('language_content_type', $this
->variableGet('language_content_type_' . $type, NULL));
$i18n_node_options = $this
->variableGet('i18n_node_options_' . $type, NULL);
if ($i18n_node_options && in_array('lock', $i18n_node_options)) {
$row
->setSourceProperty('i18n_lock_node', 1);
}
else {
$row
->setSourceProperty('i18n_lock_node', 0);
}
$entity_translation_entity_types = $this
->variableGet('entity_translation_entity_types', NULL);
$row
->setSourceProperty('entity_translation_entity_types', $entity_translation_entity_types);
return parent::prepareRow($row);
}
public function getIds() {
$ids['type']['type'] = 'string';
return $ids;
}
}