function uc_fulfillment_tokens in Ubercart 8.4
Implements hook_tokens().
File
- shipping/
uc_fulfillment/ uc_fulfillment.tokens.inc, line 30 - Token hooks for the uc_fulfillment module.
Code
function uc_fulfillment_tokens($type, $tokens, array $data, array $options, BubbleableMetadata $bubbleable_metadata) {
$replacements = [];
if ($type == 'uc_order' && !empty($data['uc_order'])) {
$order = $data['uc_order'];
foreach ($tokens as $name => $original) {
switch ($name) {
case 'tracking-number':
$tracking_numbers = [];
$shipments = Shipment::loadByOrder($order
->id());
foreach ($shipments as $shipment) {
if ($shipment
->getTrackingNumber()) {
$tracking_numbers[] = $shipment
->getTrackingNumber();
}
}
$replacements[$original] = implode(', ', $tracking_numbers);
break;
}
}
}
return $replacements;
}