MailchimpEventListBuilder.php in Mailchimp 2.x
File
modules/mailchimp_events/src/MailchimpEventListBuilder.php
View source
<?php
namespace Drupal\mailchimp_events;
use Drupal\Core\Entity\EntityInterface;
use Drupal\Core\Entity\EntityListBuilder;
use Drupal\Core\Link;
class MailchimpEventListBuilder extends EntityListBuilder {
public function buildHeader() {
$header['name'] = $this
->t('Name');
$header['properties'] = $this
->t('Properties');
return $header + parent::buildHeader();
}
public function buildRow(EntityInterface $entity) {
$row['name'] = Link::createFromRoute($entity
->label(), 'entity.mailchimp_event.edit_form', [
'mailchimp_event' => $entity
->id(),
]);
$properties_label = [];
foreach ($entity
->getProperties() as $property) {
$properties_label[] = [
'#markup' => $property["value"],
];
$properties_label[] = [
'#markup' => ', ',
];
}
array_pop($properties_label);
$row['properties']['data'] = $properties_label;
return $row + parent::buildRow($entity);
}
public function render() {
$build = parent::render();
$build['table']['#empty'] = $this
->t('No @label exist yet.', [
'@label' => $this->entityType
->getPluralLabel(),
]);
return $build;
}
}