xtcentity-2.x-dev/xtcentity.module
xtcentity.module
<?php
/**
* @file
* WebService Content module.
*/
use Drupal\Core\Routing\RouteMatchInterface;
use Drupal\xtcfile\XtendedContent\API\Documentation;
/**
* Implements hook_help().
*/
function xtcentity_help($route_name, RouteMatchInterface $route_match) {
switch ($route_name) {
case 'help.page.xtcentity':
return Documentation::getHelp('xtcentity');
}
}
/**
* Implements hook_theme().
*/
function xtcentity_theme() {
$theme = [];
$theme['xtended_content'] = [
'render element' => 'elements',
'file' => 'xtended_content.page.inc',
'template' => 'xtended_content',
];
$theme['xtended_content_content_add_list'] = [
'render element' => 'content',
'variables' => ['content' => NULL],
'file' => 'xtended_content.page.inc',
];
$theme['xtc_button_link'] = [
'variables' => [
'button' => NULL,
'description' => NULL,
],
];
return $theme;
}
/**
* Implements hook_theme_suggestions_HOOK().
*/
function xtcentity_theme_suggestions_xtended_content(array $variables) {
$suggestions = [];
$entity = $variables['elements']['#xtended_content'];
$sanitized_view_mode = strtr($variables['elements']['#view_mode'], '.', '_');
$suggestions[] = 'xtended_content__' . $sanitized_view_mode;
$suggestions[] = 'xtended_content__' . $entity->bundle();
$suggestions[] = 'xtended_content__' . $entity->bundle() . '__' . $sanitized_view_mode;
$suggestions[] = 'xtended_content__' . $entity->id();
$suggestions[] = 'xtended_content__' . $entity->id() . '__' . $sanitized_view_mode;
return $suggestions;
}
