class SkinListBuilder in Skinr 8.2
Returns responses for devel module routes.
Hierarchy
- class \Drupal\Core\Entity\EntityHandlerBase uses DependencySerializationTrait, StringTranslationTrait
- class \Drupal\Core\Entity\EntityListBuilder implements EntityHandlerInterface, EntityListBuilderInterface uses MessengerTrait, RedirectDestinationTrait
- class \Drupal\Core\Config\Entity\ConfigEntityListBuilder
- class \Drupal\skinr_ui\Controller\SkinListBuilder
- class \Drupal\Core\Config\Entity\ConfigEntityListBuilder
- class \Drupal\Core\Entity\EntityListBuilder implements EntityHandlerInterface, EntityListBuilderInterface uses MessengerTrait, RedirectDestinationTrait
Expanded class hierarchy of SkinListBuilder
File
- skinr_ui/
src/ Controller/ SkinListBuilder.php, line 16 - Contains \Drupal\skinr_ui\Controller\SkinListBuilder.
Namespace
Drupal\skinr_ui\ControllerView source
class SkinListBuilder extends ConfigEntityListBuilder {
/**
* {@inheritdoc}
*/
public function buildHeader() {
$header['id'] = array(
'data' => $this
->t('Machine name'),
'class' => array(
'skinr-ui-name',
),
);
$header['element_type'] = array(
'data' => $this
->t('Type'),
'class' => array(
'skinr-ui-type',
),
);
$header['element'] = array(
'data' => $this
->t('Element'),
'class' => array(
'skinr-ui-element',
),
);
$header['theme'] = array(
'data' => $this
->t('Theme'),
'class' => array(
'skinr-ui-theme',
),
);
$header['label'] = array(
'data' => $this
->t('Skin'),
'class' => array(
'skinr-ui-skin',
),
);
// $header['storage'] = array(
// 'data' => $this->t('Storage'),
// 'class' => array('skinr-ui-storage'),
// );
$header['status'] = array(
'data' => $this
->t('Status'),
'class' => array(
'skinr-ui-status',
),
);
return $header + parent::buildHeader();
}
/**
* {@inheritdoc}
*/
public function buildRow(EntityInterface $entity) {
$row['label'] = array(
'data' => $this
->getLabel($entity),
);
$row['element_type'] = array(
'data' => $entity
->elementTypeLabel(),
'class' => array(
'skin-table-filter-text-source',
),
);
$row['element'] = array(
'data' => $entity
->elementLabel(),
'class' => array(
'skin-table-filter-text-source',
),
);
$row['theme'] = array(
'data' => $entity
->themeLabel(),
'class' => array(
'skin-table-filter-text-source',
),
);
$row['skin'] = array(
'data' => $entity
->skinLabel(),
'class' => array(
'skin-table-filter-text-source',
),
);
// $row['storage'] = $entity->getStorage();
$row['status'] = $entity
->status() ? t('Enabled') : t('Disabled');
return $row + parent::buildRow($entity);
}
/**
* {@inheritdoc}
*/
public function getDefaultOperations(EntityInterface $entity) {
/** @var \Drupal\Core\Config\Entity\ConfigEntityInterface $entity */
$operations = parent::getDefaultOperations($entity);
// Override edit link.
// @todo
if (isset($operations['edit'])) {
// dpm($operations['edit']);
}
return $operations;
}
/**
* {@inheritdoc}
*/
public function render() {
$entities = $this
->load();
$list['#type'] = 'container';
$list['#attributes']['id'] = 'skin-entity-list';
$list['#attached']['library'][] = 'core/drupal.ajax';
$list['#attached']['library'][] = 'skinr_ui/skinr_ui.listing';
$form['filters'] = array(
'#type' => 'container',
'#attributes' => array(
'class' => array(
'table-filter',
'js-show',
),
),
);
$list['filters']['text'] = array(
'#type' => 'search',
'#title' => $this
->t('Filter'),
'#title_display' => 'invisible',
'#size' => 40,
'#placeholder' => $this
->t('Filter by view name or description'),
'#attributes' => array(
'class' => array(
'skin-filter-text',
),
'data-table' => '.skin-listing-table',
'autocomplete' => 'off',
'title' => $this
->t('Enter a part of the skin name or description to filter by.'),
),
);
$list['enabled']['heading']['#markup'] = '<h2>' . $this
->t('Enabled', array(), array(
'context' => 'Plural',
)) . '</h2>';
$list['disabled']['heading']['#markup'] = '<h2>' . $this
->t('Disabled', array(), array(
'context' => 'Plural',
)) . '</h2>';
foreach (array(
'enabled',
'disabled',
) as $status) {
$list[$status]['#type'] = 'container';
$list[$status]['#attributes'] = array(
'class' => array(
'skin-list-section',
$status,
),
);
$list[$status]['table'] = array(
'#type' => 'table',
'#attributes' => array(
'class' => array(
'skin-listing-table',
),
),
'#header' => $this
->buildHeader(),
'#rows' => array(),
);
foreach ($entities as $entity) {
if ($entity
->status() != ($status == 'enabled' ? TRUE : FALSE)) {
continue;
}
$list[$status]['table']['#rows'][$entity
->id()] = $this
->buildRow($entity);
}
}
// @todo Use a placeholder for the entity label if this is abstracted to
// other entity types.
$list['enabled']['table']['#empty'] = $this
->t('There are no enabled skins.');
$list['disabled']['table']['#empty'] = $this
->t('There are no disabled skins.');
return $list;
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
ConfigEntityListBuilder:: |
public | function |
Loads entities of this type from storage for listing. Overrides EntityListBuilder:: |
7 |
DependencySerializationTrait:: |
protected | property | An array of entity type IDs keyed by the property name of their storages. | |
DependencySerializationTrait:: |
protected | property | An array of service IDs keyed by property name used for serialization. | |
DependencySerializationTrait:: |
public | function | 1 | |
DependencySerializationTrait:: |
public | function | 2 | |
EntityHandlerBase:: |
protected | property | The module handler to invoke hooks on. | 2 |
EntityHandlerBase:: |
protected | function | Gets the module handler. | 2 |
EntityHandlerBase:: |
public | function | Sets the module handler for this handler. | |
EntityListBuilder:: |
protected | property | Information about the entity type. | |
EntityListBuilder:: |
protected | property | The entity type ID. | |
EntityListBuilder:: |
protected | property | The number of entities to list per page, or FALSE to list all entities. | 3 |
EntityListBuilder:: |
protected | property | The entity storage class. | 1 |
EntityListBuilder:: |
public | function | Builds a renderable list of operation links for the entity. | 2 |
EntityListBuilder:: |
public static | function |
Instantiates a new instance of this entity handler. Overrides EntityHandlerInterface:: |
20 |
EntityListBuilder:: |
protected | function | Ensures that a destination is present on the given URL. | |
EntityListBuilder:: |
protected | function | Loads entity IDs using a pager sorted by the entity id. | 4 |
EntityListBuilder:: |
protected | function | Gets the label of an entity. | |
EntityListBuilder:: |
public | function |
Provides an array of information to build a list of operation links. Overrides EntityListBuilderInterface:: |
2 |
EntityListBuilder:: |
public | function |
Gets the entity storage. Overrides EntityListBuilderInterface:: |
|
EntityListBuilder:: |
protected | function | Gets the title of the page. | 1 |
EntityListBuilder:: |
public | function | Constructs a new EntityListBuilder object. | 16 |
MessengerTrait:: |
protected | property | The messenger. | 29 |
MessengerTrait:: |
public | function | Gets the messenger. | 29 |
MessengerTrait:: |
public | function | Sets the messenger. | |
RedirectDestinationTrait:: |
protected | property | The redirect destination service. | 1 |
RedirectDestinationTrait:: |
protected | function | Prepares a 'destination' URL query parameter for use with \Drupal\Core\Url. | |
RedirectDestinationTrait:: |
protected | function | Returns the redirect destination service. | |
RedirectDestinationTrait:: |
public | function | Sets the redirect destination service. | |
SkinListBuilder:: |
public | function |
Builds the header row for the entity listing. Overrides EntityListBuilder:: |
|
SkinListBuilder:: |
public | function |
Builds a row for an entity in the entity listing. Overrides EntityListBuilder:: |
|
SkinListBuilder:: |
public | function |
Gets this list's default operations. Overrides ConfigEntityListBuilder:: |
|
SkinListBuilder:: |
public | function |
Builds the entity listing as renderable array for table.html.twig. Overrides EntityListBuilder:: |
|
StringTranslationTrait:: |
protected | property | The string translation service. | 1 |
StringTranslationTrait:: |
protected | function | Formats a string containing a count of items. | |
StringTranslationTrait:: |
protected | function | Returns the number of plurals supported by a given language. | |
StringTranslationTrait:: |
protected | function | Gets the string translation service. | |
StringTranslationTrait:: |
public | function | Sets the string translation service to use. | 2 |
StringTranslationTrait:: |
protected | function | Translates a string to the current language or to a given language. |