function commerce_cart_expiration_block_view in Commerce Cart Expiration 7
Implements hook_block_view().
File
- ./
commerce_cart_expiration.module, line 207 - Provides a time-based cart expiration feature.
Code
function commerce_cart_expiration_block_view($delta) {
global $user;
if ($delta == 'cart_expiration') {
$content = '';
if ($order = commerce_cart_order_load($user->uid)) {
$order_wrapper = entity_metadata_wrapper('commerce_order', $order);
// Only show the block content if we found product line items.
if (commerce_line_items_quantity($order_wrapper->commerce_line_items, commerce_product_line_item_types()) > 0) {
$interval = _commerce_cart_expiration_get_interval();
// If an interval is set.
if ($interval) {
$statuses = commerce_order_statuses(array(
'cart' => TRUE,
));
if (isset($statuses[$order->status])) {
// This order is in cart status.
$expire_in = _commerce_cart_expiration_get_expiration($order, $interval);
// Get text from block configuration.
$text = variable_get('commerce_cart_expiration_' . $delta . '_content', '<p>' . t('Your cart expires in [commerce-order:expiration-formatted].') . '<p>');
$text = check_markup($text, variable_get('commerce_cart_expiration_' . $delta . '_content_format', NULL));
// Apply token values.
$text = token_replace($text, array(
'commerce-order' => $order,
'site' => NULL,
'user' => $user,
));
$variables = array(
'order' => $order,
'expire_in' => $expire_in,
'content' => $text,
);
$content = theme('commerce_cart_expiration_block', $variables);
}
}
}
}
return array(
'subject' => t('Cart expiration'),
'content' => $content,
);
}
}