function _workflow_token_get_token in Workflow 7.2
Gets the token replacement by correctly obeying the options.
Taken from _entity_token_get_token().
1 call to _workflow_token_get_token()
- workflow_tokens in ./
workflow.tokens.inc - Implements hook_tokens().
File
- ./
workflow.tokens.inc, line 304 - Tokens hooks for Workflow module.
Code
function _workflow_token_get_token($wrapper, $options) {
// if ($wrapper->value() === NULL) {
// // Do not provide a replacement if there is no value.
// return NULL;
// }
if (empty($options['sanitize'])) {
// When we don't need sanitized tokens decode already sanitizied texts.
$options['decode'] = TRUE;
}
$langcode = isset($options['language']) ? $options['language']->language : LANGUAGE_NONE;
// If there is a label for a property, e.g., defined by an options list or an
// entity label, make use of it.
if ($label = $wrapper
->label()) {
return $label;
}
switch ($wrapper
->type()) {
case 'Workflow':
case 'WorkflowState':
case 'WorkflowTransition':
return $wrapper
->value();
}
// Care for outputing list values.
if ($wrapper instanceof EntityListWrapper) {
$output = array();
foreach ($wrapper as $item) {
$output[] = _workflow_token_get_token($item, $options);
}
return implode(', ', $output);
}
// Else we do not have a good string to output, e.g., for struct values. Just
// output the string representation of the wrapper.
return (string) $wrapper;
}