ImportEntityListBuilder.php in Content Synchronizer 3.x
File
src/ImportEntityListBuilder.php
View source
<?php
namespace Drupal\content_synchronizer;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Entity\EntityListBuilder;
use Drupal\Core\Link;
use Drupal\Core\Url;
class ImportEntityListBuilder extends EntityListBuilder {
public function buildHeader() {
$header['id'] = $this
->t('Import ID');
$header['name'] = $this
->t('Name');
return $header + parent::buildHeader();
}
public function buildRow(EntityInterface $entity) {
$row['id'] = $entity
->id();
$row['name'] = Link::fromTextAndUrl($entity
->label(), new Url('entity.import_entity.canonical', [
'import_entity' => $entity
->id(),
]));
return $row + parent::buildRow($entity);
}
public function getOperations(EntityInterface $entity) {
$operations = parent::getOperations($entity);
$operations['view'] = [
'title' => $this
->t('Import'),
'weight' => 1,
'url' => new Url('entity.import_entity.canonical', [
'import_entity' => $entity
->id(),
]),
];
usort($operations, function ($a, $b) {
if ($a['weight'] > $b['weight']) {
return 1;
}
return -1;
});
return $operations;
}
}