commerce_cart_view_override.module in Commerce Cart View Override 7
Provides the ability to override the default cart page view for Commerce.
File
commerce_cart_view_override.moduleView source
<?php
/**
* @file
* Provides the ability to override the default cart page view for Commerce.
*/
/**
* Implements hook_menu()
*/
function commerce_cart_view_override_menu() {
$items = array();
$items['admin/commerce/config/cart-overrides'] = array(
'title' => 'Cart Overrides',
'description' => 'Configure overrides for various aspects of the cart.',
'type' => MENU_NORMAL_ITEM,
'page callback' => 'drupal_get_form',
'page arguments' => array(
'commerce_cart_view_override_admin_settings',
),
'access arguments' => array(
'administer checkout',
),
'file' => 'includes/commerce_cart_view_override.admin.inc',
'weight' => 55,
'menu_name' => 'management',
);
return $items;
}
/**
* Implements hook_menu_alter()
*/
function commerce_cart_view_override_menu_alter(&$items) {
if (isset($items['cart'])) {
$items['cart'] = array(
'page callback' => 'commerce_cart_view_override_commerce_cart_view',
'file' => 'includes/commerce_cart_view_override.pages.inc',
'file path' => drupal_get_path('module', 'commerce_cart_view_override'),
) + $items['cart'];
}
}
/**
* Returns an array of eligible cart views suitable for an HTML options list
*
* @return
* The array of view names, keyed by the view machine name.
*/
function commerce_cart_view_override_options_list() {
$options = array();
foreach (views_get_all_views() as $view_name => $view) {
if ($view_name != 'commerce_cart_form' && strpos($view_name, 'commerce_cart_form_') !== 0) {
continue;
}
if ($view->base_table == 'commerce_order' && !empty($view->display['default']) && !empty($view->display['default']->display_options['arguments'])) {
$first_arg = reset($view->display['default']->display_options['arguments']);
if (strpos($first_arg['id'], 'order_id') === 0) {
$options[$view_name] = isset($view->human_name) ? check_plain($view->human_name) : $view_name;
}
}
}
// Move the default view to the top
if (isset($options['commerce_cart_form'])) {
$options = array(
'commerce_cart_form' => t('!label (default)', array(
'!label' => $options['commerce_cart_form'],
)),
) + $options;
}
return $options;
}
Functions
Name![]() |
Description |
---|---|
commerce_cart_view_override_menu | Implements hook_menu() |
commerce_cart_view_override_menu_alter | Implements hook_menu_alter() |
commerce_cart_view_override_options_list | Returns an array of eligible cart views suitable for an HTML options list |