function varbase_core_tokens in Varbase Core 8.7
Same name and namespace in other branches
- 8.8 varbase_core.tokens.inc \varbase_core_tokens()
- 8.4 varbase_core.tokens.inc \varbase_core_tokens()
- 8.5 varbase_core.tokens.inc \varbase_core_tokens()
- 8.6 varbase_core.tokens.inc \varbase_core_tokens()
- 9.0.x varbase_core.tokens.inc \varbase_core_tokens()
Implements hook_tokens().
File
- ./
varbase_core.tokens.inc, line 38 - Contains varbase_core.tokens.inc.
Code
function varbase_core_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
$replacements = [];
if ($type == 'site') {
foreach ($tokens as $name => $original) {
switch ($name) {
case 'origin-url':
// Until #1088112: Introduce a token to get site's base URL is
// committed,
// https://www.drupal.org/project/drupal/issues/1088112
// let's use a custom token. Let's call it: [site:origin-url].
// No language prefix in the url.
// https://www.drupal.org/project/varbase_core/issues/3106793
// -----------------------------------------------------------------
/** @var \Symfony\Component\HttpFoundation\Request $origin_url */
$origin_url = \Drupal::request()
->getSchemeAndHttpHost() . \Drupal::request()
->getBaseUrl();
$bubbleable_metadata
->addCacheContexts([
'url.site',
]);
$replacements[$original] = $origin_url;
break;
}
}
}
elseif ($type == 'default-active-theme') {
foreach ($tokens as $name => $original) {
switch ($name) {
case 'path':
$replacements[$original] = \Drupal::theme()
->getActiveTheme()
->getPath();
break;
}
}
}
return $replacements;
}