oliverdavies.uk-drupal-old/web/modules/custom/opdavies_talks/opdavies_talks.module
Oliver Davies 9b1a8fb3be Rename and re-organise custom modules
- Rename `opd_talks` to `opdavies_talks`
- Rename `custom` to `opdavies_blog`
2020-08-24 10:27:49 +01:00

46 lines
1.1 KiB
Plaintext

<?php
/**
* @file
* Custom code for talks pages.
*/
declare(strict_types=1);
use Drupal\Core\Entity\EntityTypeInterface;
use Drupal\discoverable_entity_bundle_classes\Storage\Node\NodeStorage;
use Drupal\opdavies_talks\Service\TalkDateUpdater;
/**
* Implements hook_cron().
*/
function opdavies_talks_cron(): void {
$dateUpdater = Drupal::service(TalkDateUpdater::class);
$dateUpdater->__invoke();
}
/**
* Implements hook_views_data_alter().
*/
function opdavies_talks_views_data_alter(array &$data): void {
$data['node__field_event_date']['event_sort'] = [
'title' => t('Custom event sort'),
'group' => t('Content'),
'help' => t('Sort events by past/future, then distance from now.'),
'sort' => [
'field' => 'field_event_date_value',
'id' => 'event_sort',
],
];
}
/**
* Implements hook_entity_type_build().
*/
function opdavies_talks_entity_type_build(array &$entityTypes): void {
/** @var EntityTypeInterface[] $entityTypes */
if (isset($entityTypes['node'])) {
$entityTypes['node']->setStorageClass(NodeStorage::class);
}
}