function heartbeat_like_tokens in Heartbeat 8
Same name in this branch
- 8 modules/heartbeat_like/heartbeat_like.tokens.inc \heartbeat_like_tokens()
- 8 modules/heartbeat_comment_like/heartbeat_like.tokens.inc \heartbeat_like_tokens()
Implements hook_tokens().
File
- modules/
heartbeat_comment_like/ heartbeat_like.tokens.inc, line 38 - Token for heartbeat_like.
Code
function heartbeat_like_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
$replacements = array();
if ($type == 'flagcount') {
foreach ($tokens as $name => $original) {
// Find the desired token by name
switch ($name) {
case 'count':
if (isset($data['flag_id']) && isset($data['entity_id'])) {
// Query the db for the count associated with this entity.
$query = \Drupal::database()
->select('flag_counts', 'fc');
$query
->fields('fc', [
'count',
]);
$query
->condition('fc.flag_id', $data['flag_id']);
$query
->condition('fc.entity_id', $data['entity_id']);
$count_db = $query
->execute()
->fetchAssoc();
if (!isset($count_db['count'])) {
$count_db['count'] = 0;
}
$replacements[$original] = $count_db['count'];
}
break;
}
}
}
// Return the replacements.
return $replacements;
}