123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <?php
- /**
- * @file
- * A dummy module for testing custom block related hooks.
- *
- * This is a dummy module that implements custom block related hooks to test API
- * interaction with the block_content module.
- */
- use Drupal\block_content\Entity\BlockContent;
- /**
- * Implements hook_block_content_view().
- */
- function block_content_test_block_content_view(array &$build, BlockContent $block_content, $view_mode) {
- // Add extra content.
- $build['extra_content'] = [
- '#markup' => '<blink>Yowser</blink>',
- ];
- }
- /**
- * Implements hook_block_content_presave().
- */
- function block_content_test_block_content_presave(BlockContent $block_content) {
- if ($block_content->label() == 'testing_block_content_presave') {
- $block_content->setInfo($block_content->label() . '_presave');
- }
- // Determine changes.
- if (!empty($block_content->original) && $block_content->original->label() == 'test_changes') {
- if ($block_content->original->label() != $block_content->label()) {
- $block_content->setInfo($block_content->label() . '_presave');
- // Drupal 1.0 release.
- $block_content->changed = 979534800;
- }
- }
- }
- /**
- * Implements hook_block_content_update().
- */
- function block_content_test_block_content_update(BlockContent $block_content) {
- // Determine changes on update.
- if (!empty($block_content->original) && $block_content->original->label() == 'test_changes') {
- if ($block_content->original->label() != $block_content->label()) {
- $block_content->setInfo($block_content->label() . '_update');
- }
- }
- }
- /**
- * Implements hook_block_content_insert().
- *
- * This tests saving a block_content on block_content insert.
- *
- * @see \Drupal\block_content\Tests\BlockContentSaveTest::testBlockContentSaveOnInsert()
- */
- function block_content_test_block_content_insert(BlockContent $block_content) {
- // Set the block_content title to the block_content ID and save.
- if ($block_content->label() == 'new') {
- $block_content->setInfo('BlockContent ' . $block_content->id());
- $block_content->setNewRevision(FALSE);
- $block_content->save();
- }
- if ($block_content->label() == 'fail_creation') {
- throw new Exception('Test exception for rollback.');
- }
- }
|